Эти три аббривеатуры максимально плотно связаны между собой.
SLI — Service Level Indicator #
Это числовое значение какой-то конкретной характеристики, метрика: время отклика, задержка запросов, частота ошибок. Обычно берутся значения за период времени, усредняются и переводятся в проценты.
Это наша мера успеха.
«Наш сайт был доступен 99% времени за прошлый месяц» — это SLI. Внезапно, это не SLA, как многие привыкли говорить.
SLO — Service Level Objective #
Это наша цель. Числовое значение, которого мы хотим достичь и не проваливаться ниже этой границы. Измеряем через SLI. Задает уровень ожиданий от сервиса. Например, SLO = среднее время отклика должно быть ≤100ms
«Мы стремимся, чтобы наш сайт был доступен 99% времени» — это SLO.
SLA — Service Level Agreement #
Отвечает на вопрос «Что случится если SLO не соблюдаются?».
Это явный или неявный контракт с клиентами или пользователями системы в котором описаны последствия несоответствия SLO.
«Будет предоставлена компенсация в случае, если наш сайт будет доступен менее 99% времени» — это SLA
Зачастую используются внутренние SLO, более жесткие, чем те, что мы показываем пользователям. Например, мы утверждаем, что система доступна 99,9% времени, а инженерная команда стремится обеспечивать 99,99%, таким образом появляется некий буфер перед штрафами по SLA.
TL;DR; #
Помните, что SLI — это измерение, SLO — это цель, а SLA — это обязательство.
🙋♂️С комментариями можно смело приходить в наш телеграм-чат.
🌀Так же рекомендую подписаться на телеграм-канал, чтобы не пропускать классные посты и анонсы новых статей.
🎬 А видео выходят на Youtube, канал @etogeek.