クラスタを削除する

このページでは、ノードプール、クラスタ、AzureClient リソースを削除する方法について説明します。

ノードプールを削除する

クラスタを削除するには、まずクラスタのすべてのノードプールを削除する必要があります。

コンソール

  1. Google Cloud コンソールで、Google Kubernetes Engine クラスタの概要ページに移動します。

    GKE クラスタに移動

  2. クラスタが存在する Google Cloud プロジェクトを選択します。

  3. クラスタのリストでクラスタの名前を選択し、サイドパネルで [詳細を表示] を選択します。

  4. [ノード] タブを選択して、すべてのノードプールのリストを表示します。

  5. リストからノードプールを選択します。

  6. ウィンドウの上部にある 削除)をクリックします。

    削除に失敗した場合は、「gcloud」タブの手順に沿って、--ignore-errors フラグを追加して gcloud container azure node-pools delete コマンドを実行します。

gcloud

  1. ノードプールのリストを取得します。

    gcloud container azure node-pools list \
      --cluster CLUSTER_NAME \
      --location GOOGLE_CLOUD_LOCATION
    

    次のように置き換えます。

    • CLUSTER_NAME: ノードプールが接続されているクラスタの名前
    • GOOGLE_CLOUD_LOCATION: ノードプールをホストしている Google Cloud のロケーション
  2. ノードプールごとに、次のコマンドで削除します。

    gcloud container azure node-pools delete NODE_POOL_NAME \
      --cluster CLUSTER_NAME \
      --location GOOGLE_CLOUD_LOCATION
    

    次のように置き換えます。

    • NODE_POOL_NAME: 削除するノードプールの名前
    • CLUSTER_NAME
    • GOOGLE_CLOUD_LOCATION

    コマンドがエラーを返して削除に失敗した場合は、--ignore-errors フラグを指定してコマンドを再度実行することで、強制的に削除できます。このフラグはバージョン 1.29 以降で使用できます。

ノードプールの削除中に GKE on Azure がワークロードを保護する仕組み

ノードプールの削除中、GKE on Azure は、PodDisruptionBudget を使用せずに各ノードでグレースフル シャットダウンを実行します。ここでは次の処理を実行します。

  1. クラスタ オートスケーラーが有効になっている場合は無効にします。
  2. ドレイン プロセスの期限を設定します。この期限をすぎると、Pod オブジェクトがまだ存在していても、GKE on Azure はドレインを停止し、基盤となる仮想マシンの削除に進みます。デフォルトの期限は 5 分です。10 個のノードごとに 5 分が追加されます。
  3. ノードプール内のすべてのノードを閉鎖します。
  4. 期限が切れる前に、ノードプール内の Pod オブジェクトをできる限り削除します。
  5. 基盤となるコンピューティング リソースをすべて削除します。

クラスタを削除

クラスタを削除する前に、そのノードプールがすべて削除されていることを確認してください。

コンソール

  1. Google Cloud コンソールで、Google Kubernetes Engine クラスタの概要ページに移動します。

    GKE クラスタに移動

  2. クラスタが存在する Google Cloud プロジェクトを選択します。

  3. クラスタのリストでクラスタの名前を選択し、サイドパネルで [詳細を表示] を選択します。

  4. ウィンドウの上部にある 削除)をクリックします。

    削除に失敗した場合は、「gcloud」タブの手順に沿って、--ignore-errors フラグを追加して gcloud container azure clusters delete コマンドを実行します。

gcloud

クラスタを削除するには、次のコマンドを実行します。

gcloud container azure clusters delete CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION

次のように置き換えます。

  • CLUSTER_NAME: 削除するクラスタの名前
  • GOOGLE_CLOUD_LOCATION: このクラスタをホストする Google Cloud のロケーション

    コマンドがエラーを返して削除に失敗した場合は、--ignore-errors フラグを指定してコマンドを再度実行することで、強制的に削除できます。このフラグはバージョン 1.29 以降で使用できます。

AzureClient リソースを削除する

次の場合は AzureClient を削除する必要があります。

  • すべての GKE on Azure を削除したため、AzureClient が必要ない。
  • クラスタ認証を AzureClient からWorkload Identity 連携にを更新した。

AzureClient を削除する前に、AzureClient を使用するすべてのクラスタを削除する必要があります。

AzureClient リソースを削除するには、次のコマンドを実行します。

gcloud container azure clients delete CLIENT_NAME \
    --location=GOOGLE_CLOUD_LOCATION

次のように置き換えます。

  • CLIENT_NAME: 削除する AzureClient の名前
  • GOOGLE_CLOUD_LOCATION: クライアントが配置されている Google Cloud のロケーション

AzureClient リソースを削除したら、Azure AD でクライアントの作成時にアップロードした証明書を削除します。

次のステップ