SLA (Service Level Agreement) — это формальное соглашение между заказчиком и ИТ-командой, определяющее параметры качества сервиса.
На уровне архитектуры соблюдение SLA обеспечивается техническими средствами, процессами, мониторингом и автоматизацией. Для корректной реализации важно иметь четкое представление о критиках системы, её отказоустойчивости и масштабируемости.
# Пример конфигурации алерта на задержку ответа API - alert: HighResponseLatency expr: histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket[5m])) by (le, service)) > 1 for: 5m labels: severity: critical annotations: summary: Время ответа превышает SLA (99% > 1 сек)
Что такое эксплуатационные метрики и зачем они нужны?
Эксплуатационные метрики — это показатели, характеризующие реальные параметры работы системы, например, доступность, задержка, количество ошибок. Они нужны для измерения, насколько система соответствует SLA, а также для быстрого реагирования на отклонения.
Пример кода:
# Пример экспорта метрик через Prometheus client from prometheus_client import start_http_server, Summary REQUEST_TIME = Summary('request_processing_seconds', 'Время обработки запроса')
SLA, SLO и SLI: в чем разница?
Обеспечивает ли только высокая доступность выполнение SLA?
Нет, SLA включает не только доступность, но и производительность (latency), стабильность (error rate), корректность работы. Высокая доступность сама по себе не гарантирует выполнения остальных требований SLA.