Почему kubelet запущен на мастер-ноде kubernetes?

Я развернул кластер kubernetes (1 мастер и 2 рабочих) на своем локальном ноутбуке с помощью kubeadm.

Отметил, что кубелет также работает на главном узле. Из статей, которые я читал ранее, kubelet нужен только на рабочих узлах. Может ли кто-нибудь сообщить мне, почему на главном узле kubernetes запущена служба kubelet?


person Lijo    schedule 21.10.2019    source источник


Ответы (2)


Причина в том, что kubeadm использует контейнеры (поды) для развертывания etcd и компонентов сервера api. Для этого статические манифесты создаются в виде yaml-файлов, которые собираются кубелетом на главном узле для предоставления модулей инфраструктуры.

Дополнительным преимуществом является то, что у вас есть метрики главного узла, доступные из api kubernetes.

person Thomas    schedule 21.10.2019
comment
Это так только при развертывании кластера с помощью kubeadm? Кроме того, kubelet на мастере требуется только во время первоначального развертывания компонентов инфраструктуры? после развертывания кластера можно ли остановить / удалить кублет? - person Lijo; 21.10.2019
comment
Именно так работает kubeadm, например, другие методы могут использовать собственные модули systemd. Kubelet не следует останавливать / удалять, поскольку он используется для обеспечения непрерывной работы модулей инфраструктуры и, наконец, но не в последнюю очередь, при обновлении кластера kubeadm также используются статические манифесты. Так что просто продолжай. - person Thomas; 21.10.2019
comment
Спасибо Томас за информацию - person Lijo; 21.10.2019

Kubelet - агент Kubernetes для управления подами. На ваших главных узлах также работают несколько модулей. Например, ваши сетевые модули, модули etcd (если вы сами не предоставили их кластер) и любые другие модули, которые вы запускаете на своих главных узлах (экспортер узлов, сборщик журналов и т. Д.), Или любой DaemonSet, который вы не использовали. Не допускайте, чтобы они не были запланированы на ваших главных узлах - это разновидности модулей, которые работают на вашем главном узле. Так что Kubernetes нужен Kubelet для управления ими.

person Ali Tou    schedule 21.10.2019