Утро пятницы. Кофе. Деплою рутинный апдейт.
kubectl get pods
ImagePullBackOff.
Что.
Bitnami переехали с образами MongoDB за ночь.
Старое место: docker.io/bitnami/mongodb
Новое место: docker.io/bitnamilegacy/mongodb
Мой Helm chart: “Эй, Bitnami, где монга?”
Bitnami: “Переехали. Смотри в другом репо.”
Мой chart: “Мне никто не сказал.”
Ноль предупреждений. Ноль редиректов. Просто исчезли.
Самое прекрасное?
Случилось у ТЫСЯЧ команд одновременно.
Кто-то обнаружил при рутинном перезапуске.
Другие — во время настоящего аутеджа.
GitHub затопило воплями “ПОЧЕМУ ВСЁ СЛОМАЛОСЬ”
Ответ Bitnami: “А, да, мы анонсировали. Разве не видели?”
(Они не видели.)
Повторюсь:
Бесплатные сервисы меняют правила.
Вы не можете засудить Docker Hub.
Вы не можете требовать SLA по аптайму.
Вы просто… адаптируетесь.
Разумный ход: Зеркалить критичные образы в СВОЙ реджистри.
Ваш AWS ECR. Ваш GCP Artifact Registry. ВАШ контроль.
Стоит $5/месяц. Спасает ваши выходные.
Доверять обещаниям вендоров? Конечно.
Но когда их нарушение стоит денег ВАМ, а им ничего…
Может, держать запасной план?
Было у вас “блин, а куда делся образ?” ?
P.S. На прошлой неделе писал про goo.gl — та же история.