Amazon EKS
ユーザーガイド

クラスターの削除

Amazon EKS クラスターの使用が終了したら、関連付けられたリソースを削除して、不要なコストが発生しないようにする必要があります。

重要

クラスター内にロードバランサーに関連付けられているアクティブなサービスがある場合は、クラスターを削除する前にこれらのサービスを削除して、ロードバランサーが正しく削除されるようにする必要があります。この操作を行わないと、VPC 内のリソースが孤立し、VPC を削除できなくなる可能性があります。

以下から優先するクラスター削除方法に対応するタブを選択します。

eksctlAWS マネジメントコンソールAWS CLI
eksctl

eksctl を使用してワーカーノードが関連付けられた Amazon EKS クラスターを削除するには

この手順では、eksctl をインストール済みで、お使いの eksctl バージョンが 0.1.37 以上であることを前提としています。 お使いのバージョンは、以下のコマンドを使用して確認できます。

eksctl version

eksctl のインストールまたはアップグレードの詳細については、eksctl のインストールまたはアップグレード を参照してください。

注記

この手順は、eksctl で作成されたクラスターに対してのみ機能します。

  1. クラスターで実行されているすべてのサービスを一覧表示します。

    kubectl get svc --all-namespaces
  2. 関連付けられた EXTERNAL-IP 値のあるサービスすべてを削除します。これらのサービスの前面には、Elastic Load Balancing ロードバランサーがあるため、Kubernetes でそれらを削除して、ロードバランサーおよび関連するリソースが適切に解放されるようにする必要があります。

    kubectl delete svc service-name
  3. 以下のコマンドを使用して、クラスターとその関連付けられたワーカーノードを削除します。赤いテキストは実際のクラスター名に置き換えてください。

    eksctl delete cluster --name prod

    出力:

    [ℹ] using region us-west-2 [ℹ] deleting EKS cluster "prod" [ℹ] will delete stack "eksctl-prod-nodegroup-standard-workers" [ℹ] waiting for stack "eksctl-prod-nodegroup-standard-workers" to get deleted [ℹ] will delete stack "eksctl-prod-cluster" [✔] the following EKS cluster resource(s) for "prod" will be deleted: cluster. If in doubt, check CloudFormation console
AWS マネジメントコンソール

AWS マネジメントコンソール を使用して Amazon EKS クラスターを削除するには

  1. クラスターで実行されているすべてのサービスを一覧表示します。

    kubectl get svc --all-namespaces
  2. 関連付けられた EXTERNAL-IP 値のあるサービスすべてを削除します。これらのサービスの前面には、Elastic Load Balancing ロードバランサーがあるため、Kubernetes でそれらを削除して、ロードバランサーおよび関連するリソースが適切に解放されるようにする必要があります。

    kubectl delete svc service-name
  3. ワーカーノード AWS CloudFormation スタックを削除します。

    1. https://console.aws.amazon.com/cloudformation で AWS CloudFormation コンソールを開きます。

    2. 削除するワーカーノードスタックを選択して、[アクション]、[スタックの削除] を選択します。

    3. [Delete Stack (スタックの削除)] 確認画面で、[Yes, Delete (はい、削除します)] を選択します。

  4. クラスターを削除します。

    1. Open the Amazon EKS console at https://console.aws.amazon.com/eks/home#/clusters.

    2. 削除するクラスターを選択し、[Delete (削除)] を選択します。

    3. クラスターの削除確認画面で、[Delete (削除)] を選択します。

  5. (オプション) VPC AWS CloudFormation スタックを削除します。

    1. 削除する VPC スタックを選択し、[アクション]、[スタックの削除] を順に選択します。

    2. [Delete Stack (スタックの削除)] 確認画面で、[Yes, Delete (はい、削除します)] を選択します。

AWS CLI

AWS CLI を使用して Amazon EKS クラスターを削除するには

  1. クラスターで実行されているすべてのサービスを一覧表示します。

    kubectl get svc --all-namespaces
  2. 関連付けられた EXTERNAL-IP 値のあるサービスすべてを削除します。これらのサービスの前面には、Elastic Load Balancing ロードバランサーがあるため、Kubernetes でそれらを削除して、ロードバランサーおよび関連するリソースが適切に解放されるようにする必要があります。

    kubectl delete svc service-name
  3. ワーカーノード AWS CloudFormation スタックを削除します。

    1. 以下のコマンドで、使用可能な AWS CloudFormation スタックを一覧表示します。結果の出力でワーカーノードテンプレート名を見つけます。

      aws cloudformation list-stacks --query StackSummaries[].StackName
    2. 以下のコマンドを使用して、ワーカーノードスタックを削除します。赤いテキストは実際のワーカーノードスタック名に置き換えてください。

      aws cloudformation delete-stack --stack-name worker-node-stack
  4. 以下のコマンドを使用して、クラスターを削除します。赤いテキストは実際のクラスター名に置き換えてください。

    aws eks delete-cluster --name my-cluster
  5. (オプション) VPC AWS CloudFormation スタックを削除します。

    1. 以下のコマンドで、使用可能な AWS CloudFormation スタックを一覧表示します。結果の出力で VPC テンプレート名を見つけます。

      aws cloudformation list-stacks --query StackSummaries[].StackName
    2. 以下のコマンドを使用して、VPC スタックを削除します。赤いテキストは実際の VPC スタック名に置き換えてください。

      aws cloudformation delete-stack --stack-name my-vpc-stack