web-dev-qa-db-ja.com

CorednsはKubernetesクラスターで保留状態にあります

2ノードのKubernetesクラスターを構成しようとしています。まず、CentOS VMでクラスターのマスターノードを構成しようとしています。 「kubeadm init --apiserver-advertise-address = 172.16.100.6 --pod-network-cidr = 10.244.0.0/16」を使用してクラスターを初期化し、フランネルネットワークをクラスターにデプロイしました。しかし、「kubectl get nodes」を実行すると、次の出力が表示されます----

[root@kubernetus ~]# kubectl get nodes
NAME         STATUS     ROLES    AGE   VERSION
kubernetus   NotReady   master   57m   v1.12.0

以下は「kubectl get pods --all-namespaces -o wide」の出力です----

[root@kubernetus ~]# kubectl get pods --all-namespaces -o wide
NAMESPACE     NAME                                 READY   STATUS    RESTARTS   AGE   IP             NODE         NOMINATED NODE
kube-system   coredns-576cbf47c7-9x59x             0/1     Pending   0          58m   <none>         <none>       <none>
kube-system   coredns-576cbf47c7-l52wc             0/1     Pending   0          58m   <none>         <none>       <none>
kube-system   etcd-kubernetus                      1/1     Running   2          57m   172.16.100.6   kubernetus   <none>
kube-system   kube-apiserver-kubernetus            1/1     Running   2          57m   172.16.100.6   kubernetus   <none>
kube-system   kube-controller-manager-kubernetus   1/1     Running   1          57m   172.16.100.6   kubernetus   <none>
kube-system   kube-proxy-hr557                     1/1     Running   1          58m   172.16.100.6   kubernetus   <none>
kube-system   kube-scheduler-kubernetus            1/1     Running   1          57m   172.16.100.6   kubernetus   <none>

corednsは非常に長い間保留状態です。 dockerとkubectl、kubeadm、kubeletを何度も削除してクラスターを再作成しようとしましたが、毎回同じ出力が表示されます。誰かがこの問題を手伝ってくれる?

5
Aditya Datta

Dockerとkubernetesが同じcgroupドライバーを使用しているかどうかを確認します。私は同じ問題(CentOS 7、kubernetes v1.14.1)に直面し、同じcgroupドライバー(systemd)を設定するとそれが修正されました。

0
Jules Winnfield

Kubernetesクラスタを使用するには、クラスタにコンテナネットワークインターフェース(CNI)が必要です。 dnsポッドを機能させるには、ポッドネットワークを構成する必要があります。

次のようなCNIプロバイダーのいずれかをインストールします。-フランネル-Calico-Canal-WeaveNetなど

これがないと、ホストされているKubernetesクラスターのマスターがNotReady状態になります。

0
Sandy