9.14. GCP でのクラスターのアンインストール

Google Cloud Platform (GCP) にデプロイしたクラスターを削除できます。

9.14.1. インストーラーでプロビジョニングされるインフラストラクチャーを使用するクラスターの削除

インストーラーでプロビジョニングされるインフラストラクチャーを使用するクラスターは、クラウドから削除できます。

注記

アンインストール後に、とくにユーザーによってプロビジョニングされるインフラストラクチャー (UPI) クラスターで適切に削除されていないリソースがあるかどうかについて、クラウドプロバイダーを確認します。インストールプログラムが作成しなかったリソース、またはインストールプログラムがアクセスできないリソースが存在する可能性があります。たとえば、一部の Google Cloud リソースには共有 VPC ホストプロジェクトで IAM パーミッション が必要になるか、削除する必要のあるヘルスチェック が使用されていない可能性があります。

前提条件

  • クラスターをデプロイするために使用したインストールプログラムのコピーがあります。
  • クラスター作成時にインストールプログラムが生成したファイルがあります。

手順

  1. クラスターのインストールに使用したコンピューターで、インストールプログラムを含むディレクトリーに移動し、次のコマンドを実行します。

    $ ./openshift-install destroy cluster \
    --dir <installation_directory> --log-level info 1 2
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。
    2
    異なる詳細情報を表示するには、 info ではなく、warndebug、または error を指定します。
    注記

    クラスターのクラスター定義ファイルが含まれるディレクトリーを指定する必要があります。クラスターを削除するには、インストールプログラムでこのディレクトリーにある metadata.json ファイルが必要になります。

  2. オプション: <installation_directory> ディレクトリーおよび OpenShift Container Platform インストールプログラムを削除します。

9.14.2. Cloud Credential Operator ユーティリティーを使用した GCP リソースの削除

GCP Workload Identity を使用し、手動モードで Cloud Credential Operator (CCO) を使用して OpenShift Container Platform クラスターをアンインストールした後にリソースをクリーンアップするには、CCO ユーティリティー (ccoctl) を使用してインストール時に ccoctl が作成した GCP リソースを削除します。

前提条件

  • ccoctl バイナリーをデプロイメントして準備します。
  • GCP Workload Identity を使用して手動モードで CCO を使用して OpenShift Container Platform クラスターをインストールします。

手順

  1. 以下のコマンドを実行して、OpenShift Container Platform リリースイメージを取得します。

    $ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}')
  2. 以下のコマンドを実行して、OpenShift Container Platform リリースイメージから CredentialsRequest カスタムリソース (CR) のリストを抽出します。

    $ oc adm release extract --credentials-requests \
      --cloud=gcp \
      --to=<path_to_directory_with_list_of_credentials_requests>/credrequests \ 1
      $RELEASE_IMAGE
    1
    credrequests は、CredentialsRequest オブジェクトのリストが格納されるディレクトリーです。ディレクトリーが存在しない場合、このコマンドはディレクトリーを作成します。
  3. ccoctl が作成した GCP リソースを削除します。

    $ ccoctl gcp delete \
      --name=<name> \ 1
      --project=<gcp_project_id> \ 2
      --credentials-requests-dir=<path_to_directory_with_list_of_credentials_requests>/credrequests
    1
    <name> は、クラウドリソースを最初に作成してタグ付けするために使用された名前と一致します。
    2
    <gcp_project_id> は、クラウドリソースを削除する GCP プロジェクト ID です。

検証

  • リソースが削除されたことを確認するには、GCP にクエリーを実行します。詳細については、GCP ドキュメントをご覧ください。