рабочий узел kubernetes в статусе "NotReady" - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь настроить свой первый кластер, используя Kubernetes 1.13.1. Мастер был инициализирован, но оба моих рабочих узла имеют значение NotReady. kubectl describe node показывает, что Kubelet прекратил публиковать состояние узлов на обоих рабочих узлах. На одном из рабочих узлов я получаю вывод журнала как

> kubelet[3680]: E0107 20:37:21.196128    3680 kubelet.go:2266] node
> "xyz" not found.

Вот полная информация:

Я использую Centos 7 & Kubernetes 1.13.1.

Инициализация была сделана следующим образом:

[root@master ~]# kubeadm init --apiserver-advertise-address=10.142.0.4 --pod-network-cidr=10.142.0.0/24

Успешно инициализирован кластер:

You can now join any number of machines by running the following on each node
as root:
`kubeadm join 10.142.0.4:6443 --token y0epoc.zan7yp35sow5rorw --discovery-token-ca-cert-hash sha256:f02d43311c2696e1a73e157bda583247b9faac4ffb368f737ee9345412c9dea4`

развернут фланелевой ЦНИ:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Команда соединения работала нормально.

[kubelet-start] Activating the kubelet service [tlsbootstrap] Waiting for the kubelet to perform the TLS Bootstrap... [patchnode] Uploading the CRI Socket information "/var/run/dockershim.sock" to the Node API object "node01" as an annotation

Этот узел присоединился к кластеру:

* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.
Run 'kubectl get nodes' on the master to see this node join the cluster.

Результат kubectl получить узлы:

[root@master ~]# kubectl get nodes

NAME     STATUS     ROLES    AGE   VERSION

master   Ready      master   9h    v1.13.1

node01   NotReady   <none>   9h    v1.13.1

node02   NotReady   <none>   9h    v1.13.1

на обоих узлах:

[root@node01 ~]# service kubelet status Перенаправление в / bin / systemctl status kubelet.service ● kubelet.service - kubelet: агент узла Kubernetes

 Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled)

  Drop-In: /etc/systemd/system/kubelet.service.d
           └─10-kubeadm.conf

   Active: active (running) since Tue 2019-01-08 04:49:20 UTC; 32s ago

     Docs: https://kubernetes.io/docs/

 Main PID: 4224 (kubelet)

   Memory: 31.3M

   CGroup: /system.slice/kubelet.service
           └─4224 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfi

`Jan 08 04:54:10 node01 kubelet[4224]: E0108 04:54:10.957115    4224 kubelet.go:2266] node "node01" not found`

Я ценю ваши советы по устранению неполадок.

Ответы [ 2 ]

0 голосов
/ 19 июля 2019

Предыдущий ответ звучит правильно. Вы можете проверить это, запустив kubectl describe node node01 на ведущем устройстве или там, где правильно сконфигурирован kubectl.

0 голосов
/ 08 января 2019

Кажется, причина этой ошибки - неправильная подсеть. В документации Flannel написано, что вы должны использовать / 16, а не / 24 для сети pod.

ПРИМЕЧАНИЕ. Если используется kubeadm, передайте --pod-network-cidr = 10.244.0.0 / 16. в kubeadm init, чтобы убедиться, что podCIDR установлен.

Я попытался запустить kubeadm с / 24, и хотя у меня были узлы в состоянии готовности, фланелевые модули не работали должным образом, что привело к некоторым проблемам.

Вы можете проверить, правильно ли работают ваши фланелевые капсулы: kubectl get pods -n kube-system если статус отличается от running, то это некорректное поведение. В этом случае вы можете проверить детали, набрав kubectl describe pod PODNAME -n kube-system. Попробуйте изменить подсеть и сообщите нам, если это решило проблему.

...