Это пример postmortem, специально сделанный для курса SRE на основе оригинального постмортема с правками по типу анонимизации, скрытия данных по NDA и т.д.
Created: September 27, 2024 4:57 PM
Владелец постмортема: maksim-gusev
Incident Commander: m.gusev
Авторы: m.gusev
Время инцидента: September 27, 2024 16:19 (GMT+3) → 16:55
Затронутые сервисы: infrastructure
Status: Done
Канал инцидента: link-to-slack-mattermost-etc
Community Specialist: Иван
Эксперты и остальные: Иван
Время даунтайма: 2024/09/27 16:19 (GMT+3) → 16:55
Severity: SEV-1
Причина и последствия
Не грузились картинки в приложении/сайте, также киоски и кассы словили белый экран. CDN улетел на anti-ddos провайдер, который начал блочить трафик, и CDN закешировал ответ.
Последствия для бизнеса
Количество потерянных заказов: 0
Недополученная прибыль: 0
Заведения простояли в “стопе”: 0
Хронология
16:21
- Саша присоединился к каналу.16:21
- Леша присоединился к каналу.16:21
- Паша присоединился к каналу.16:21
- Максим присоединился к каналу.16:21
- Дима присоединился к каналу.16:21
- В 16:14 отписали в anti-ddos провайдер о том, что обнаружили блокировки, они пошли уточнять.16:22
- Андрей присоединился к каналу.16:22
- Ваня присоединился к каналу.16:23
-https://link-to-pull-request
по переключению CDN.16:23
- Отключили защиту руками у anti-ddos провайдера.16:24
- Anti-ddos провайдер: 16:23 :Настроили обеление по заголовку HIDDEN-HEADER-REQUEST, трафик нашли. Ситуация должна стабилизироваться в течение 5 минут.16:24
- Илья присоединился к каналу.16:24
- @Ваня, есть какие-то жалобы от клиентов?16:25
- Антон присоединился к каналу.16:26
- В тред писали, но с тех пор время прошло. У меня сейчас не воспроизводится, непонятен импакт.16:26
- А от клиентов и КЦ сейчас жалобы есть?16:26
- Паша присоединился к каналу.16:27
- Пока нет. Но от КЦ всегда инпутлаг.16:27
- Так уже 30 минут прошло, давай спросим.16:28
- Костя присоединился к каналу.16:34
- Антон присоединился к каналу.16:36
- У разрабов узнал, что импактит яндекс-страны.16:37
- На кассе белый экран, не грузится импортмап.16:37
- Обращаются массово пиццерии с белым экраном в приложении кассира. Связано?16:38
- Миша присоединился к каналу.16:40
- Возможно. Сейчас починилось? Есть возможность проверить?16:40
- Сбросили кэш CDN Яндекса, картинки пошли.16:41
-https://link-to-importmap
открывается плохо.16:41
- У нас импортмапы не грузятся в кассе.16:41
- 504 даёт.16:43
- Проблема остается, белый экран просто висит.16:44
- Хотим ещё кассе поменять. Как минимум, PR подготовим.16:49
- Пока не починилось, проверили на нескольких.16:51
- Всё ещё?16:51
- Вроде импортмап открывается, катить PR по кассе не будем.16:53
- Вот только Новосибирск написал, что заработало.16:53
- Сколько было заафекшенных точек?16:54
- Скорее всего, относительно мало, в кассе есть кэш на этот импортмап + обычно фронт не перезагружается.16:55
- По заказам не было проседания.16:55
- Если бы релиз фронтенда катнули в этот момент, было бы намного больнее, но пронесло.16:57
- Инцидент закрыт.
Первопричина
При переключении CDN не учли, что трафик может быть заблокирован anti-ddos провайдером, и правила необходимо настроить до переключения.
Действия, которые помогли решить инцидент
Обращение в anti-ddos провайдер и настройка правил фильтрации трафика.
Действия во время инцидента
Что прошло как по маслу
- Оперативно сработали и поняли, в чем проблема, подключили саппорт anti-ddos провайдера.
Что пошло не так и нужно улучшить
- Перед переключением ресурсов, стоящих за anti-ddos провайдером, надо убедиться, что все настройки применены на новый конфиг.
В чем нам повезло
- Сбой не повлек падение заказов.
Решения
Каждое решение должно быть в виде карточки в Kaiten, с соответствующей ссылкой на задачу в постмортеме, и должно принадлежать одной из категорий:
detect - задачи на улучшение обнаружения проблем
investigate - задачи на облегчение исследования причин во время и/или после инцидента
mitigate - задачи на снижение импакта от проблем
other - все, что не подошло ни под одну категорию, но важно
prevent - задачи на предотвращение проблем
process - задачи на улучшение наших процессов
Задача | Ответственный | Категория | Ссылка на задачу |
---|---|---|---|
Переписать ранбук по работе с CDN | Максим | Prevent/process | link-to-task |
Настроить автоматическое уведомление о блокировках от anti-ddos провайдера | Андрей | Detect | link-to-task |
Разработать план действий на случай повторного сбоя | Иван | Mitigate | link-to-task |
Провести тренинг по управлению инцидентами для команды | Антон | Process | link-to-task |
Пройди этот чеклист, когда напишешь решения
- Убедитесь, что у каждой задачи есть ссылка на трекер задач, указана ответственная команда.
- Обязательно покройте 2 наиболее критичных вида решений: связанных со смягчением и предотвращением похожих инцидентов в будущем.
- Убедитесь, что решения по постмортему реалистичны (проконсультируйтесь со стейкхолдерами и СТО).
Прочее
- Провести ретроспективу инцидента с командой, чтобы извлечь уроки и улучшить процессы.
- Рассмотреть возможность внедрения автоматизированных тестов для проверки корректности настроек CDN.