Окно обслуживания — это отрезок времени, заранее согласованный для работ, которые могут прервать сервис: развёртывания, миграции базы данных, перезапуска сервера, смены сертификата или DNS. Тех, кто зависит от сервиса, предупреждают, когда окно начнётся и сколько оно должно продлиться.
Смысл окна в том, что перерыв ожидаем. Этим оно отличается от сбоя, которого никто не планировал.
Плановый и внеплановый простой
| Плановый простой | Сбой | |
|---|---|---|
| Объявлен заранее | Да | Нет |
| Причина | Намеренные работы | Неисправность |
| Обычно засчитывается против обещанной доступности | Часто нет, если соглашение его исключает | Да |
Засчитываются ли плановые работы против доступности, зависит от соглашения. Многие SLA исключают объявленное обслуживание, а некоторые ограничивают, сколько его допускается. Читайте договор, а не предполагайте.
Что должны видеть посетители
Во время окна сервис должен сообщать, что происходит, а не молча давать сбой. Обычно в таких случаях отвечают HTTP 503 и, по возможности, заголовком Retry-After, в котором сказано, когда вернуться. См. статью Как разобраться с ошибкой HTTP 503.
Мониторинг во время окна
Монитор не знает о ваших планах, пока вы ему не сообщите. Без окна плановые работы выглядят как настоящий сбой и вызывают оповещения. С окном монитор продолжает проверки и сохраняет результаты, но этот период учитывает иначе.
В UptimeWire окно планового обслуживания для сайта работает так:
- Проверки продолжаются, и в истории видны неудачи.
- Оповещения об инцидентах, начавшихся внутри окна, удерживаются. Если сбой закончился внутри окна, они отменяются. Если он продолжается после конца окна, они отправляются, когда окно заканчивается.
- Время внутри окна не входит в расчёт доступности.
- Предупреждения о SSL-сертификате, домене и DNS окно не удерживает.
Окно нужно настроить заранее, а на его длину и количество действуют ограничения. Это инструмент для работ, о которых вы объявляете, а не способ скрыть сбой. Подробнее — в статье Почему мониторинг доступности присылает ложные оповещения.