3.4. OpenShift Container Platform CLI からのインストール
Operator 要件が含まれている Kubernetes エンジン namespace 用のマルチクラスターエンジンを作成します。次のコマンドを実行します。ここで、
namespaceは、Kubernetes エンジン namespace のマルチクラスターエンジンの名前です。namespaceの値は、OpenShift Container Platform 環境では プロジェクト と呼ばれる場合があります。oc create namespace <namespace>
oc create namespace <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow プロジェクトの namespace を、作成した namespace に切り替えます。
namespaceは、手順 1 で作成した Kubernetes エンジン用のマルチクラスターエンジンの namespace の名前に置き換えてください。oc project <namespace>
oc project <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow OperatorGroupリソースを設定するために YAML ファイルを作成します。namespace ごとに割り当てることができる Operator グループ は 1 つだけです。defaultはお使いの operator グループ名に置き換えます。namespaceはお使いのプロジェクトの namespace 名に置き換えます。以下の例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して
OperatorGroupリソースを作成します。operator-groupは、作成した operator グループの YAML ファイル名に置き換えます。oc apply -f <path-to-file>/<operator-group>.yaml
oc apply -f <path-to-file>/<operator-group>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Container Platform サブスクリプションを設定するための YAML ファイルを作成します。ファイルは以下の例のようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記: インフラストラクチャーノードに Kubernetes エンジン用のマルチクラスターエンジンをインストールする場合は、Operator Lifecycle Manager サブスクリプションの追加設定 セクションを参照してください。
以下のコマンドを実行して OpenShift Container Platform サブスクリプションを作成します。
subscriptionは、作成したサブスクリプションファイル名に置き換えます。oc apply -f <path-to-file>/<subscription>.yaml
oc apply -f <path-to-file>/<subscription>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML ファイルを作成して、
MultiClusterEngineカスタムリソースを設定します。デフォルトのテンプレートは、以下の例のようになります。apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記: インフラストラクチャーノードに Kubernetes エンジン用のマルチクラスターエンジンをインストールする方法については、MultiClusterEngine カスタムリソースの追加設定 セクションを参照してください。
次のコマンドを実行して、
MultiClusterEngineカスタムリソースを作成します。custom-resourceは、カスタムリソースファイル名に置き換えます。oc apply -f <path-to-file>/<custom-resource>.yaml
oc apply -f <path-to-file>/<custom-resource>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のエラーで、この手順に失敗した場合でも、リソースは作成され、適用されます。リソースが作成されてから数分後にもう一度コマンドを実行します。
error: unable to recognize "./mce.yaml": no matches for kind "MultiClusterEngine" in version "operator.multicluster-engine.io/v1"
error: unable to recognize "./mce.yaml": no matches for kind "MultiClusterEngine" in version "operator.multicluster-engine.io/v1"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行してカスタムリソースを編集します。次のコマンドを実行した後、
MultiClusterEngineカスタムリソースステータスがstatus.phaseフィールドにAvailableとして表示されるまでに最大 10 分かかる場合があります。oc get mce -o=jsonpath='{.items[0].status.phase}'oc get mce -o=jsonpath='{.items[0].status.phase}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Kubernetes operator 用のマルチクラスターエンジンを再インストールしても Pod が起動しない場合は、この問題を回避する手順について、再インストールに失敗する場合のトラブルシューティング を参照してください。
注記:
-
ClusterRoleBindingを使用するServiceAccountは、クラスター管理者特権を Kubernetes のマルチクラスターエンジンと、Kubernetes のマルチクラスターエンジンをインストールする namespace にアクセスできるすべてのユーザー認証情報に自動的に付与します。