Um pouco sobre SLA, SLI e SLO

Introdução

Algumas métricas são importantes para entender como nossos serviços estão performando mas também existem métricas que nos dão uma visão sobre a confiabilidade e disponibilidade desses serviços. Entre elas estão o SLI e SLO, que vamos entender um pouco mais nesse texto.

Primeiramente é necessário entender que são métricas e dados importantes para medir a confiabilidade dos serviços através da observabilidade, um dos principais pilares de SRE (Site Reliability Engineering). O conceito de engenharia de confiabilidade foi criado pela equipe de engenharia do Google.

Exemplo prático

Vamos supor que o SLI seja a LATÊNCIA de uma API, o SLO seja de ter 97% das requisições abaixo de 1s nos últimos 30 dias, e o SLA firmado com o cliente é de responder em até 1s, 93% das requisições.

SLI (Service Level Indicator)

São métricas que podem ser medidas (quantificáveis) em relação aos serviços, e que caso não estejam em bons números podem impactar a performance do serviço. Ex:

  • Latência
  • Taxa de erros
  • Saturação
  • Disponibilidade

Nem toda métrica pode se tornar um SLI, devemos entender as métricas que impactam a experiência do usuário ou o desempenho do sistema.

SLO (Service Level Object)

Com o SLO podemos medir a maturidade dos serviços (internamente), é um valor na qual nos comprometemos em manter para não corromper a qualidade dos serviços e ambientes e também podendo dar direcionando nas ações. É importante que cada service level objective seja atingível, repetitivo, mensurável, compreensível, significante e controlável, além de conter as possíveis gratificações e penalidades previamente definidas para ambas as partes envolvidas.

É de suma importância que a organização esteja comprometida em manter os bons níveis do serviço e que o SLO não seja comprometido. Alguns exemplos:

  • Disponibilidade:
    • SLI: Quantidade de erros em relação a quantidade de requests/processamentos.
    • SLO: 98% de requests/processamentos com sucesso.
  • Latência:
    • SLI: Tempo de resposta ou tempo de processamento
    • SLO: 98% das requisições ou processamentos abaixo de X milissegundos.

Como ter sucesso com SLI e SLO

  • Considerar expectativas dos clientes (internos e externos);
  • Deixar acordos de SLO bem claros;
    • O SLO deve ser visto como um recurso para garantir a melhoria contínua;
  • Escolher bem as métricas para compor o SLI;

SLA (Service Level Agreement)

Ainda temos o SLA que é um acordo entre quem está entregando o serviço e o usuário final, garantindo um certo nível de serviço (SLO).

O não cumprimento desse acordo (SLA), pode gerar consequências, dentre elas podemos citar a penalidade financeira, gerando descontos por exemplo para o cliente afetado.

Para mais informações sobre o assunto podemos conferir no material do Google https://sre.google/

https://www.atlassian.com/br/incident-management/kpis/sla-vs-slo-vs-sli

0%