kubernetesの後に参加した作業ノードが "NotReady "状態である。
2022-02-27 17:50:40
問題:マスターで参加したばかりのノードの状態を確認するとSTATUS: NotReadyと表示される
[root@k8s-master jenkins-yaml]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready master 2d1h v1.15.2
k8s-node1 Ready <none> 2d1h v1.15.2
k8s-node2 NotReady <none> 11m v1.15.2
トラブルシューティングです。エラー行 No networks found in /etc/cni/net.d からは、おそらくネットワーク設定の問題で、Flannelのインストールプロセスに問題があるのではないかと推測されます。
ノード上のログを確認する
root@k8s-node2 ~]# journalctl -f -u kubelet
-- Logs begin at a 2019-10-28 16:09:21 CST. --
Oct 28 16:50:48 k8s-node2 kubelet[14216]: W1028 16:50:48.984435 14216 cni.go:213] Unable to update cni config: No networks found in /etc/cni/net.d
Oct 28 16:50:49 k8s-node2 kubelet[14216]: E1028 16:50:49.506102 14216 kubelet.go:2169] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Oct 28 16:50:53 k8s-node2 kubelet[14216]: W1028 16:50:53.984746 14216 cni.go:213] Unable to update cni config: No networks found in /etc/cni/net.d
Oct 28 16:50:54 k8s-node2 kubelet[14216]: E1028 16:50:54.507916 14216 kubelet.go:2169] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Oct 28 16:50:58 k8s-node2 kubelet[14216]: W1028 16:50:58.985254 14216 cni.go:213] Unable to update cni config: No networks found in /etc/cni/net.d
Oct 28 16:50:59 k8s-node2 kubelet[14216]: E1028 16:50:59.509542 14216 kubelet.go:2169] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Oct 28 16:51:03 k8s-node2 kubelet[14216]: W1028 16:51:03.985612 14216 cni.go:213] Unable to update cni config: No networks found in /etc/cni/net.d
Oct 28 16:51:04 k8s-node2 kubelet[14216]: E1028 16:51:04.518004 14216 kubelet.go:2169] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Oct 28 16:51:08 k8s-node2 kubelet[14216]: W1028 16:51:08.985934 14216 cni.go:213] Unable to update cni config: No networks found in /etc/cni/net.d
Oct 28 16:51:09 k8s-node2 kubelet[14216]: E1028 16:51:09.520076 14216 kubelet.go:2169] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
マスター上のポッドをチェックすると、フランネルイメージのダウンロードに失敗していることがわかりました。
[root@k8s-master jenkins-yaml]# kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-bccdc95cf-dzgz8 1/1 Running 0 2d1h
coredns-bccdc95cf-xfp4s 1/1 Running 0 2d1h
etcd-k8s-master 1/1 Running 0 2d1h
kube-apiserver-k8s-master 1/1 Running 0 2d1h
kube-controller-manager-k8s-master 1/1 Running 0 2d1h
kube-flannel-ds-amd64-c769s 1/1 Running 0 2d1h
kube-flannel-ds-amd64-lphkb 1/1 Running 0 2d1h
kube-flannel-ds-amd64-vv9m5 0/1 Init:ErrImagePull 0 10m
kube-proxy-8bw84 1/1 Running 0 2d1h
kube-proxy-s9v8g 1/1 Running 0 10m
kube-proxy-ttwcg 1/1 Running 0 2d1h
kube-scheduler-k8s-master 1/1 Running 0 2d1h
kuboard-7bb8d57995-5qth2 1/1 Running 0 2d1h
解決策
明らかにノードがネットワークイメージのダウンロードに失敗したため、ノード上で手動でフランネルイメージを引き出すことは可能でしょうか?
[root@k8s-node2 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
registry.aliyuncs.com/google_containers/kube-proxy v1.15.2 167bbf6c9338 2 months ago 82.4MB
registry.aliyuncs.com/google_containers/pause 3.1 da86e6ba6ca1 22 months ago 742kB
[root@k8s-node2 ~]#
[root@k8s-node2 ~]#
[root@k8s-node2 ~]# docker pull quay.io/coreos/flannel:v0.11.0-amd64
v0.11.0-amd64: Pulling from coreos/flannel
cd784148e348: Already exists
04ac94e9255c: Pull complete
e10b013543eb: Pull complete
005e31e443b1: Pull complete
74f794f05817: Pull complete
Digest: sha256:7806805c93b20a168d0bbbd25c6a213f00ac58a511c47e8fa6409543528a204e
Status: Image is up to date for quay.io/coreos/flannel:v0.11.0-amd64
イメージをダウンロードしたら、masterに戻り、Podの状態を確認する
[root@k8s-master jenkins-yaml]# kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-bccdc95cf-dzgz8 1/1 Running 0 2d1h
coredns-bccdc95cf-xfp4s 1/1 Running 0 2d1h
etcd-k8s-master 1/1 Running 0 2d1h
kube-apiserver-k8s-master 1/1 Running 0 2d1h
kube-controller-manager-k8s-master 1/1 Running 0 2d1h
kube-flannel-ds-amd64-c769s 1/1 Running 0 2d1h
kube-flannel-ds-amd64-lphkb 1/1 Running 0 2d1h
kube-flannel-ds-amd64-vv9m5 1/1 Running 0 11m
kube-proxy-8bw84 1/1 Running 0 2d1h
kube-proxy-s9v8g 1/1 Running 0 11m
kube-proxy-ttwcg 1/1 Running 0 2d1h
kube-scheduler-k8s-master 1/1 Running 0 2d1h
kuboard-7bb8d57995-5qth2 1/1 Running 0 2d1h
ok ネットワークが立ち上がったので、ノードの状態をもう一度確認します。
[root@k8s-master jenkins-yaml]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready master 2d1h v1.15.2
k8s-node1 Ready <none> 2d1h v1.15.2
k8s-node2 Ready <none> 11m v1.15.2
問題解決
関連
-
[解決済み】デーモンからのエラー応答:getsockopt: 接続が拒否された
-
[解決済み] Docker - コンテナが実行されていません
-
[解決済み] docker ERROR: 不明なブロブ
-
[解決済み] 複数のディレクトリを1つのコマンドでコピーする
-
ドッカーサーバーがHTTPSクライアントに対してHTTPレスポンスを返す問題処理
-
docker 環境に opencv をインストールします ImportError: libGL.so.1: cannot open shared object file: そのようなファイルやディレクトリはありません
-
Centos7 5つのステップでDockerをインストールし、公式Dockerイメージにアクセスできない問題を解決します。
-
デーモンからのエラー応答:コンテナ{containerId}が実行されていない
-
dockerインストール後のhello-worldのテストの問題(ローカルにイメージ 'hello-world:latest' を見つけることができない)。
-
ドッカーファーストエクスペリエンス for Mac
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ansibleでdocker-composeのコマンドを実行するには?
-
[解決済み] ポッドで "ErrImageNeverPull "を取得する
-
[解決済み] docker-compose down default_network エラー
-
[解決済み] 接続するには、Dockerクライアントを昇格して実行する必要があります。
-
minttyを使用している場合は、コマンドの前に'winpty'を付けてみてください。
-
minttyを使用している場合は、プレフィックスを付けてみてください。
-
docker学習用イメージの作成にdockerfileを使用した場合の落とし穴
-
DockerRegistryV2 イメージの削除
-
docker run image error: no such file or directory
-
docker可視化ツールPortainerを使用すると、Bind for 0.0.0.0:80 failed: port is already allocatedというエラーが発生します。