Я пытаюсь изучить k8s, и, поскольку у меня есть доступ к облаку OpenStack, я решил, что ' Попробую установить на него k8s, следуя этой вики .
Пока мне удалось инициализировать кластер, установить Weave CNI, подключить внешнего исполнителя и установить диспетчер облачных контроллеров OpenStack. Согласно вышеупомянутой вики, теперь мне нужно дождаться запуска всех модулей в пространстве имен kube-system. Я застрял со стручками coredns ... Они не переходят из состояния Pending .
Из описания модуля я вижу, что моя проблема в том, что главный узел по-прежнему имеет пометку ниже:
node-role.kubernetes.io/master:NoSchedule
Когда я проверяю статус узла, все в порядке:
ubuntu@master-node-01:~$ kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
master-node-01 Ready master 10h v1.17.0 10.99.53.6 <none> Ubuntu 18.04.5 LTS 4.15.0-143-generic docker://20.10.2
worker-node-01 Ready <none> 10h v1.17.0 10.99.53.5 <none> Ubuntu 18.04.5 LTS 4.15.0-143-generic docker://20.10.2
Все поды (кроме coredns) работают нормально:
ubuntu@master-node-01:~$ kubectl get pods --all-namespaces -o wide
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
kube-system coredns-6955765f44-g2jnm 0/1 Pending 0 10h <none> <none> <none> <none>
kube-system coredns-6955765f44-wj7xb 0/1 Pending 0 10h <none> <none> <none> <none>
kube-system etcd-master-node-01 1/1 Running 0 11h 10.99.53.6 master-node-01 <none> <none>
kube-system kube-apiserver-master-node-01 1/1 Running 0 11h 10.99.53.6 master-node-01 <none> <none>
kube-system kube-controller-manager-master-node-01 1/1 Running 0 11h 10.99.53.6 master-node-01 <none> <none>
kube-system kube-proxy-8s8r9 1/1 Running 0 10h 10.99.53.5 worker-node-01 <none> <none>
kube-system kube-proxy-vtgnz 1/1 Running 0 10h 10.99.53.6 master-node-01 <none> <none>
kube-system kube-scheduler-master-node-01 1/1 Running 0 11h 10.99.53.6 master-node-01 <none> <none>
kube-system openstack-cloud-controller-manager-dtczj 1/1 Running 0 10h 10.99.53.6 master-node-01 <none> <none>
kube-system weave-net-2z5n7 2/2 Running 2 10h 10.99.53.5 worker-node-01 <none> <none>
kube-system weave-net-tm9p4 2/2 Running 1 10h 10.99.53.6 master-node-01 <none> <none>
Я нахожу что-нибудь подозрительное в журналах подов.
OpenStack, который я использую, не имеет установленной Octavia (Wiki говорит, что это необходимо для настройки LB, но моя проблема, похоже, не связана с этим).
Если кто-нибудь из присутствующих может помочь мне найти способ исследовать (и в конечном итоге решить) эту проблему, я буду очень признателен. Спасибо.
Похоже, проблема с заражениями
. Вы можете попытаться решить проблему несколькими способами:
kubectl taint nodes $(hostname) node-role.kubernetes.io/master:NoSchedule-
kubectl edit node <node_name>
Вам необходимо обновить узел после комментирования.
apiVersion: extensions/v1beta1
kind: Deployment
...
spec:
...
spec:
...
tolerations:
- key: "node-role.kubernetes.io/master"
effect: "NoSchedule"
operator: "Exists"
kubectl taint nodes $(kubectl get nodes --selector=node-role.kubernetes.io/master | awk 'FNR==2{print $1}') node-role.kubernetes.io/master-