#kubernetes
#kubernetes
Вопрос:
Узлы Kubernetes становятся незапланированными, пока я инициирую слив или оцепление, но модули, доступные на узле, не перемещаются на другой узел немедленно?
я имею в виду, что эти модули не создаются daemonset.
Итак, как получилось, что модуль, работающий под управлением приложения, может быть доступен на 100%, когда узел становится неисправным или с некоторыми проблемами?
какие-либо входные данные?
используемая команда :
Для слива / оцепления, чтобы сделать узел недоступным:
kubectl drain node1
kubectl cordon node1
Чтобы проверить состояние узла :
kubectl get nodes
Чтобы проверить состояние модуля до / после оцепления или слива :
kubectl get pods -o wide
kubectl describe pod <pod-name>
Удивительно то, что даже узел недоступен, статус модуля отображается всегда запущенным. 🙂
Комментарии:
1. вероятно, ваш модуль все еще находился в льготном периоде, потому что в вашей команде drain нет опции —force .
Ответ №1:
Модули сами по себе не переносятся на другой узел.
Вы можете использовать ресурсы рабочей нагрузки для создания нескольких модулей и управления ими. Контроллер ресурса обрабатывает репликацию и развертывание, а также автоматическое восстановление в случае сбоя модуля. Например, если узел выходит из строя, контроллер замечает, что модули на этом узле перестали работать, и создает модуль замены. Планировщик помещает модуль замены на исправный узел.
Некоторые примеры контроллеров:
Проверьте эту ссылку для получения дополнительной информации.