Inside Datadog’s $5M Outage (Real-World Engineering Challenges #8)Datadog автоматично насетапили собі апдейт Ubuntu 22.04 з декількома фіксами systemd і завалили собі весь мультиклаудний продакшн. Причому проблема була не в systemd, а в процесі оновлення цього пакету, який перетер їм кастомні eBPF роутинги.
Виглядає не дуже, і далі Datadog виправдовується у частині постмортему під назвою “4. Why did running in 5 regions on 3 different cloud providers not help?” 😅
Загалом багато питань:
- Чи є хоч якийсь інший енв, де ці апдейти деплойнулись за день-два, до проду? Їх ішью зарепродьюсилось би всюди, навіть на якомусь мікро енві, де є лише декілька нод.
- Функціонал ролбеку працює зовсім не так, як потрібно, бо оновлення не зупинилось після Х% unhealthy хостів (типу, ой, цей регіон ми вже поклали - і автоматизація вирішує не продовжувати далі, а пробувати ролбечити не здорові хости)
- Чи знали on-call інженери, що запустився автоапдейт? Через 3 хвилини прилетів перший алерт, далі через 15 хвилин прокинувся перший сапорт, і ще через 16 було очевидно increased latency. Чи можна було розкатати сетінгу “бігом вирубаємо unattended upgrade”?
Власне, в цьому потсмотремі мені не подобається абсолютно все, і навіть прикро за Datadog що все було проти них. Окрім цитат з SRE book, вони завжди подобаються.
Дивимось далі, Datadog робить такі висновки:
- 1. Made OS images resilient to systemd updates.
- 2. No more automatic updates.
Виходить, що вирішили вимкнути security updates. На масштабі Datadog, думаю, доцільно було б найняти окрему команду, і назавжди віддати цю проблему (тестити, деплоїти мануально-автоматизовано, нести відповідальність).
У нас немає такого масштабу, і за день такої сраки ми не втратимо $5M. В той же час, нам потрібні секьюріті апдейти хостової ОС. Амішки, драйвери, пакети - все що можна, має бути свіжим з пофікшеними vulnerabilities, але тепер великий челендж - не отримати такий результат, як у Datadog.
Щоб бути world-class інженерами, треба вирішувати world-class проблеми. Будемо вирішувати.
https://newsletter.pragmaticengineer.com/p/inside-the-datadog-outage