4.11. カタログソース Pod のスケジューリング
ソースタイプ grpc
の Operator Lifecycle Manager (OLM) カタログソースが spec.image
を定義すると、Catalog Operator は、定義されたイメージコンテンツを提供する Pod を作成します。デフォルトでは、この Pod は、その仕様で以下を定義します。
-
kubernetes.io/os=linux
ノードセレクターのみ -
デフォルトの優先クラス名:
system-cluster-critical
。 - toleration なし
管理者は、CatalogSource
オブジェクトのオプションの spec.grpcPodConfig
セクションのフィールドを変更すると、これらの値をオーバーライドできます。
Marketplace Operator の openshift-marketplace
は、デフォルトの OperatorHub
カスタムリソース (CR) を管理します。この CR は CatalogSource
オブジェクトを管理します。ユーザーが CatalogSource
オブジェクトの spec.grpcPodConfig
セクションのフィールドを変更しようとすると、Marketplace Operator によってその変更が自動的に元に戻されます。デフォルトでは、CatalogSource
オブジェクトの spec.grpcPodConfig
セクションのフィールドを変更すると、Marketplace Operator によってその変更が自動的に元に戻されます。
CatalogSource
オブジェクトに永続的な変更を適用するには、まずデフォルトの CatalogSource
オブジェクトを無効にする必要があります。
4.11.1. ローカルレベルでのデフォルト CatalogSource オブジェクトの無効化 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトの CatalogSource
オブジェクトを無効にすることで、カタログソース Pod などの永続的な変更をローカルレベルで CatalogSource
オブジェクトに適用できます。デフォルトの CatalogSource
オブジェクトの設定が組織のニーズを満たさない場合は、デフォルト設定を検討してください。デフォルトでは、CatalogSource
オブジェクトの spec.grpcPodConfig
セクションのフィールドを変更すると、Marketplace Operator によってその変更が自動的に元に戻されます。
Marketplace Operator の openshift-marketplace
は、OperatorHub
のデフォルトのカスタムリソース (CR) を管理します。OperatorHub
は CatalogSource
オブジェクトを管理します。
CatalogSource
オブジェクトに永続的な変更を適用するには、まずデフォルトの CatalogSource
オブジェクトを無効にする必要があります。
手順
すべてのデフォルトの
CatalogSource
オブジェクトをローカルレベルで無効にするには、次のコマンドを入力します。oc patch operatorhub cluster -p '{"spec": {"disableAllDefaultSources": true}}' --type=merge
$ oc patch operatorhub cluster -p '{"spec": {"disableAllDefaultSources": true}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記また、デフォルトの
OperatorHub
CR を設定して、すべてのCatalogSource
オブジェクトを無効にするか、または特定のオブジェクトを無効にすることもできます。
4.11.2. カタログソース Pod のノードセレクターのオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
spec.image
を持つソースタイプgrpc
のCatalogSource
オブジェクトが定義されている。
手順
CatalogSource
オブジェクトを編集し、spec.grpcPodConfig
セクションを追加または変更して、以下を含めます。grpcPodConfig: nodeSelector: custom_label: <label>
grpcPodConfig: nodeSelector: custom_label: <label>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <label>
は、カタログソース Pod がスケジュールに使用するノードセレクターのラベルです。
4.11.3. カタログソース Pod の優先度クラス名のオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
spec.image
を持つソースタイプgrpc
のCatalogSource
オブジェクトが定義されている。
手順
CatalogSource
オブジェクトを編集し、spec.grpcPodConfig
セクションを追加または変更して、以下を含めます。grpcPodConfig: priorityClassName: <priority_class>
grpcPodConfig: priorityClassName: <priority_class>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <priority_class>
は次のいずれかです。-
Kubernetes によって提供されるデフォルトの優先度クラスの 1 つ:
system-cluster-critical
またはsystem-node-critical
-
デフォルトの優先度を割り当てる空のセット (
""
) - 既存およびカスタム定義の優先度クラス
-
Kubernetes によって提供されるデフォルトの優先度クラスの 1 つ:
以前は、オーバーライドできる唯一の Pod スケジューリングパラメーターは priorityClassName
でした。これは、operatorframework.io/priorityclass
アノテーションを CatalogSource
オブジェクトに追加することによって行われました。以下に例を示します。
CatalogSource
オブジェクトがアノテーションと spec.grpcPodConfig.priorityClassName
の両方を定義する場合、アノテーションは設定パラメーターよりも優先されます。
4.11.4. カタログソース Pod の Toleration のオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
spec.image
を持つソースタイプgrpc
のCatalogSource
オブジェクトが定義されている。
手順
CatalogSource
オブジェクトを編集し、spec.grpcPodConfig
セクションを追加または変更して、以下を含めます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow