Соглашение об уровне обслуживания — это обещание с последствиями. Хостинг-компания может пообещать доступность 99,9% за каждый календарный месяц и согласиться вернуть часть ежемесячной платы, если не уложится. Обещание, способ его измерения и компенсация вместе и образуют SLA.

Ключевое слово здесь — соглашение. SLA — часть договора, поэтому значение имеет его точная формулировка, а не то, как выглядит число на панели.

SLA, SLO и SLI

Эти три термина связаны и часто путаются. В книге Google по SRE, которая распространила эту лексику среди инженеров, они разделены так:

Термин Расшифровка Что это Пример
SLI Показатель уровня обслуживания Измерение какого-либо свойства сервиса Доля успешных запросов
SLO Цель уровня обслуживания Целевое значение этого измерения 99,9% запросов успешны в течение месяца
SLA Соглашение об уровне обслуживания Договор, который связывает последствия с достижением уровня или недостижением Ниже 99,9% клиент получает сервисный кредит

SLI — то, что вы измеряете. SLO — то, к чему вы стремитесь. SLA — то, что вы пообещали кому-то другому, причём за невыполнение придётся заплатить. Цель, за которой не стоят последствия, — это SLO, а не SLA. Команды часто ставят внутренние цели жёстче, чем SLA, который подписывают, чтобы плохой месяц не превратился сразу в штраф.

Что обычно определяет SLA

Полезный SLA конкретен. Обычно в нём указаны:

  • Метрика — чаще всего доступность, иногда также время ответа или время реакции поддержки.
  • Целевое значение, например 99,9% или 99,95%. Что такие числа значат в минутах, смотрите в статье о доступности.
  • Окно измерения. Часто берут календарный месяц. При годовом окне один долгий сбой может спрятаться в хорошем среднегодовом значении.
  • Как измеряется доступность: из какого места, с каким интервалом и что считается сбоем. Именно здесь стороны чаще всего расходятся во мнениях.
  • Исключения. Типичные примеры — объявленное обслуживание, проблемы по вине клиента и события вне контроля поставщика.
  • Компенсация. Обычно это сервисный кредит — процент от платы, зависящий от того, насколько сервис не дотянул до целевого значения, — который нужно запросить в установленный срок.

Пример

Поставщик обещает ежемесячную доступность хостингового сайта 99,9%. В 30-дневном месяце это допускает около 43 минут простоя. В марте сайт недоступен 38 минут в одном инциденте и 14 минут в другом, то есть 52 минуты всего.

(43,200 − 52) ÷ 43,200 × 100 = 99.88%

Цель не достигнута. Что будет дальше, зависит от договора: возможно, сервисный кредит в 10% при доступности от 99,0% до 99,9%. Если один из инцидентов был объявленным обслуживанием и договор его исключает, учитываемый простой меньше, и цель, возможно, достигнута. Одни и те же события могут привести к разным итогам в зависимости от формулировок.

Зачем нужны SLA

Для клиентов SLA — основание для выбора между поставщиками и путь к компенсации. Для поставщиков — необходимость чётко определить сервис и способ его измерения. Для обеих сторон он заменяет расплывчатое обещание вроде «очень надёжно» тем, что можно проверить.

Частые заблуждения

  • «99,9% значит, что сбоев не будет». Это значит, что сбои в пределах лимита ожидаемы и допустимы. Даже 99,99% допускает несколько минут в месяц.
  • «Кредит возмещает убытки». Кредиты обычно ограничены частью платы. Они редко покрывают расходы от сбоя для собственного бизнеса клиента.
  • «Мой отчёт мониторинга — это доказательство». Соблюдение условий обычно определяет метод измерения поставщика, и он может отличаться от вашего. Сторонний монитор может быть ценной записью и поводом для разговора, но решит ли он спор, зависит от того, что в договоре сказано о доказательствах.
  • «SLA повышает надёжность». Он лишь задаёт ожидания и последствия. Надёжность обеспечивают инженерная работа и эксплуатация.
  • «Чем выше, тем лучше». Каждая следующая «девятка» стоит гораздо дороже предыдущей. Цель должна соответствовать тому, что нужно бизнесу.

SLA и мониторинг

Мониторинг поставляет сырьё для разговоров о SLA: когда сайт вышел из строя, на какое время и как часто. UptimeWire предоставляет ежемесячные отчёты по SLA на экране и экспорт в CSV на тарифах Business и Agency. В них показаны доступность, простой, инциденты и время ответа за календарный месяц в сравнении с заданным вами целевым значением. На тарифах Free и Starter их нет.

Эти отчёты описывают то, что UptimeWire наблюдал, проверяя настроенные вами сайты. Они не решают, выполнен ли договорный SLA или нарушен, и UptimeWire не гарантирует соблюдения никаких соглашений между вами и вашим клиентом или поставщиком. Это зависит от договора, в том числе от того, как в нём определены измерение, исключения и доказательства.