Menu Close

7.3.2. DevWorkspace Operator 依存関係の削除

CLI を使用して、Web 端末 Operator のインストール時に作成されるカスタムリソース定義 (CRD) および追加のリソースを削除します。

重要

DevWorkspace Operator はスタンドアロン Operator として機能し、クラスターにインストールされている他の Operator の依存関係として必要になる場合があります (たとえば、CodeReady Workspaces Operator はこれに依存する場合があります)。DevWorkspace Operator が不要であることが確実な場合にのみ、以下の手順に従ってください。

手順

  1. デプロイメントなどの関連する Kubernetes オブジェクトと共に Operator によって使用される DevWorkspace カスタムリソースを削除します。

    $ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
    $ oc delete devworkspaceroutings.controller.devfile.io --all-namespaces --all --wait
    警告

    この手順が完了しない場合、ファイナライザーは Operator を簡単に、かつ完全にアンインストールすることができないようにします。

  2. Operator によって使用される CRD を削除します。

    警告

    DevWorkspace Operator は変換 Webhook を使用するカスタムリソース定義(CRD)を提供します。これらの CRD を削除できないと、クラスターで問題が発生する可能性があります。

    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceroutings.controller.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaces.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspacetemplates.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceoperatorconfigs.controller.devfile.io
  3. 関連するカスタムリソース定義がすべて削除されていることを確認します。以下のコマンドは結果を表示しません。

    $ oc get customresourcedefinitions.apiextensions.k8s.io | grep "devfile.io"
  4. devworkspace-webhook-server デプロイメント、変更用および検証用の Webhook を削除します。

    $ oc delete deployment/devworkspace-webhook-server -n openshift-operators
    $ oc delete mutatingwebhookconfigurations controller.devfile.io
    $ oc delete validatingwebhookconfigurations controller.devfile.io
    注記

    変更用および検証用の Webhook を削除せずに devworkspace-webhook-server デプロイメントを削除すると、oc exec コマンドを使用してクラスターのコンテナーでコマンドを実行することはできません。Webhook を削除すると、oc exec コマンドを再び使用できるようになります。

  5. 残りのサービス、シークレット、および設定マップを削除します。インストールによっては、以下のコマンドに含まれる一部のリソースがクラスターに存在しない可能性があります。

    $ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server -n openshift-operators
    $ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
    $ oc delete configmap devworkspace-controller -n openshift-operators
    $ oc delete clusterrole devworkspace-webhook-server
    $ oc delete clusterrolebinding devworkspace-webhook-server
  6. Web コンソールを使用して Operator をアンインストールします。

    1. Web コンソールの Administrator パースペクティブで、Operators → Installed Operators に移動します。
    2. フィルター一覧をスクロールするか、または Filter by name ボックスにキーワードを入力して DevWorkspace Operator を見つけます。
    3. DevWorkspace Operator の Options メニュー kebab をクリックし、Uninstall Operator を選択します。
    4. Uninstall Operator 確認ダイアログボックスで、Uninstall をクリックし、Operator、Operator デプロイメント、および Pod をクラスターから削除します。この Operator は実行を停止し、更新を受信しなくなります。