וְשַׂמְתִּי מִשְׁפָּט לְקָו וּצְדָקָה לְמִשְׁקָלֶת vesamti mishpat lekav · farei do juízo a linha de medir · Yeshayahu 28:17

Blog/Artigos · Operações

SLO: a linha que separa confiável de perfeito, e o orçamento de errar

Objetivo realista, error budget, burn rate e alerta multi-janela, com o SRE do Google, Alex Hidalgo e Nobl9.

Por Juliano Vince de Campos · · 5 min de leitura · 4 seções · 4 figuras

קָו VESAMTI · YESHAYAHU 28:17

Se o prumo mede se a parede está reta, a linha define até onde ela vai. Yeshayahu pareia os dois: o juízo é a linha, a justiça é o prumo. Em confiabilidade, o SLI é o prumo e o SLO é a linha. O erro que quase todo time comete é mirar a parede perfeita, 100% de disponibilidade, um alvo caro, impossível e desnecessário. O SLO, Service Level Objective, traça a linha honesta: quanto de confiabilidade é bom o suficiente para o usuário não reclamar, e nem um nove a mais.

100% é a meta errada

Cada nove de disponibilidade a mais custa exponencialmente mais: sair de 99,9% para 99,99% pode multiplicar o investimento em redundância e engenharia. E o usuário raramente percebe a diferença, porque a rede dele, o wifi de casa e o celular já falham mais que isso. Perseguir 100% é gastar fortuna para melhorar um número que ninguém sente, enquanto features que o cliente quer ficam paradas.

O SLO inverte a pergunta: em vez de quão confiável dá para ser, pergunta quão confiável precisa ser para o usuário ficar satisfeito. A resposta quase nunca é 100%. O livro de SRE do Google fez essa ideia virar prática, e Alex Hidalgo, em Implementing Service Level Objectives, transformou em método detalhado. O SLO é um alvo deliberadamente abaixo do perfeito, porque a margem entre ele e 100% é onde mora a liberdade de inovar.

Figura 1O custo de cada nove, e o quanto o usuário percebe
  • 99% (2 dias/ano fora)barato, sentido em serviço crítico
  • 99,9% (9h/ano)alvo comum, bom custo-benefício
  • 99,99% (52min/ano)caro, para serviço realmente crítico
  • 99,999% (5min/ano)custo altíssimo, raramente percebido
O custo sobe muito mais rápido que a percepção do usuário. O SLO certo é o menor número que mantém o cliente satisfeito, não o maior que a engenharia alcança.

Error budget: o orçamento de errar

Aqui está a ideia mais poderosa do SRE. Se o SLO é 99,9%, então 0,1% de falha é permitido, e esse 0,1% é o error budget: um orçamento concreto de erro que o time pode gastar. Enquanto há budget, pode-se arriscar, lançar rápido, experimentar. Quando o budget se esgota, a prioridade vira estabilidade, e novos lançamentos param até a confiabilidade voltar ao alvo. O budget transforma uma briga eterna, inovar contra estabilizar, numa regra objetiva.

O error budget é o que resolve o conflito histórico entre desenvolvimento, que quer lançar, e operação, que quer estabilidade. Em vez de discutir por opinião, os dois olham o mesmo número: sobrou budget, o desenvolvimento tem liberdade; acabou, a operação tem prioridade. É uma política acordada com o produto, não uma imposição do SRE, e é isso que a torna sustentável. O número decide, ninguém precisa ganhar a discussão.

Figura 2A política de error budget, decidindo entre inovar e frear
o número decide,não a opinião 1234Define o SLOMede o consumoHá budget?Revisa o alvo
  1. Define o SLO acordado com o produto: quão confiável precisa ser
  2. Mede o consumo cada falha desconta do orçamento de erro
  3. Há budget? sobra libera risco e velocidade; acaba, prioriza estabilidade
  4. Revisa o alvo SLO cronicamente estourado ou folgado demais é reajustado
O budget converte a briga inovar contra estabilizar numa decisão objetiva. Sobrou, acelera; acabou, freia. O número resolve.

Burn rate: alertar pelo que dói, não pelo que pisca

