5.7.6. デフォルトのノードセレクターを使用して推奨される namespace を設定する
一部の Operator は、コントロールプレーンノードでのみ実行することを想定しています。これは、Operator 自体が Pod 仕様で nodeSelector を設定することによって実行できます。
クラスター全体のデフォルト nodeSelector が重複して競合する可能性を回避するために、Operator が実行される namespace にデフォルトのノードセレクターを設定できます。デフォルトのノードセレクターはクラスターのデフォルトよりも優先されるため、クラスターのデフォルトは Operator の namespace 内の Pod には適用されません。
OperatorHub を使用して Operator をクラスターに追加する場合、Web コンソールはインストールプロセス時にクラスター管理者に提案される namespace を自動設定します。推奨される namespace は、クラスターサービスバージョン (CSV) に含まれる YAML の namespace マニフェストを使用して作成されます。
手順
CSV で、
namespaceオブジェクトのマニフェストを使用してoperatorframework.io/suggested-namespace-templateを設定します。次のサンプルは、namespace のデフォルトのノードセレクターが指定されたNamespaceの例のマニフェストです。metadata: annotations: operatorframework.io/suggested-namespace-template:1 { "apiVersion": "v1", "kind": "Namespace", "metadata": { "name": "vertical-pod-autoscaler-suggested-template", "annotations": { "openshift.io/node-selector": "" } } }- 1
- 提案された namespace を設定します。注記
suggested-namespaceおよびsuggested-namespace-templateアノテーションの両方が CSV にある場合、suggested-namespace-templateが優先されます。