Как стать автором
Обновить

Как безопасно завершить работу пода в Kubernetes: разбираемся с graceful shutdown и zero downtime деплоймент

Время на прочтение14 мин
Количество просмотров20K
Всего голосов 22: ↑22 и ↓0+22
Комментарии3

Комментарии 3

Не раз сталкивался с ситуацией, когда не удаляется Namespace со всеми подами - висит пустой в статусе удаления, хотя если сначала удалять поды руками, то всё ок. С какими внутренними механизмами связано такое поведение?

Namespace может застревать в статусе удаления по разным причинам.

Например, может быть недоступно расширение API Kubernetes. В этом случае ресурсы, управляемые этим расширением, не могут быть удалены. А так как расширение API невозможно удалить, происходит сбой удаления пространства имен.

Говоря проще, есть некая неустановленная зависимость, без которой нельзя удалить зависимый компонент.

Чтобы этого избежать, мы удаляли курлом, как описано тут

Еще один вариант — отсутствующий prometheus-adapter. Решение описано тут.

Можно доустановить prometheus-adapter и удаление пройдет нормально, или можно "удалить" finalizer и все также пройдет успешно.

Благодарю за статью!

Только одна просьба. Слово английского происхождения "под" очень похоже на русское слово "под", что очень сбивает при чтении.

Может быть стОит его как то особенно выделить?

"ПОД" или "pod" или курсивом там.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий