Назад | Перейти на главную страницу

Как узнать, когда / если / почему перезапускается контейнер в кластере Kubernetes?

У меня есть кластер Kubernetes с одним узлом в движке контейнеров Google, с которым можно поиграть.

Дважды небольшой личный веб-сайт, который я размещаю на нем, отключался на пару минут. Когда я просматриваю журналы контейнера, я вижу, что обычная последовательность запуска была недавно завершена, поэтому я предполагаю, что контейнер умер (или был убит?) И перезапустился.

Как я могу понять, как и почему это происходит?

Есть ли способ получить предупреждение, когда контейнер неожиданно запускается / останавливается?

Вы можете просмотреть журналы последнего перезапуска контейнера, используя:

kubectl регистрирует имя модуля -c имя контейнера --предыдущее

Как описано Sreekanth, kubectl get pods должен показывать вам количество перезапусков, но вы также можете запустить

kubectl описать имя модуля модуля

И он покажет вам события, отправленные kubelet в apiserver о событиях жизненного цикла модуля.

Вы также можете написать последнее сообщение в / dev / termination-log, и оно будет отображаться, как описано в документы.

Помимо предыдущих ответов, еще одна команда, которая помогла мне найти ошибку:

kubectl get event [--namespace=my-namespace]

В нем перечислены события из модулей, заданий и узлов.

kubectl get pods фактически перечислит все перезапуски контейнера, также может помочь команда description, так как в ней перечислены все события, связанные с модулем.

Датчики живучести и готовности можно настроить для более удобного обращения проверьте здесь

Кроме того, крючки можно настроить для использования в контейнере в определенные моменты жизненного цикла контейнера. проверьте здесь