環境を削除する

このトピックでは、環境を削除する方法について説明します。概要については、環境についてをご覧ください。

環境の削除について

環境を適切に削除するには、一部の構成を変更して、それらをクラスタに適用する必要があります。これらの変更には、オーバーライド ファイルからの環境定義の削除、synchronizerruntimeudca の各コンポーネントの削除、および削除する環境を含めずにクラスタを復元するためのオーバーライドの再適用が含まれます。

1 つのステップで環境を削除できない理由は、他の要素の synchronizerruntimeudca が内部構成を通してそれぞれの環境に接続されているためです。それらを削除して再適用するだけで環境を適切に削除できます。

環境を削除する方法

test と prod という 2 つの環境があるとします。オーバーライド ファイル内の定義は次のようになります。

    ...
    envs:
      - name: test
        sslCertPath: "your_certpath/ingress-cert.crt"
        sslKeyPath: "your_keypath/ingress-key.key"
        hostAlias: "apitest.example.com"
        serviceAccountPaths:
          synchronizer: "your_keypath/synchronizer-manager-service-account.json
          udca: "your_keypath/analytic-agent-service-account.json
      - name: prod
        sslCertPath: "your_certpath/ingress-cert.crt"
        sslKeyPath: "your_keypath/ingress-key.key"
        hostAlias: "apiprod.example.com"
        serviceAccountPaths:
          synchronizer: "your_keypath/synchronizer-manager-service-account.json
          udca: "your_keypath/analytic-agent-service-account.json
    ...

prod 環境を削除するには、次の手順を実行します。

  1. オリジナルのオーバーライド ファイル(prod 環境定義と test 環境定義の両方が格納されたファイル)を prod-delete.yaml などの新しいファイルにコピーします。
  2. prod-delete.yaml を開きます。
  3. test 環境定義を envs から削除し、prod 定義だけを残します。次に例を示します。
    ...
        envs:
          - name: prod
            sslCertPath: "your_certpath/ingress-cert.crt"
            sslKeyPath: "your_keypath/ingress-key.key"
            hostAlias: "apitest.example.com"
            serviceAccountPaths:
              synchronizer: "your_keypath/synchronizer-manager-service-account.json
              udca: "your_keypath/analytic-agent-service-account.json
  4. 存在する場合は、cassandra 構成以外のすべてを prod-delete.yaml から削除します。

    上記の変更を行うと、オーバーライド ファイルは次のようになります。

    ...
        envs:
          - name: prod
            sslCertPath: "your_certpath/ingress-cert.crt"
            sslKeyPath: "your_keypath/ingress-key.key"
            hostAlias: "apitest.example.com"
            serviceAccountPaths:
              synchronizer: "your_keypath/synchronizer-manager-service-account.json
              udca: "your_keypath/analytic-agent-service-account.json
        cassandra:
          replicaCount: 3
          resources:
            requests:
              cpu: 3500m
              memory: 7Gi
          storage:
            storageClass: pd-ssd
            capacity: 10Gi
    
          
  5. 次のコマンドを実行して、指定したコンポーネントを削除します。
    apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
  6. オリジナルのオーバーライド ファイル(test 環境定義と prod 環境定義の両方が格納されているファイル)を開きます。
  7. envs 要素から prod 環境定義を削除します。test 環境定義だけがファイル内に存在するようにします。
  8. 変更したオーバーライド ファイルをクラスタに適用します。このコマンドは、削除が行われた要素を再作成します。prod 環境は省略されているので再作成されません。
    apigeectl apply -f prod-delete.yaml -c runtime, udca, synchronizer
  9. 変更を保存します。

  10. まだ完了ではありません。ハイブリッド UI で環境を更新する必要があります。

  11. ブラウザを開いて、ハイブリッド UI にあるハイブリッド UI に移動します。
  12. ハイブリッド UI で既存の環境を削除するに記載された手順に従って環境を削除します。