機械翻訳について

3 Operator Lifecycle Managerの使用

重要:

このドキュメントで説明されているソフトウェアは、Extended SupportまたはSustaining Supportにあります。 詳細は、「Oracleオープン・ソース・サポート・ポリシー」を参照してください。

このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお勧めします。

この項では、Operator Lifecycle Managerを使用できることを確認するための基本的なテストについて説明します。

オペレータ登録の一覧表示

コントロール・プレーン・ノードでkubectlコマンドを使用して、使用可能なオペレータ・レジストリを表示できます:

kubectl get catalogsource --namespace operator-lifecycle-manager

出力は次のようになります:

NAME                    DISPLAY               TYPE   PUBLISHER        AGE
operatorhubio-catalog   Community Operators   grpc   OperatorHub.io   3m35s

OperatorHubレジストリが出力に表示されます。 これはデフォルトのオペレータ・レジストリです。

オペレータのインストール

インストール可能なすべてのオペレータを表示するには、コントロール・プレーン・ノードでkubectlコマンドを使用します:

kubectl get packagemanifest

OperatorHubで使用可能なオペレータのリストが表示されます。 これらはすべて、Operator Lifecycle Managerによってインストールできます。 次の例は、OperatorHubからプルされるオペレータを作成する方法を示しています。

オペレータを作成するには:

  1. webブラウザで、OperatorHubに移動し、インストールするオペレータの名前を検索します。 OperatorHubは次の場所にあります:

    https://operatorhub.io/

    この例では、次の場所にあるcert-managerオペレータを使用します:

    https://operatorhub.io/operator/cert-manager

    「Install」をクリックします。

    オペレータをデプロイするkubectl createコマンドを示すダイアログが表示されます。 たとえば:

    kubectl create -f https://operatorhub.io/install/cert-manager.yaml

    オペレータ・マニフェストYAMLファイルを含むこのコマンドのURLをコピーします。

  2. コントロール・プレーン・ノードで、OperatorHubからcert-managerオペレータ・マニフェストYAMLファイルをダウンロードします:

    curl --remote-name https://operatorhub.io/install/cert-manager.yaml
  3. 必要に応じて、このマニフェストYAMLファイルを編集します。

    重要:

    オペレータがSubscriptionセクションに次の行を含む場合:

    sourceNamespace: olm

    これを次のように変更します:

    sourceNamespace: operator-lifecycle-manager

    Operator Lifecycle Managerは、アップストリーム・ネームスペースとは異なるoperator-lifecycle-managerネームスペースで実行されます。

    ファイルを編集して、sourceNamespaceoperator-lifecycle-managerに変更します。

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: my-cert-manager
      namespace: operators
    spec:
      channel: stable
      name: cert-manager
      source: operatorhubio-catalog
      sourceNamespace: operator-lifecycle-manager
  4. kubectl applyコマンドを使用して、cert-managerオペレータをデプロイします。

    kubectl apply -f cert-manager.yaml

    出力は次のようになります:

    subscription.operators.coreos.com/my-cert-manager created

    オペレータは、オペレータ・マニフェスト・ファイルに設定されたネームスペースにデプロイされます。この例では、operatorsです。

  5. オペレータClusterServiceVersion情報は、次を使用して表示できます:

    kubectl get csv --namespace operators

    出力は次のようになります:

    NAME                   DISPLAY        VERSION   REPLACES               PHASE
    cert-manager.v1.12.2   cert-manager   1.12.2    cert-manager.v1.11.4   Succeeded
  6. オペレータのデプロイメントは、次を使用して確認できます:

    kubectl get deployments --namespace operators

    出力は次のようになります:

    NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
    cert-manager              1/1     1            1           6m
    cert-manager-cainjector   1/1     1            1           6m
    cert-manager-webhook      1/1     1            1           6m

オペレータの削除

オペレータを削除してアンインストールするには、SubscriptionおよびClusterServiceVersionリソースを削除する必要があります。

このドキュメントの例にはSubscriptionリソースは含まれていませんが、削除するオペレータにSubscriptionリソースが含まれている場合は、次を使用して削除します:

kubectl delete subscription subscription-name --namespace namespace

また、次を使用してKubernetes ClusterServiceVersionリソースを削除する必要があります:

kubectl delete csv csv-name --namespace namespace

cert-managerオペレータのClusterServiceVersionを削除するには、コントロール・プレーン・ノードで次を実行します:

kubectl delete csv --namespace operators cert-manager.v1.12.2 

出力は次のようになります:

clusterserviceversion.operators.coreos.com "cert-manager.v1.12.2" deleted