Если бы я должен был выполнить перезагрузку sudo на главном узле Kubernetes, был бы Kubernetes достаточно умен, чтобы истощить себя из кластера?
Скажем, у меня есть веб-служба, на которой запущен один модуль, который случайно оказался на главном узле. Если бы я «перезагрузил sudo» главный узел, сказал бы он другому узлу, чтобы он создал копию, прежде чем он умрет?
Это не ожидаемое поведение для Kubernetes. Фактически, K8s представляют главный узел как Плоскость управления для всех операций, управляемых кластером. Основными участниками каждого узла являются: кубелет, kube-proxy, и ПО для выполнения контейнеров (Docker, cri-o и т. д.).
Всякий раз, когда вы хотите перезагрузить ОС на конкретном узле (главном, рабочем), механизм кластера K8s не знает об этом действии и сохраняет все связанные с кластером события в ETCD хранилище ключевых значений, резервное копирование самых последних данных. Как только вы захотите тщательно подготовить перезагрузку узла кластера, вам, возможно, придется настроить Обслуживание на этом узле, чтобы исключить его из расписания и корректно завершить все существующие модули.
Если вы составите любой соответствующий ресурс K8s в рамках определенного набора реплики, затем ReplicationController гарантирует, что указанное количество реплик модуля выполняется одновременно через каждый доступный узел. Он просто повторно создает поды, если они не прошли проверку работоспособности, были удалены или прерваны, соответствуя желаемым репликам.