第5章 クラスター拡張機能
5.1. クラスター拡張機能の管理 リンクのコピーリンクがクリップボードにコピーされました!
Operator Lifecycle Manager (OLM) v1 はテクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
カタログがクラスターに追加されると、カタログに公開されている拡張機能と Operator のバージョン、パッチ、OTA (over-the-air) 更新にアクセスできるようになります。
カスタムリソース (CR) を使用して、CLI から拡張機能を宣言的に管理できます。
現在、Operator Lifecycle Manager (OLM) v1 は、Red Hat が提供する Operator カタログなどのプライベートレジストリーを認証できません。これは既知の問題です。その結果、Red Hat Operators カタログがインストールされていることを前提とする OLM v1 の手順は機能しません。(OCPBUGS-36364)
5.1.1. サポートされる拡張機能 リンクのコピーリンクがクリップボードにコピーされました!
現在、Operator Lifecycle Manager (OLM) v1 は、次のすべての条件を満たすクラスター拡張機能のインストールをサポートしています。
-
拡張機能は、既存の OLM で導入された
registry+v1
バンドル形式を使用する必要があります。 -
拡張機能は、
AllNamespaces
インストールモードによるインストールをサポートする必要があります。 - 拡張機能は Webhook を使用してはなりません。
拡張機能は、次に示すいずれかのファイルベースのカタログプロパティーを使用して依存関係を宣言してはなりません。
-
olm.gvk.required
-
olm.package.required
-
olm.constraint
-
OLM v1 は、インストールする拡張機能がこれらの制約を満たしているかどうかを確認します。インストールする拡張機能がこれらの制約を満たしていない場合、クラスター拡張機能の条件にエラーメッセージが出力されます。
Operator Lifecycle Manager (OLM) v1 は、既存の OLM で導入された OperatorConditions
API をサポートしていません。
拡張機能が OperatorConditions
API のみに依存して更新を管理している場合、拡張機能が正しくインストールされない可能性があります。この API に依存する拡張機能のほとんどは起動時に失敗しますが、一部は調整中に失敗する可能性があります。
回避策として、拡張機能を特定のバージョンに固定できます。拡張機能を更新する場合は、拡張機能のドキュメントを参照して、いつ拡張機能を新しいバージョンに固定すれば安全か確認してください。
5.1.2. カタログからインストールする Operator を見つける リンクのコピーリンクがクリップボードにコピーされました!
クラスターにカタログを追加した後、カタログにクエリーを実行して、インストールする Operator と拡張機能を見つけることができます。カタログをクエリーする前に、カタログサーバーサービスをポート転送する必要があります。
前提条件
- クラスターにカタログを追加している。
-
jq
CLI ツールがインストールされている。
手順
次のコマンドを実行して、
openshift-catalogd
namespace のカタログサーバーサービスのポート転送を行います。oc -n openshift-catalogd port-forward svc/catalogd-catalogserver 8080:443
$ oc -n openshift-catalogd port-forward svc/catalogd-catalogserver 8080:443
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しいターミナルウィンドウまたはタブで、次のコマンドを実行してカタログの JSON ファイルをローカルにダウンロードします。
curl -L -k https://localhost:8080/catalogs/<catalog_name>/all.json \ -C - -o /<path>/<catalog_name>.json -C - -o /<path>/<catalog_name>.json
$ curl -L -k https://localhost:8080/catalogs/<catalog_name>/all.json \ -C - -o /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.1 コマンドの例
curl -L -k https://localhost:8080/catalogs/redhat-operators/all.json \ -C - -o /home/username/catalogs/rhoc.json -C - -o /home/username/catalogs/rhoc.json
$ curl -L -k https://localhost:8080/catalogs/redhat-operators/all.json \ -C - -o /home/username/catalogs/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドのいずれかを実行して、カタログ内のオペレータと拡張機能のリストを返します。
重要現在、Operator Lifecycle Manager (OLM) v1 は、次のすべての条件を満たすクラスター拡張機能のインストールをサポートしています。
-
拡張機能は、既存の OLM で導入された
registry+v1
バンドル形式を使用する必要があります。 -
拡張機能は、
AllNamespaces
インストールモードによるインストールをサポートする必要があります。 - 拡張機能は Webhook を使用してはなりません。
拡張機能は、次に示すいずれかのファイルベースのカタログプロパティーを使用して依存関係を宣言してはなりません。
-
olm.gvk.required
-
olm.package.required
-
olm.constraint
-
OLM v1 は、インストールする拡張機能がこれらの制約を満たしているかどうかを確認します。インストールする拡張機能がこれらの制約を満たしていない場合、クラスター拡張機能の条件にエラーメッセージが出力されます。
次のコマンドを実行して、ローカルカタログファイルからすべての Operator と拡張機能のリストを取得します。
jq -s '.[] | select(.schema == "olm.package") | .name' \ /<path>/<filename>.json
$ jq -s '.[] | select(.schema == "olm.package") | .name' \ /<path>/<filename>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.2 コマンドの例
jq -s '.[] | select(.schema == "olm.package") | .name' \ /home/username/catalogs/rhoc.json
$ jq -s '.[] | select(.schema == "olm.package") | .name' \ /home/username/catalogs/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.3 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
AllNamespaces
インストールモードをサポートし、Webhook を使用しないパッケージのリストを、ローカルカタログファイルから取得します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.4 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
拡張機能は、既存の OLM で導入された
次のコマンドを実行して、Operator または拡張機能のメタデータの内容を検査します。
jq -s '.[] | select( .schema == "olm.package") | \ select( .name == "<package_name>")' /<path>/<catalog_name>.json
$ jq -s '.[] | select( .schema == "olm.package") | \ select( .name == "<package_name>")' /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.5 コマンドの例
jq -s '.[] | select( .schema == "olm.package") | \ select( .name == "openshift-pipelines-operator-rh")' \ /home/username/rhoc.json
$ jq -s '.[] | select( .schema == "olm.package") | \ select( .name == "openshift-pipelines-operator-rh")' \ /home/username/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.6 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.2.1. 一般的なカタログクエリー リンクのコピーリンクがクリップボードにコピーされました!
jq
CLI ツールを使用して、カタログをクエリーできます。
クエリー | Request |
---|---|
カタログで利用可能なパッケージ |
jq -s '.[] | select( .schema == "olm.package") | \ .name' <catalog_name>.json
|
|
|
パッケージのメタデータ |
jq -s '.[] | select( .schema == "olm.package") | \ select( .name == "<package_name>")' <catalog_name>.json
|
パッケージ内のカタログブロブ |
jq -s '.[] | select( .package == "<package_name>")' \ <catalog_name>.json
|
クエリー | Request |
---|---|
パッケージのチャネル |
jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "<package_name>") | .name' \ <catalog_name>.json
|
チャネル内のバージョン |
jq -s '.[] | select( .package == "<package_name>" ) | \ select( .schema == "olm.channel" ) | \ select( .name == "<channel_name>" ) | \ .entries | .[] | .name' <catalog_name>.json
|
|
jq -s '.[] | select( .schema == "olm.channel" ) | \ select ( .name == "<channel>") | \ select( .package == "<package_name>")' \ <catalog_name>.json
|
クエリー | Request |
---|---|
パッケージ内のバンドル |
jq -s '.[] | select( .schema == "olm.bundle" ) | \ select( .package == "<package_name>") | .name' \ <catalog_name>.json
|
|
jq -s '.[] | select( .schema == "olm.bundle" ) | \ select ( .name == "<bundle_name>") | \ select( .package == "<package_name>")' \ <catalog_name>.json
|
5.1.3. クラスター拡張機能の管理に使用するサービスアカウントの作成 リンクのコピーリンクがクリップボードにコピーされました!
既存の Operator Lifecycle Manager (OLM) とは異なり、OLM v1 にはクラスター拡張機能をインストール、更新、および管理する権限がありません。クラスター管理者は、サービスアカウントを作成し、クラスター拡張機能のインストール、更新、管理に必要なロールベースのアクセス制御 (RBAC) を割り当てる必要があります。
OLM v1 には既知の問題があります。拡張機能のサービスアカウントに適切なロールベースのアクセス制御 (RBAC) を割り当てなければ、OLM v1 が停止し、調整が停止します。
現在、OLM v1 には、拡張機能管理者がサービスアカウントの適切な RBAC を見つけるために使用できるツールはありません。
OLM v1 はテクノロジープレビュー機能であり、実稼働クラスターでは使用できないため、この問題を回避するためには、ドキュメントに含まれているより許容度の高い RBAC を使用します。
この RBAC はテスト目的に限定して使用できます。実稼働クラスターでは使用しないでください。
前提条件
-
cluster-admin
権限を持つアカウントを使用して OpenShift Container Platform クラスターにアクセスできる。
手順
次の例のように、サービスアカウントを作成します。
apiVersion: v1 kind: ServiceAccount metadata: name: <extension>-installer namespace: <namespace>
apiVersion: v1 kind: ServiceAccount metadata: name: <extension>-installer namespace: <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.7
extension-service-account.yaml
ファイルの例apiVersion: v1 kind: ServiceAccount metadata: name: pipelines-installer namespace: pipelines
apiVersion: v1 kind: ServiceAccount metadata: name: pipelines-installer namespace: pipelines
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行してサービスアカウントを適用します。
oc apply -f extension-service-account.yaml
$ oc apply -f extension-service-account.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例のように、クラスターロールを作成し、RBAC を割り当てます。
警告次のクラスターロールは、最小権限の原則に従っていません。このクラスターロールはテスト目的に限定して使用できます。実稼働クラスターでは使用しないでください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.8
pipelines-cluster-role.yaml
ファイルの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、クラスターにクラスターロールを追加します。
oc apply -f pipelines-role.yaml
$ oc apply -f pipelines-role.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例のように、クラスターロールバインディングを作成して、クラスターロールによって付与された権限をサービスアカウントにバインドします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.9
pipelines-cluster-role-binding.yaml
ファイルの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、クラスターロールバインディングを適用します。
oc apply -f pipelines-cluster-role-binding.yaml
$ oc apply -f pipelines-cluster-role-binding.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.4. カタログからのクラスター拡張のインストール リンクのコピーリンクがクリップボードにコピーされました!
カスタムリソース (CR) を作成し、それをクラスターに適用することで、カタログから拡張機能をインストールできます。Operator Lifecycle Manager (OLM) v1 は、クラスターにスコープ指定された、registry+v1
バンドル形式を介した既存の OLM Operator などの、クラスター拡張機能のインストールをサポートします。詳細は、サポートされている拡張機能 を参照してください。
現在、Operator Lifecycle Manager (OLM) v1 は、Red Hat が提供する Operator カタログなどのプライベートレジストリーを認証できません。これは既知の問題です。その結果、Red Hat Operators カタログがインストールされていることを前提とする OLM v1 の手順は機能しません。(OCPBUGS-36364)
前提条件
- クラスターにカタログを追加している。
- カタログファイルのローカルコピーをダウンロードしている。
-
jq
CLI ツールがインストールされている。 - サービスアカウントを作成し、インストールする拡張機能をインストール、更新、管理するために十分なロールベースのアクセス制御 (RBAC) を割り当てました。詳細は GCP サービスアカウントの作成 を参照してください。
手順
次の手順を実行して、カタログファイルのローカルコピーからパッケージのチャネルとバージョン情報を検査します。
次のコマンドを実行して、選択したパッケージからチャネルのリストを取得します。
jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "<package_name>") | \ .name' /<path>/<catalog_name>.json
$ jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "<package_name>") | \ .name' /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.10 コマンドの例
jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ .name' /home/username/rhoc.json
$ jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ .name' /home/username/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.11 出力例
"latest" "pipelines-1.11" "pipelines-1.12" "pipelines-1.13" "pipelines-1.14"
"latest" "pipelines-1.11" "pipelines-1.12" "pipelines-1.13" "pipelines-1.14"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、チャネルで公開されているバージョンのリストを取得します。
jq -s '.[] | select( .package == "<package_name>" ) | \ select( .schema == "olm.channel" ) | \ select( .name == "<channel_name>" ) | .entries | \ .[] | .name' /<path>/<catalog_name>.json
$ jq -s '.[] | select( .package == "<package_name>" ) | \ select( .schema == "olm.channel" ) | \ select( .name == "<channel_name>" ) | .entries | \ .[] | .name' /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.12 コマンドの例
jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) | \ select( .schema == "olm.channel" ) | select( .name == "latest" ) | \ .entries | .[] | .name' /home/username/rhoc.json
$ jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) | \ select( .schema == "olm.channel" ) | select( .name == "latest" ) | \ .entries | .[] | .name' /home/username/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.13 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
拡張機能を新しい namespace にインストールする場合は、次のコマンドを実行します。
oc adm new-project <new_namespace>
$ oc adm new-project <new_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例のような CR を作成します。
pipelines-operator.yaml
CR の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow ここでは、以下のようになります。
<namespace>
-
pipelines
やmy-extension
など、バンドルをインストールする namespace を指定します。拡張機能は継続してクラスタースコープであり、異なる namespace にインストールされているリソースが含まれる可能性があります。 <service_account>
- 拡張機能をインストール、更新、管理するために作成したサービスアカウントの名前を指定します。
<channel>
-
オプション: インストールまたは更新するパッケージのチャネル (
pipelines-1.11
、latest
など) を指定します。 <version>
オプション: インストールまたは更新するパッケージのバージョンまたはバージョン範囲 (
1.11.1
、1.12.x
、>=1.12.1
など) を指定します。詳細は、「ターゲットバージョンを指定するカスタムリソース (CR) の例」および「バージョン範囲のサポート」を参照してください。重要一意の名前を持たない Operator または拡張機能をインストールしようとすると、インストールが失敗するか、予期しない結果になる可能性があります。その原因は以下のとおりです。
- クラスターに複数のカタログがインストールされている場合、Operator Lifecycle Manager (OLM) v1 には、Operator または拡張機能のインストール時にカタログを指定するメカニズムがありません。
- OLM v1 では、クラスターにインストールできるすべての Operator および拡張機能のバンドルとパッケージに、一意の名前が使用されている必要があります。
次のコマンドを実行して、CR をクラスターに適用します。
oc apply -f pipeline-operator.yaml
$ oc apply -f pipeline-operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
clusterextension.olm.operatorframework.io/pipelines-operator created
clusterextension.olm.operatorframework.io/pipelines-operator created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、Operator または拡張機能の CR を YAML 形式で表示します。
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.14 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ここでは、以下のようになります。
spec.channel
- 拡張の CR で定義されたチャネルを表示します。
spec.version
- 拡張の CR で定義されたバージョンまたはバージョン範囲を表示します。
status.conditions
- 拡張機能のステータスと健全性に関する情報を表示します。
type: Deprecated
次の 1 つ以上が非推奨かどうかを表示します。
type: PackageDeprecated
- 解決されたパッケージが非推奨かどうかを表示します。
type: ChannelDeprecated
- 解決されたチャネルが非推奨かどうかを表示します。
type: BundleDeprecated
- 解決されたバンドルが非推奨かどうかを表示します。
status
フィールドのFalse
の値はreason: Deprecated
条件が非推奨ではないことを示します。ステータス
フィールドのTrue
の値はreason: Deprecated
条件が非推奨であることを示します。installedBundle.name
- インストールされているバンドルの名前を表示します。
installedBundle.version
- インストールされているバンドルのバージョンを表示します。
resolvedBundle.name
- 解決されたバンドルの名前を表示します。
resolvedBundle.version
- 解決されたバンドルのバージョンを表示します。
5.1.5. クラスター拡張機能の更新 リンクのコピーリンクがクリップボードにコピーされました!
カスタムリソース (CR) を手動で編集し、変更を適用することで、クラスター拡張機能または Operator を更新できます。
前提条件
- カタログがインストールされています。
- カタログファイルのローカルコピーをダウンロードしている。
- Operator または拡張機能がインストールされている。
-
jq
CLI ツールがインストールされている。
手順
次の手順を実行して、カタログファイルのローカルコピーからパッケージのチャネルとバージョン情報を検査します。
次のコマンドを実行して、選択したパッケージからチャネルのリストを取得します。
jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "<package_name>") | \ .name' /<path>/<catalog_name>.json
$ jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "<package_name>") | \ .name' /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.15 コマンドの例
jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ .name' /home/username/rhoc.json
$ jq -s '.[] | select( .schema == "olm.channel" ) | \ select( .package == "openshift-pipelines-operator-rh") | \ .name' /home/username/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.16 出力例
"latest" "pipelines-1.11" "pipelines-1.12" "pipelines-1.13" "pipelines-1.14"
"latest" "pipelines-1.11" "pipelines-1.12" "pipelines-1.13" "pipelines-1.14"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、チャネルで公開されているバージョンのリストを取得します。
jq -s '.[] | select( .package == "<package_name>" ) | \ select( .schema == "olm.channel" ) | \ select( .name == "<channel_name>" ) | .entries | \ .[] | .name' /<path>/<catalog_name>.json
$ jq -s '.[] | select( .package == "<package_name>" ) | \ select( .schema == "olm.channel" ) | \ select( .name == "<channel_name>" ) | .entries | \ .[] | .name' /<path>/<catalog_name>.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.17 コマンドの例
jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) | \ select( .schema == "olm.channel" ) | select( .name == "latest" ) | \ .entries | .[] | .name' /home/username/rhoc.json
$ jq -s '.[] | select( .package == "openshift-pipelines-operator-rh" ) | \ select( .schema == "olm.channel" ) | select( .name == "latest" ) | \ .entries | .[] | .name' /home/username/rhoc.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.18 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
次のコマンドを実行して、Operator または拡張機能の CR で指定されているバージョンまたはチャネルを確認します。
oc get clusterextension <operator_name> -o yaml
$ oc get clusterextension <operator_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドの例
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.19 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のいずれかの方法を使用して CR を編集します。
Operator または拡張機能を特定のバージョン (
1.12.1
など) に固定する場合は、次の例のように CR を編集します。pipelines-operator.yaml
CR の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- バージョンを
1.11.1
から1.12.1
に更新します。
許容可能な更新バージョンの範囲を定義する場合は、次の例のように CR を編集します。
バージョン範囲を指定した CR の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 必要なバージョン範囲が、バージョン
1.11.1
より大きく、1.13
より小さいことを指定します。詳細は、「バージョン範囲のサポート」および「バージョン比較文字列」を参照してください。
チャネルから解決できる最新バージョンに更新する場合は、次の例のように CR を編集します。
チャネルを指定した CR の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定されたチャネルから解決できる最新リリースをインストールします。チャネルへの更新は自動的にインストールされます。
チャネルとバージョンまたはバージョン範囲を指定する場合は、次の例のように CR を編集します。
チャネルとバージョン範囲を指定した CR の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、「ターゲットバージョンを指定するカスタムリソース (CR) の例」を参照してください。
次のコマンドを実行して、クラスターに更新を適用します。
oc apply -f pipelines-operator.yaml
$ oc apply -f pipelines-operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
clusterextension.olm.operatorframework.io/pipelines-operator configured
clusterextension.olm.operatorframework.io/pipelines-operator configured
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ヒント次のコマンドを実行すると、CLI から CR にパッチを適用して変更を適用できます。
oc patch clusterextension/pipelines-operator -p \ '{"spec":{"version":"<1.13"}}' \ --type=merge
$ oc patch clusterextension/pipelines-operator -p \ '{"spec":{"version":"<1.13"}}' \ --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
clusterextension.olm.operatorframework.io/pipelines-operator patched
clusterextension.olm.operatorframework.io/pipelines-operator patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、チャネルとバージョンの更新が適用されていることを確認します。
oc get clusterextension pipelines-operator -o yaml
$ oc get clusterextension pipelines-operator -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.20 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
トラブルシューティング
非推奨または存在しないターゲットバージョンまたはチャネルを指定する場合は、次のコマンドを実行して拡張機能のステータスを確認できます。
oc get clusterextension <operator_name> -o yaml
$ oc get clusterextension <operator_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.21 存在しないバージョンの出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.6. Operator の削除 リンクのコピーリンクがクリップボードにコピーされました!
ClusterExtension
カスタムリソース (CR) を削除することで、Operator とそのカスタムリソース定義 (CRD) を削除できます。
前提条件
- カタログがインストールされています。
- Operator がインストールされています。
手順
次のコマンドを実行して、Operator とその CRD を削除します。
oc delete clusterextension <operator_name>
$ oc delete clusterextension <operator_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
clusterextension.olm.operatorframework.io "<operator_name>" deleted
clusterextension.olm.operatorframework.io "<operator_name>" deleted
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、Operator とそのリソースが削除されたことを確認します。
次のコマンドを実行して、Operator が削除されたことを確認します。
oc get clusterextensions
$ oc get clusterextensions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
No resources found
No resources found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、Operator のシステム namespace が削除されたことを確認します。
oc get ns <operator_name>-system
$ oc get ns <operator_name>-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Error from server (NotFound): namespaces "<operator_name>-system" not found
Error from server (NotFound): namespaces "<operator_name>-system" not found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow