SLO, SLI и SLA – Разница между ними, примеры использования.
✍️ SLI (Service Level Indicator) — индикатор уровня сервиса.
Что это? SLI — это конкретная метрика, которая измеряет работу сервиса в реальном времени. Это основа для оценки выполнения SLO. Метрики бывают разных уровней - инфраструктурные, сервисные и бизнесовые, про это мы подробнее писали в посте про мониторинг.
Пример:
Метрика доступности сервиса: (Время работы сервиса / Общее время) × 100
(Время работы сервиса / Общее время)×100.
Среднее время ответа API: (Сумма времени ответов) / (Количество запросов)
(Сумма времени ответов) / (Количество запросов).
Где используется? SLI используется для сбора данных о текущей работе сервиса. Эти данные позволяют оценить, соответствует ли работа системы установленным целям или SLO.
✍️ SLO (Service Level Objective) — целевой уровень сервиса (метрики)
Что это? SLO — это конкретная цель или уровень качества, который сервис должен поддерживать. Это числовое значение, выражающее ожидания от работы системы или услуги, обычно заданное в процентах.
Пример:
Веб-приложение должно быть доступно для пользователей 99.95% времени.
Время ответа API должно быть меньше 300 миллисекунд в 95% запросов.
Где используется? SLO помогает управлять приоритетами разработки и эксплуатации, выдерживая баланс между выкаткой новых фичей и сохранением стабильности системы на необходимом заданном уровне. Например, если метрика (SLI) не достигает целевого значения (SLO), это может сигнализировать о необходимости анализа процессов и причин такого отклонения.
В примере выше, момент, когда метрика доступности системы уходит ниже значения 99.95%, является поводом найти причины отказов и пересмотреть некоторые процессы, становившиеся причинами падений. SLO также является базой для расчета и выполнения SLA.
✍️ SLA (Service Level Agreement) — формальное соглашение об уровне сервиса
Что это? SLA — это формальное соглашение между поставщиком услуги и клиентом, в котором прописаны ожидаемые уровни качества и обязательства обеих сторон. SLA часто включает штрафные санкции за невыполнение условий.
Пример:
Поставщик облачного хранилища гарантирует 99.9% доступности. Интернет-провайдер обязуется устранять сбои в течение 4 часов с момента заявки. Если доступность падает ниже 99.9%, клиенту возвращается часть оплаты.
Где используется? SLA используется как юридически или формально обязательное соглашение между сторонами. Оно прописывает ожидания между клиентами и поставщиками.
Взаимосвязь:
SLI измеряет фактическую производительность (например: доступность).
SLO задаёт целевое значение метрики (например, 99.95% доступности).
SLA устанавливает формальные обязательства на основе SLO (например, штрафы за доступность ниже 99.95%).
Когда использовать?
SLI: Когда вам нужно определить ключевые показатели для отслеживания состояния сервиса.
SLO: Чтобы установить цели для внутреннего контроля и качества.
SLA: Для официальных договорённостей и документов.
Эти понятия помогают управлять качеством сервисов и минимизировать риски, как для поставщиков, так и для клиентов. Более полно про SLA, SLO и SLI можно почитать в канале по тегу #SRE и в книгах.
Куда еще заглянуть?
- Мониторинг и алертинг
- Антипаттерны в DevOps и SRE
- Культура взаимодействия между DevOps и SRE
#полезныематериалы #SRE @downtime_bar
Post #161
1.2K

- 🔥 5
- ❤ 2
- ⚡ 1
- 😱 1