kubeadm で構築した Kubernetes クラスタを初期化する手順です。ただし、kubeadm reset はサーバーを完全に初期状態へ戻すコマンドではありません。再構築や検証のやり直しで使う操作として、何が戻り、何が残るのかを切り分けて扱います。
この記事の位置づけ
この記事は、kubeadm で構築したクラスタを作り直す場合の初期化手順を扱います。目的は、reset を万能な掃除コマンドとして使うことではなく、クラスタ再構築の入口として必要な状態を確認することです。
参考書籍
書籍
Kubernetes の仕組み、リソース、ネットワーク、運用観点を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
実行前に決めること
本番に近い環境では、reset を実行する前に、そのノードを再参加させるのか、クラスタから完全に外すのか、クリーンインストールへ進むのかを決めておきます。特に control plane ノードでは、etcd、証明書、kubeconfig、CNI、ロードバランサー側の向き先が関係するため、単独のコマンドだけで判断しない方が安全です。
- クラスタを残したままノードだけ外すのかを確認する
- 作業対象が control plane か worker node かを分ける
- CNI、iptables / nftables、コンテナランタイム側に残る状態を想定する
- 再参加させる場合は join 用の token、証明書、controlPlaneEndpoint を確認する
kubeadm reset の位置づけ
kubeadm reset は kubeadm が作成したクラスタ設定を初期化するためのコマンドです。ただし、CNI 設定、iptables / nftables、コンテナランタイム、kubeconfig、ホスト側に残したファイルまで完全に戻すわけではありません。
Control plane 側の作業
kubectl drain <worker-node> --ignore-daemonsets --delete-emptydir-data --force
kubectl delete node <worker-node>
sudo kubeadm resetWorker node 側の作業
sudo kubeadm reset
sudo rm -rf /etc/cni/net.d
sudo rm -rf $HOME/.kube残ることがある設定
- CNI 設定ファイル。
- iptables / nftables のルール。
- コンテナランタイム上のコンテナやイメージ。
- kubeconfig。
- ホスト側に作成した証明書や manifest。
確認
sudo crictl ps -a
sudo iptables -S | head
ip addr
ls -la /etc/kubernetesまとめ
kubeadm reset は便利ですが、クラスタに関係するすべての OS 設定を完全に巻き戻すわけではありません。作り直し前提なら、CNI、iptables、kubeconfig、ランタイムの状態も合わせて確認します。
関連する記事
- Kubernetes クラスター構築 – kubeadm で controlPlaneEndpoint と CNI を確認する
reset 後に再構築する場合の kubeadm クラスタ構築の前提を確認しています。 - Kubernetes コントロールプレーンノードを追加できない場合 – kubeadm-certs を再生成する
control-plane を再参加させる場合に確認したい証明書と join の補助記事です。 - Kubernetes kubeconfig の管理 – 複数クラスタと context を確認する
再構築や再参加後に kubeconfig と context を確認するための記事です。 - Kubernetes 運用設計ガイド
Kubernetes 関連記事全体の入口です。
次に進む
- Kubernetes クラスター構築 – kubeadm で controlPlaneEndpoint と CNI を確認する
reset 後にクラスタを再構築する場合の設計へ戻ります。 - Kubernetes コントロールプレーンノードを追加できない場合 – kubeadm-certs を再生成する
control-plane 追加時の証明書問題を切り分けます。

