Что такое бюджет ошибок?
В инженерии надёжности сайтов (SRE) бюджет ошибок — это допустимый объём «ненадёжности» сервиса, при котором он всё ещё укладывается в свою цель по уровню обслуживания (SLO). Если вы обещаете доступность 99,9%, то тем самым негласно разрешаете себе 0,1% простоя — именно эти 0,1% и есть ваш бюджет ошибок. Этот универсальный калькулятор переводит любую цель SLO и любой период в максимально допустимое время простоя в минутах, а затем вычитает уже израсходованный простой, чтобы показать, сколько бюджета осталось.
Как пользоваться
Укажите целевой SLO в процентах (например, 99,9), выберите расчётный период (неделя, месяц, квартал или год) и введите, сколько минут простоя уже накопилось за этот период. Калькулятор покажет общий бюджет ошибок, израсходованный простой и остаток бюджета — и в минутах, и в процентах.
Разбираем формулу
Сначала период переводится в минуты: \(\text{минуты\_периода} = \text{дни} \times 24 \times 60\). Бюджет ошибок равен \((1 - \text{SLO}) \times \text{минуты\_периода}\), где SLO выражается дробью (99,9% → 0,999). Наконец, \(\text{остаток\_бюджета} = \text{бюджет\_ошибок} - \text{израсходованный\_простой}\). Отрицательный остаток означает, что бюджет уже исчерпан, а SLO нарушен.
$$ B_{\text{rem}} = \left(1 - \frac{\text{SLO (\%)}}{100}\right) \cdot P - \text{Downtime (min)} $$где
$$ P = \text{Period (days)} \times 24 \times 60 $$
Пример расчёта
Допустим, ваш SLO — 99,9% за 30-дневный месяц. Период составляет \(30 \times 24 \times 60 = 43\,200\) минут. Бюджет ошибок равен \((1 - 0{,}999) \times 43\,200 = 43{,}2\) минуты. Если простой уже составил 10 минут, остаток бюджета равен \(43{,}2 - 10 = 33{,}2\) минуты, то есть около 76,85% от всего бюджета.
Частые вопросы
Какой SLO считается хорошим? Всё зависит от сервиса. Для веб-приложений распространён уровень 99,9% («три девятки»); критичная инфраструктура может ориентироваться на 99,99% и выше. Чем выше SLO, тем меньше бюджет ошибок.
Что значит отрицательный остаток? Это значит, что вы превысили допустимый простой и нарушили SLO. SRE-команды в таких случаях часто замораживают рискованные релизы, пока бюджет не восстановится.
Учитываются ли плановые работы? Только если вы засчитываете технические окна как простой. Многие команды исключают заранее объявленное обслуживание из расчёта SLO.