SLO / SLI / SLA

Тема дорожной карты · Observability

SLO (Service Level Objective), SLI (Service Level Indicator) и SLA (Service Level Agreement) образуют иерархию контрактов надёжности, используемую SRE-командами для управления качеством системы. SLI — это фактическое измерение: например, доля HTTP-запросов, завершившихся успешно, тогда как SLO — это целевое значение для этого SLI, например «99,9% запросов завершаются успехом за скользящие 28 дней». SLA — это формальное, нередко юридически обязывающее соглашение между поставщиком услуги и его клиентами, определяющее последствия при нарушении SLO. В практике наблюдаемости SLI выводятся из метрик, собранных Prometheus или OpenTelemetry, SLO кодируются в правилах алертинга и расчётах бюджета ошибок, а SLA транслируют эти обязательства внешним сторонам. Чёткое согласование SLO, SLI и SLA гарантирует, что инженерные приоритеты остаются связанными с реальным пользовательским опытом.

Как это работает

SLO / SLI / SLA: SLI (Service Level Indicator) — измерение здоровья сервиса (например "доля HTTP 200"). SLO (Objective) — таргет для этого SLI ("99.9% за 30 дней"). SLA (Agreement) — контрактное обещание клиентам ("99.5% или refund"). Error budget = 1 - SLO; тратится на релизы + эксперименты. Burn-rate alerts (multi-window, multi-burn-rate) ловят fast + slow burn с подходящей чувствительностью.

Когда применять

Определите SLI + SLO до масштабирования reliability-работы — без них спорите вечно про "достаточно хорошо". Начните с availability + latency SLI (probe_success_ratio, request_latency_p99). SLO на 99% / 99.9% — 99.99% звучит хорошо, но цена экспоненциальная. Алерты на основе SLO (burn rate), не threshold-алерты на сырых метриках. Прочтите главу про SLO в SRE-книге Google.

Типичные ошибки

Ловушки SLO / SLI / SLA: SLO без buy-in от продукта + инженерии ("бумажный SLO"); SLO, которые никто не трекает (дрейф); путаница SLA (юридическое) и SLO (инженерный таргет) — должны быть разными (SLO жёстче); error budget никогда не тратится ("слишком осторожны"); SLO-таргеты заданы случайной надеждой, не cost-анализом.

Связанные понятия

Полезные ресурсы

Проверить знания (1)

Загрузка вопросов…