壊れたノードを、修復または交換のために削除するには、クラスタから強制的に削除しなければならない場合があります。強制削除は、クラスタ管理の観点から壊れたノードのみを削除します。強制削除では、ノード自体にインストールされているコンポーネントのクリーンアップ ジョブが省略されます。ノードを復元する際、再利用できるように、bmctl reset nodes
を実行してノードにインストールされているコンポーネントをクリーンアップします。
ノードの強制削除
以下の方法は、コントロール プレーン ノードとワーカーノードの両方に適用されます。コントロール プレーン ノードの場合、ベアメタル版 Anthos クラスタのコントローラは、etcd
メンバーシップの keep 記も行います。
bmctl
の使用
bmctl
を使用すると、ノードをクラスタから削除できます。通常 bmctl reset
は、リセットジョブをトリガーして、ノードにインストールされたコンポーネントをクリーンアップしようとします。インストールされているパッケージのクリーンアップをブロックせずにノードをクラスタから削除するには、--force
フラグを指定して bmctl
コマンドを実行します。
bmctl reset nodes --addresses NODE_IP --force --kubeconfig ADMIN_KUBECONFIG --cluster CLUSTER_NAME
以下を置き換えます。
NODE_IP
: リセットするノードの IP アドレス(例:10.200.0.8
)。ADMIN_KUBECONFIG
: 管理クラスタの kubeconfig ファイルのパス。CLUSTER_NAME
: ノードを含むターゲット クラスタの名前。
kubectl
の使用
ベアメタル版 Anthos クラスタでは、ノードに強制削除対象のマークを付けるアノテーションを追加できます。
親ノードプールからノードを削除した後、次のコマンドを実行して、対応する障害が発生したマシンに baremetal.cluster.gke.io/force-remove
アノテーションを付けます。アノテーション自体の値は重要ではありません。
kubectl --kubeconfig ADMIN_KUBECONFIG -n CLUSTER_NAMESPACE \ annotate machine 10.200.0.8 baremetal.cluster.gke.io/force-remove=true
ベアメタル版 Anthos クラスタはノードを正常に削除します。