1.7.2. コントロールプレーンのテンプレートの作成
ServiceMeshControlPlane
テンプレートを使用すると、再利用可能な設定を作成することができます。各ユーザーは、作成するテンプレートを独自の設定で拡張することができます。テンプレートは、他のテンプレートから設定情報を継承することもできます。たとえば、会計チーム用の会計コントロールプレーンとマーケティングチーム用のマーケティングコントロールプレーンを作成できます。開発プロファイルと実稼働テンプレートを作成する場合、マーケティングチームおよび会計チームのメンバーは、チーム固有のカスタマイズで開発および実稼働テンプレートを拡張することができます。
ServiceMeshControlPlane
と同じ構文に従うコントロールプレーンのテンプレートを設定する場合、ユーザーは階層的に設定を継承します。Operator は、Red Hat OpenShift Service Mesh のデフォルト設定を使用する default
テンプレートと共に提供されます。カスタムテンプレートを追加するには、openshift-operators
プロジェクトで smcp-templates
という名前の ConfigMap を作成し、/usr/local/share/istio-operator/templates
で Operator コンテナーに ConfigMap をマウントする必要があります。
1.7.2.1. ConfigMap の作成
以下の手順に従って、ConfigMap を作成します。
前提条件
- Service Mesh Operator がインストールされ、検証されていること。
-
cluster-admin
ロールを持つアカウントがある。 - Operator デプロイメントの場所。
-
oc
として知られる OpenShift Container Platform コマンドラインインターフェイス (CLI) へのアクセス。
手順
- クラスター管理者として OpenShift Container Platform CLI にログインします。
CLI で以下のコマンドを実行し、
openshift-operators
プロジェクトにsmcp-templates
という名前の ConfigMap を作成し、<templates-directory>
をローカルディスクのServiceMeshControlPlane
ファイルの場所に置き換えます。$ oc create configmap --from-file=<templates-directory> smcp-templates -n openshift-operators
Operator ClusterServiceVersion 名を見つけます。
$ oc get clusterserviceversion -n openshift-operators | grep 'Service Mesh'
出力例
maistra.v1.0.0 Red Hat OpenShift Service Mesh 1.0.0 Succeeded
Operator クラスターサービスバージョンを編集して、Operator に
smcp-templates
ConfigMap を使用するよう指示します。$ oc edit clusterserviceversion -n openshift-operators maistra.v1.0.0
ボリュームマウントおよびボリュームを Operator デプロイメントに追加します。
deployments: - name: istio-operator spec: template: spec: containers: volumeMounts: - name: discovery-cache mountPath: /home/istio-operator/.kube/cache/discovery - name: smcp-templates mountPath: /usr/local/share/istio-operator/templates/ volumes: - name: discovery-cache emptyDir: medium: Memory - name: smcp-templates configMap: name: smcp-templates ...
- 変更を保存し、エディターを終了します。
ServiceMeshControlPlane
でtemplate
パラメーターを使用してテンプレートを指定できます。apiVersion: maistra.io/v1 kind: ServiceMeshControlPlane metadata: name: minimal-install spec: template: default