すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:Terraformによって作成されたACKクラスターの削除

最終更新日:Nov 20, 2024

このトピックでは、Terraformで作成されたContainer Service for Kubernetes (ACK) クラスターを削除する方法と、必要なリソースを保持するためのオプションについて説明します。

前提条件

Terraformで次のいずれかのクラスターが作成されました。

使用上の注意

Terraformでクラスターを削除する場合、必要に応じてreturn_resourcesを使用してリソースを保持できます。また、delete_optionsを設定してリソースの削除と保持を管理することもできます。

カテゴリ

delete_options

retent_resources

方法

特定のリソースを保持するか削除するかを指定します。

保持するリソースを指定します。

例:

delete_options {
 delete_mode = "delete"
 resource_type = "SLS_ControlPlane"
 }
説明

delete_modeを次の値に設定できます。

  • delete: 指定されたリソースタイプを削除します。

  • return: 指定されたリソースタイプを保持します。

例:

retain_resources = ["ngw-xxxx"]

リソースインスタンスIDをreturn_resourcesパラメーターに入力します。 インスタンスIDを取得するには、指定されたクラスターの関連リソースを照会します

サポートされるリソース

  • SLB: サービス用に作成されたServer Load Balancer (SLB) リソース。 デフォルトでは、SLBリソースは自動的に削除されます。

  • ALB: ALB Ingressコントローラーによって作成されたApplication Load Balancer (ALB) リソース。 デフォルトでは、ALBリソースは保持されます。

  • SLS_Data: クラスターロギング機能で使用されるシンプルなLog Serviceプロジェクト。 デフォルトでは、Simple Log Serviceプロジェクトは保持されます。

  • SLS_ControlPlane: 制御プレーンのログをACK管理クラスターに保存するために使用されるシンプルなLog Serviceプロジェクト。 デフォルトでは、Simple Log Serviceプロジェクトは保持されます。

  • PrivateZone: ACKサーバーレスクラスターによって作成されたPrivateZoneリソース。 デフォルトでは、PrivateZoneリソースは保持されます。

  • ロードバランサー (クラスタAPIサーバのSLBインスタンス)

  • インターネットNATゲートウェイ

  • インターネットNATゲートウェイのSNATエントリ

  • Elastic IPアドレス (インターネットNATゲートウェイ)

サポートされているクラスタータイプ

  • ACK管理クラスター

  • ACK専用クラスター

  • ACKサーバーレスクラスター

  • ACK管理クラスター

  • ACKサーバーレスクラスター

  • ACK専用クラスター

  • ACKエッジクラスター

手順1: リソースの追加管理パラメーター

リソースの削除または保持を制御するために、ACKクラスターに作成されたmain.tfファイルに次のパラメーターを追加します。

resource "alicloud_cs_managed_kubernetes" "default" {    # Add location.
  ...
  // Add the resource instance ID to [].
  retain_resources = ["ngw-xxxx"]
  // Delete SLB resources created by the cluster.
  delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
  }
  // Delete ALB resources created by the ALB Ingress Controller.
  delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
  }
  // Delete the Simple Log Service projects used by the cluster logging feature.
  delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
  }
  // Delete the Simple Log Service projects used by the managed cluster control plane.
  delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
  }
}

次のコマンドを実行して変更を適用します。

terraform apply

手順2: クラスターの削除

Terraformが作成したクラスターを削除するには、次の手順を実行します。

重要

terraform destroyコマンドは、Terraformによって管理されているすべてのリソースを削除します。 先に進む前に、重要なデータとリソースをバックアップすることが重要です。

  1. 次のコマンドを実行して、Terraformが作成したクラスターを削除します。

    terraform destroy
  2. 次の情報が返される場合は、yesと入力し、Enterキーを押します。 その後、クラスターは削除されます。

    ...
    Do you really want to destroy all resources?
      Terraform will destroy all your managed infrastructure, as shown above.
      There is no undo. Only 'yes' will be accepted to confirm.
    
      Enter a value: yes
    ...
    Destroy complete! Resources: 7 destroyed.