
SLI, SLO e SLA são mais do que siglas técnicas, são o alicerce da entrega de valor em produtos digitais. Assim, elas conectam o que a engenharia faz com o que o cliente realmente percebe como qualidade. Desse modo, quando aplicados com inteligência, permitem transformar confiabilidade em estratégia, e estratégia em resultado. Então, neste artigo SLI, SLO, SLA em 8 passos, mostro como esses três conceitos se articulam e como adotá-los de forma prática em oito passos.
Mas, além do artigo SLI, SLO, SLA em 8 passos, aqui no blog também temos diversos outros artigos sobre kubernetes, desenvolvimento, gestão, devops, etc. Veja alguns exemplos: Diferenças entre Paradigmas, Axiomas e Hipóteses, Desenvolver na empresa ou comprar pronto, Fuja da otimização prematura, entre outros.
Sumário
- Visão geral dos níveis de serviço
- SLI, SLO, SLA em 8 passos
- Conclusão de SLI, SLO, SLA em 8 passos
- Operações isentas de efeitos colaterais
- CORS: Seus problemas acabaram
- Como exibir uma lista de um site SharePoint em outro site SharePoint?
- Bounded Contexts: Upstream-Downstream
- API HTTP, REST ou RESTFul
- 10 Tendências de TI para 2024
- Top 25 Ferramentas do Hadoop
- Domain Driven Design estratégico
Visão geral dos níveis de serviço
Quando a meta é entregar excelência técnica e boa experiência para o cliente, não dá para contar só com sorte ou boa vontade. Assim, é preciso saber o que medir, onde mirar e o que prometer. Então é aí que entram os famosos SLI, SLO e SLA. Esses conceitos são o tripé que sustenta a confiabilidade dos seus sistemas. Mais do que jargões, são ferramentas práticas de engenharia com gestão de serviços.
O principal objetivo é entregar a melhor experiencia para o cliente. Como saber o que é melhor experiencia? O SLI, SLO e SLA podem ajudar a responder. Eles ajudam colocar a estratégia da TI diretamente nos serviços entregues, sendo pilares para medição da entrega e qualidade. mas veja que isso precisa ser muito bem alinhado com a equipe e não algo top-down, se possível.
A proposta aqui não é simplesmente seguir frameworks como ITIL ou fazer dailies com cards. É medir o que importa para o cliente e alinhar isso com metas realistas para a engenharia. É uma ponte entre a confiabilidade técnica e o valor percebido pelo usuário.
SLI – Service Level Indicator
O SLI é a régua. É a métrica que você escolhe para representar se um sistema está bom ou não. Mas atenção: não existe SLI genérico e sim uma para cada cenário em específico. Em uma potencial corretora de criptomoedas como a AnselmeX, um bom SLI pode ser o tempo médio de execução de uma ordem de compra/venda. Outro SLI possível: percentual de requisições HTTP que retornam 200 em menos de 500ms.
Podemos definir para nosso entendimento o SLI:
SLI 1: percentual de tempo médio de execução de uma ordem de compra/venda de até 5segundos.
Veja também que devemos observar claramente os SLIs de casos com sucesso e sem sucesso. Por exemplo, se uma requisição devolve HTTP 500 em 4 segundos, ela está dentro do SLI mas deve ser vista separadamente por que ela é um indicador muito perigoso. O tempo de resposta de erros deve ser o mais curto possível.
SLO – Service Level Objective
O SLO é o alvo que você deseja acertar. É o número que define o sucesso no SLI. Se o seu SLI for o tempo de resposta da API, seu SLO pode ser:
SLO: O SLI1 deve alcançar 90% de sucesso
Mas, note bem, não coloquei 100% ou 99,99%. Cada 9 a mais custa caro e muitas vezes, o cliente nem percebe essa diferença. Portanto, cuidado com a vaidade técnica e escolha metas que façam sentido de verdade para o negócio. E outra: SLO é interno. É um compromisso do time de engenharia, uma meta técnica que orienta decisões como alertas, melhorias e débitos técnicos, portanto, o cliente não participa nesse momento.
SLA – Service Level Agreement
O SLA é um contrato, uma assinatura entre as TI (prestadora de serviços) e o cliente (usuário do serviço). Esse contrato é formal que estabelece exatamente como o serviço deve funcionar, o que acontece se ele falhar e quais são os indicadores, tolerâncias e penalidades envolvidas.
SLA: O SLI1 deve alcançar 80% de sucesso, sob multa de R$ 1000 cara cada 10min. 5 violações cancelam imediatamente o contrato.
Uma prática comum e inteligente é manter um SLO interno mais rigoroso do que o estabelecido no SLA. Isso cria uma margem de segurança e ajuda a evitar dores de cabeça futuras, mas há de se analisar caso a caso.
SLI, SLO, SLA em 8 passos
Não meça tudo. Você vai afundar em complexidade sem entregar valor, além de gerar muitos custos. Já ouvi muitas vezes na minha carreira e isso deve ser sempre levado em conta: Controle é custo! Controle apenas o realmente necessário. Não comece com mais do que 5 indicadores. Então, fiz um pequeno roteiro para definição do que medir num ambiente novo:
- Liste os serviços que você oferece.
- Escolha os mais críticos (impacto alto + visibilidade).
- Faça brainstorming de possíveis SLIs para cada um.
- Avalie o custo/esforço de coleta de cada SLI.
- Escolha os melhores candidatos (maior valor com menor custo).
- Estabeleça os SLOs com time técnico (envolvendo DEV, QA, segurança, produto, etc.)
- Só depois disso transforme em SLA com o cliente.
- Melhoria contínua
Melhoria contínua e maturidade
Antes de prometer para fora, valide por dentro. Os SLOs devem estar estabilizados internamente antes de virarem compromisso oficial. E mais: devem ser exibidos de forma clara para o time, como comentei no artigo sobre feedback tático. Mostre os números, discuta os resultados, ajuste conforme a maturidade do serviço.
Conclusão de SLI, SLO, SLA em 8 passos
Medir, alinhar e evoluir. Essa é a essência por trás dos níveis de serviço. SLI, SLO e SLA não devem ser tratados como burocracia, mas como instrumentos vivos de governança técnica. Quando bem definidos e compartilhados com o time, viram bússola para decisões e blindagem para promessas. No fim das contas, quem domina esses conceitos entrega mais, com menos ruído, e com muito mais confiança.
Ele atua/atuou como Dev Full Stack C# .NET / Angular / Kubernetes e afins. Ele possui certificações Microsoft MCTS (6x), MCPD em Web, ITIL v3 e CKAD (Kubernetes) . Thiago é apaixonado por tecnologia, entusiasta de TI desde a infância bem como amante de aprendizado contínuo.