Alerta tradicional dispara por limiar instantâneo, e por isso mente nos dois sentidos: grita com um pico de dez segundos que não afeta ninguém, e fica calado numa degradação lenta que consome o budget do mês inteiro. A resposta madura é o burn rate: a velocidade com que se queima o error budget. Queimar rápido demais é o que importa, porque significa que, no ritmo atual, o budget do período acaba antes da hora.

O padrão de ouro, detalhado por Alex Hidalgo e adotado pelo Google, é o alerta multi-janela multi-burn-rate: combina uma janela curta e uma longa com taxas de queima diferentes, de modo que só dispara quando o problema é rápido e sustentado, não um espasmo momentâneo. Isso corta o alarme falso pela raiz e faz o pager tocar por degradação real. Ferramentas como o Nobl9 gerenciam SLO e budget como produto, mas a lógica do burn rate você precisa entender para configurar bem.

Figura 3Consumo do error budget: queima saudável contra queima acelerada
02550751000102030Dia do mêsBudget consumido (%)budget esgotado
  • Queima saudável
  • Queima acelerada
Ver os dados da figura
Dia do mêsQueima saudávelQueima acelerada
000
540
103085
14100
2062
3092
A queima saudável termina o mês perto de 100% sem estourar. A acelerada esgota no dia 14: o burn rate alto é o que deve disparar o alerta, muito antes do estouro.

O SLO é contrato entre engenharia e produto

O SLO só funciona quando é acordo, não decreto. Ele é a linha que engenharia e produto traçam juntos: o produto diz quanto de confiabilidade o negócio precisa, a engenharia diz quanto custa cada nível, e os dois assinam o alvo e a política de budget. SLO imposto pelo SRE sem o produto na mesa é ignorado no primeiro conflito de prazo; SLO acordado é respeitado porque os dois lados entendem a troca.

Na prática, poucos SLOs bem escolhidos valem mais que dezenas medíocres. Um por jornada crítica, com error budget e alerta por burn rate, e uma revisão periódica para reajustar o alvo cronicamente estourado ou folgado demais. Foi assim que, na CRDC, os nove SLOs com error budget substituíram o monitoramento de infraestrutura ruidoso: menos números, mas cada um significando algo que o cliente sente e que o time se compromete a defender.

Figura 4A pilha da confiabilidade, do prumo à decisão de negócio
  1. SLI prumoa métrica honesta medida do lado do usuário
  2. SLO linhao alvo acordado com o produto, abaixo de 100%
  3. Error budget orçamentoo quanto de falha é permitido no período
  4. Burn rate alertaa velocidade de queima que dispara o pager
  5. Política decisãosobrou budget inova, acabou estabiliza
Cada camada se apoia na anterior. Sem SLI honesto não há SLO real; sem política acordada, o error budget é só um número bonito no dashboard.

Para levar

O SLO é a linha que separa confiável de perfeito: um alvo abaixo de 100%, acordado com o produto, com error budget que decide quando inovar e quando frear, e alerta por burn rate que toca pelo que dói. O SRE do Google deu a ideia, Alex Hidalgo deu o método, e o Nobl9 dá a ferramenta. Poucos SLOs bem escolhidos valem mais que muitos medíocres. A IA projeta o budget, calibra o burn rate e informa a conversa com o produto, mas traçar a linha certa continua sendo acordo entre quem constrói e quem decide o negócio.

Tags

  • #julianovincedecampos
  • #SLO
  • #SRE
  • #ErrorBudget
  • #BurnRate
  • #Confiabilidade
  • #Observabilidade

Onde eu estudei, me certifiquei e trabalhei

  • University of Cambridge
  • PUC Minas
  • PUC-RS
  • PUC Goiás
  • Pontificia Universidad Católica del Perú
  • Amazon Web Services
  • Google
  • IBM
  • Oracle
  • COBIT 5 Foundation
  • ITIL v3 Foundation
  • Exemplar Global
  • Red Team Leaders
  • Infosec
  • Salesforce
  • Flowgrammers
  • ISO/IEC 27001
  • NIST Cybersecurity Framework
  • Compass UOL
  • Luby
  • Creditas
  • PicPay
  • PagoNxt, Santander
  • Mercado Pago
  • Itaú Unibanco
  • Foursys
  • Soluti Certificação Digital