Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Рейтинг: 69.6% · 38 голосов
Docker, Kubernetes, Helm, Terraform, Ansible, GitLab CI, GitHub Actions: автоматизация деплоя, инфраструктура как код, мониторинг и observability.
Ответить
Аватара пользователя
asyncmonk
Сообщения: 62
Зарегистрирован: 13 май 2026, 16:00

Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение asyncmonk »

Перечитал постмортем как Reddit лёг на 5+ часов после апгрейда на k8s 1.24. Причина — выпилили node-role лейбл master, а у них на него были завязаны route reflector-ы. Мелочь на бумаге, а положила весь сайт.
👍 ❤️ 🔥 😄 🤔
✔ Лучший ответ сформирован автоматически — hogan20
Главная мораль этого постмортема даже не в конкретном лейбле, а в том, что у них не было автоматического теста 'а что произойдёт с сетевой связностью, если этот узел потеряет роль'. Это не нишевая ситуация — у нас в кластере тоже была зависимость на annotation beta.kubernetes.io/arch, которую выпилили в 1.18, и мы узнали об этом только когда DaemonSet перестал шедулиться на новые ноды через…
Перейти к ответу →
Аватара пользователя
proxmoxmaker
Сообщения: 9
Зарегистрирован: 20 май 2026, 16:15

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение proxmoxmaker »

И ключевой момент: у k8s нет поддерживаемого даунгрейда. Схема и данные мигрируют автоматом при апгрейде, откат только через restore из бэкапа и reload состояния. Вот это и убивает людей в такие ночи.
👍 ❤️ 🔥1 😄 🤔
Аватара пользователя
chase2
Сообщения: 28
Зарегистрирован: 14 май 2026, 10:31

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение chase2 »

Ага. Вывод для себя: читать changelog с deprecations ПЕРЕД мажорным апгрейдом и гонять его на стейдж-кластере один-в-один с продом. Лейблы node-role вообще больная тема при миграциях.
👍3 ❤️ 🔥1 😄1 🤔1
Аватара пользователя
barbs
Сообщения: 50
Зарегистрирован: 19 май 2026, 04:16

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение barbs »

Мы после этой истории завели grep по манифестам на deprecated лейблы и API перед каждым апгрейдом. Ещё kubent (kube-no-trouble) неплохо ловит отмирающие API-версии заранее.
👍5 ❤️ 🔥2 😄 🤔3
Аватара пользователя
hogan20
Сообщения: 71
Зарегистрирован: 13 май 2026, 12:49

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение hogan20 »

✔ Лучший ответ — сформирован автоматически
Главная мораль этого постмортема даже не в конкретном лейбле, а в том, что у них не было автоматического теста 'а что произойдёт с сетевой связностью, если этот узел потеряет роль'. Это не нишевая ситуация — у нас в кластере тоже была зависимость на annotation beta.kubernetes.io/arch, которую выпилили в 1.18, и мы узнали об этом только когда DaemonSet перестал шедулиться на новые ноды через полгода. Тест на 'что изменится после апгрейда node labels' надо прогонять в staging с реальным трафиком, а не только синтетикой.
👍 ❤️1 🔥 😄 🤔
Аватара пользователя
cudauser
Сообщения: 20
Зарегистрирован: 17 май 2026, 22:50

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение cudauser »

Интересно что в 1.24 убрали именно node-role.kubernetes.io/master в пользу node-role.kubernetes.io/control-plane — это был deprecated ещё с 1.20 и четыре минорных версии предупреждения в release notes. Стандартная история: deprecation warning висит годами, никто не читает changelog до апгрейда. Сейчас для таких вещей настраиваю kube-no-trouble (kubent) в CI перед каждым апгрейдом — он явно кричит какие deprecated API и ресурсы будут сломаны в следующей версии.
👍 ❤️1 🔥1 😄 🤔
Аватара пользователя
roman2026
Сообщения: 39
Зарегистрирован: 10 май 2026, 23:40

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение roman2026 »

Меня в этом кейсе цепляет не сам лейбл, а blast radius. Одна строчка в node-role кладёт весь сайт на 5 часов — значит route reflector-ы были чистый single point of failure, без какой-либо деградации. Постмортем формально про лейбл, а корень в том, что сеть вообще не пережила потерю роли на узлах. Лейбл тут просто спусковой крючок, выстрелить могло что угодно другое.
👍1 ❤️1 🔥3 😄 🤔
Аватара пользователя
FpgaDev
Сообщения: 43
Зарегистрирован: 12 май 2026, 04:40

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение FpgaDev »

@cudauser, про 'warning висит годами' плюсую, но там ещё проблема сигнал/шум: на мажорный апгрейд в release notes под сотню deprecations, и реально стреляющий master тонет среди косметических. kubent тем и ценен, что показывает не 'что задеприкейтили вообще', а 'что из этого ты реально используешь'. Обидно только, что лейблы на нодах и завязки в BGP он не подсветит — это уже руками искать.
👍 ❤️ 🔥 😄 🤔
Аватара пользователя
Rhemix
Сообщения: 71
Зарегистрирован: 12 май 2026, 03:33

Re: Перечитал постмортем как Reddit лёг на 5 часов из-за одного лейбла

Сообщение Rhemix »

@barbs, grep по манифестам и kubent в CI — правильно, но именно этот кейс они бы пропустили. node-role это лейбл на ноде, а не API-объект, и завязка шла через конфиг BGP route reflector, который вообще вне зоны видимости kubent. Он ловит отмирающие apiVersion, а не то, что кто-то построил сетевую топологию поверх лейбла. Так что grep тут давал бы ложное чувство безопасности.
👍 ❤️1 🔥1 😄 🤔
Ответить
Поделиться темой: ✈ Telegram VK

Вернуться в «DevOps и CI/CD»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость