Как перезапустить неудавшийся элемент в развертывании кубернетов

У меня есть 3 узла в кластере кубернетов. Я создаю daemonset и развернул его на всех трех устройствах. Этот daemonset создал 3 контейнера, и они были успешно запущены. Но по некоторым причинам один из модулей не прошел.

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

Спасибо

Ответ 1

kubectl delete pod <podname> он удалит этот один модуль, а DaemonSet перенесет новый

Ответ 2

Просто для других, читающих это...

Лучшее решение (IMHO) - реализовать пробу живучести, которая заставит модуль перезапустить контейнер, если он не пройдёт тест зонда.

Это отличная особенность, которую K8s предлагает из коробки. Это автоматическое лечение.

Также посмотрите документы по жизненному циклу pa.

Ответ 3

kubectl -n <namespace> delete pods --field-selector=status.phase=Failed

Я думаю, что приведенная выше команда весьма полезна, когда вы хотите перезапустить 1 или более неудачных модулей: D

И нам не нужно заботиться о названии вышедшего из строя стручка.