kubeadmで作ったk8sクラスタのWorkerノードの1つが障害停止してNotReady状態となったので復旧時の手順をメモしておく。
状態としては以下のようになっている。
$ kubectl get nodes NAME STATUS ROLES AGE VERSION host-01 Ready master 67d v1.17.1 host-02 Ready worker1 67d v1.17.1 host-03 NotReady worker2 67d v1.17.1
復旧
MasterノードでWorkerノードを削除して再登録(join)するとかのやり方が必要になるケースもあるみたいだが、今回の自分のケースでは、kubeletが停止していたので起動したら直った。
$ sudo systemctl start kubelet
しばらくしたらReadyになった。AGEも特に変わらず。
$ kubectl get nodes NAME STATUS ROLES AGE VERSION host-01 Ready master 67d v1.17.1 host-02 Ready worker1 67d v1.17.1 host-03 Ready worker2 67d v1.17.1
まとめ
kubeadmで作成したWorkerノードがNotReadyになったので、Readyに復旧させるための手順を書いた。 場合によってはWorkerノードの情報をMasterノードから削除して再度登録する、Workerノードのkubeletを再インストールする、などのやり方が必要になるケースもあるかもしれないので、状況(バージョンや環境?)に応じて確認する必要があるかもしれない。