このページでは、Google Distributed Cloud 管理クラスタを削除する方法について説明します。
始める前に
管理クラスタを削除する前に、次の手順を行います。
- ユーザー クラスタを削除します。ユーザー クラスタの削除をご覧ください。
- 管理クラスタから PodDisruptionBudgets を使用するワークロードをすべて削除します。
- 管理クラスタから PersistentVolumes などの外部オブジェクトをすべて削除します。
削除する管理クラスタの kubeconfig を指す、
KUBECONFIG
環境変数を設定します。export KUBECONFIG=ADMIN_CLUSTER_KUBECONFIG
ここで、
ADMIN_CLUSTER_KUBECONFIG
は管理クラスタの kubeconfig ファイルのパスです。
管理クラスタの登録解除
管理クラスタが GKE On-Prem API に登録されている場合は、まず API から登録解除する必要があります。管理クラスタが API に登録されるのは、クラスタを明示的に登録した場合だけはありません。GKE On-Prem クライアントを使用してユーザー クラスタをアップグレードした場合にも登録されます。
プロジェクト内のすべての登録済み管理クラスタ一覧表示します。
gcloud container vmware admin-clusters list \ --project=PROJECT_ID \ --location=-
PROJECT_ID
は、フリート ホスト プロジェクトの ID に置き換えます。このコマンドは、プロジェクトの GKE On-Prem API に登録されている各管理クラスタの名前と、Google Cloud リージョンを出力します。
--location=-
に設定すると、すべてのリージョンのクラスタがすべて一覧表示されます。リストを絞り込む必要がある場合は、クラスタの登録時に指定したリージョンを--location
に設定します。GKE On-Prem API からラスタの登録を解除します。
gcloud container vmware admin-clusters unenroll ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=REGION
次のように置き換えます。
ADMIN_CLUSTER_NAME
: 管理クラスタの名前。PROJECT_ID
: フリート ホスト プロジェクトの ID。REGION
: Google Cloud リージョン。
このコマンドは、Google Cloud から GKE On-Prem API リソースを削除します。
管理クラスタの登録解除
管理クラスタを作成する場合は、クラスタを Google Cloud フリートに登録します。次のコマンドを実行して、フリート メンバーシップを削除します。これにより、クラスタの登録が解除されます。
gcloud container fleet memberships delete ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=global
このコマンドは、Google Cloud からフリート メンバーシップ リソースを削除します。
Logging と Monitoring の削除
StatefulSet からデプロイされた Google Distributed Cloud の Logging および Monitoring Pod は、ノードの適切なドレインを妨げる PDB を使用します。管理クラスタを適切に削除するには、こうした Pod を削除する必要があります。
Logging および Monitoring Pod を削除するには、次のコマンドを実行します。
kubectl delete monitoring --all -n kube-system kubectl delete stackdriver --all -n kube-system
Monitoring を削除すると、StatefulSet に関連付けられた PersistentVolume(PV)が消去されますが、Stackdriver の PersistentVolume は個別に削除する必要があります。
Stackdriver PV の削除はオプションです。PV を削除しない場合は、関連付けられた PV の場所と名前をユーザー クラスタ外の場所に記録します。
Persistent Volume Claim(PVC)を削除すると、PV も削除されます。
Stackdriver PVC を見つけるには、次のコマンドを実行します。
kubectl get pvc -n kube-system
PVC を削除するには、次のコマンドを実行します。
kubectl delete pvc -n kube-system PVC_NAME
Logging と Monitoring の削除の確認
Logging と Monitoring が削除されたことを確認するには、次のコマンドを実行します。
kubectl get pvc -n kube-system kubectl get statefulsets -n kube-system
管理クラスタの F5 パーティションのクリーンアップ
管理クラスタから gke-system
Namespace を削除すると、F5 パーティションが適切にクリーンアップされ、パーティションを別の管理クラスタに再利用できます。
gke-system
Namespace を削除するには次のコマンドを実行します。
kubectl delete ns gke-system
次に、LoadBalancer タイプの残りの Service をすべて削除します。すべての Service を一覧表示するには、次のコマンドを実行します。
kubectl get services --all-namespaces
LoadBalancer タイプの Service ごとに、次のコマンドを実行して削除します。
kubectl delete service SERVICE_NAME -n SERVICE_NAMESPACE
次に、F5 BIG-IP コンソールから次の手順を実行します。
- コンソールの右上で、パーティションに切り替えてクリーンアップします。
- [Local Traffic] > [Virtual Servers] > [Virtual Server List] の順に選択します。
- [Virtual Servers] メニューで、すべての仮想 IP を削除します。
- [Pools] を選択し、すべてのプールを削除します。
- [Nodes] を選択し、すべてのノードを削除します。
F5 パーティションがクリーンであることを確認する
CLI
次のコマンドを実行して、VIP が停止していることを確認します。
ping -c 1 -W 1 F5_LOAD_BALANCER_IP; echo $?
VIP が停止している場合は 1
が返されます。
F5 UI
F5 ユーザー インターフェースからパーティションがクリーンアップされたことを確認するには、次の手順を行います。
- 右上の [Partition] プルダウン メニューをクリックします。管理クラスタのパーティションを選択します。
- 左側の [Main] メニューから [Local Traffic] > [Network Map] を選択します。Local Traffic Network Map の下には何も表示されません。
- [Local Traffic] > [Virtual Servers] > [Nodes] の順にクリックし、[Nodes List] を選択します。ここにも何も表示されません。
エントリが残っている場合は、UI から手動で削除します。
管理ノードマシンの電源の切断
電源を切る前に、次のコマンドを実行してマシンの名前を取得します。
kubectl get machines -o wide
出力には、マシンの名前が列挙されます。これは vSphere UI で確認できます。
管理コントロール プレーンのノードマシンを削除するには、vSphere リソースプール内の残りの管理 VM の電源を切る必要があります。
vSphere UI
次の操作を行います。
- vSphere のメニューの vSphere リソースプールから VM を選択します。
- VM メニューの上部にある [Actions] をクリックします。
- [Power] > [Power Off] を選択します。VM の電源がオフになるまで数分かかることがあります。
管理ノードマシンの削除
VM の電源が切れたら、VM を削除できます。
vSphere UI
次の操作を行います。
- vSphere のメニューの vSphere リソースプールから VM を選択します。
- VM メニューの上部にある [Actions] をクリックします。
- [Delete from Disk] をクリックします。
データディスクの削除
データディスクは、VM を削除した後に削除できます。高可用性(HA)管理クラスタと非 HA 管理クラスタのどちらが存在するかによって、手順が少し異なります。
vSphere UI で次の操作を行います。
非 HA
- vSphere のメニューから、管理クラスタ構成ファイルの
vCenter.dataDisk
フィールドで指定されているように、データストアからデータディスクを選択します。 - データストア メニューで [Delete] をクリックします。
HA
3 つの管理コントロール プレーン マシンのデータディスク パスが、/anthos/ADMIN_CLUSTER/default/
の下に自動生成されます。次に例を示します。
/anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-0-data.vmdk /anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-1-data.vmdk /anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-2-data.vmdk
各データディスクを削除する手順は次のとおりです。
- vSphere メニューのデータストアからデータディスクを選択します。
- データストア メニューで [Delete] をクリックします。
checkpoint.yaml
ファイルの削除
HA 管理クラスタを削除する場合、HA 管理クラスタはチェックポイント ファイルをサポートしていないため、この手順をスキップします。
DATA_DISK_NAME-checkpoint.yaml ファイル(DATA_DISK_NAME はデータディスクの名前)は、データディスクと同じフォルダにあります。このファイルを削除します。
完了後
管理クラスタの削除が完了したら、その kubeconfig を削除します。