Статус рабочего узла Kubernetes NotReady [закрыт]

У меня статус рабочего узла Kubernetes не готов. Я использую две машины Ubuntn. Один главный и один рабочий узел. Я добавил фланель sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml на главный узел после sudo kubeadm init --pod-network-cidr=10.244.0.0/16 .

Информация, которую я получил от главного узла: введите здесь описание изображения

введите здесь описание изображения

С рабочего узла я получил: введите здесь описание изображения

Как говорится, container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Кроме того, рабочий узел говорит Unable to update cni config" err="no networks found in /etc/cni/net.d Должны ли они быть причинами?

Также это то, что я получил ps -ef | grep kubelet на главном и рабочем узле введите здесь описание изображения


person yeehaw    schedule 30.06.2021    source источник
comment
Удалите изображения, замените их текстом.   -  person P....    schedule 30.06.2021
comment
Спасибо, но я чувствую, что текстов слишком много, поэтому я скопировал только часть. ИМХО, это лучший выбор :)   -  person yeehaw    schedule 30.06.2021
comment
не уверен, поможет ли это, но некоторые сообщения связаны с DNS, а механизм контейнера не активен. можете ли вы проверить /etc/resolv.conf и /etc/hosts, а также посмотреть, есть ли в движке Docker этот DNS.   -  person user2039152    schedule 30.06.2021
comment
Пожалуйста, не загружайте изображения кода/ошибок, когда задаете вопрос.. Пожалуйста, опубликуйте результаты в виде текста.   -  person Paweł Grondal    schedule 30.06.2021
comment
с какими аргументами вы начинаете kubelet? вы передаете параметры --network-plugin=kubelet и --cnf-conf-dir=$path/to/dir? если да, то что у вас есть в вашем каталоге cni conf. см. kubernetes.io/docs/concepts/ extend-kubernetes/ для документации   -  person meaningqo    schedule 30.06.2021
comment
@user2039152 user2039152 Привет, теперь я готов рабочий узел. Но у меня возникла новая проблема в модуле создания kubectl: Warning FailedCreatePodSandBox 45s (x26 over 6m11s) kubelet Failed to create pod sandbox: open /run/systemd/resolve/resolv.conf: no such file or directory На моей рабочей машине нет файла resolv.conf. Для чего нужен этот файл conf? Могу ли я скопировать конфиг с мастера на рабочий узел? Похоже, я потерял несколько файлов на своем рабочем узле. IDK, почему, но у меня есть kubelet, kubeadm и docker, установленные на рабочем узле.   -  person yeehaw    schedule 02.07.2021
comment
если на узле есть systemd, файл /run/systemd/resolve/resolv.conf является правильным файлом для записи DNS. здесь должны быть добавлены DNS-серверы имен, у вас может быть то же содержимое, что и в /etc/resolv.conf   -  person user2039152    schedule 03.07.2021


Ответы (1)


Согласно сообщению об ошибке, kubelet, работающий на вашем рабочем узле, не готов из-за того, что в вашем кластере не развернут плагин CNI!

обратитесь к официальной документации здесь как развернуть сетевой плагин в вашем кластере.

Это должно позволить kubelet правильно запуститься и исправить ваш рабочий узел.

person meaningqo    schedule 30.06.2021
comment
Благодарю вас! Я не понимаю what arguments are you starting kubelet with Я сделал kubeadm init, а затем apply -f flannel на главном узле и kubeadm join на рабочем узле. Что мне делать с кублетом? на рабочем узле? Кроме того, Unable to update cni config" err="no networks found in /etc/cni/net.d в моей папке cni нет файла net.d. - person yeehaw; 30.06.2021
comment
Я добавил то, что получил ps -ef | grep kubelet на главном и рабочем узле. - person yeehaw; 30.06.2021