1.6. multicluster engine Operator のインストールとアップグレード
multicluster engine Operator は、クラウドやデータセンター全体のクラスターを管理するためのソフトウェア Operator です。OpenShift Container Platform と Kubernetes クラスターのライフサイクル管理の両方をサポートします。
完全なサポート情報は、multicluster engine Operator のサポートマトリックス を参照してください。ライフサイクルの情報は、Red Hat OpenShift Container Platform ライフサイクルポリシー を参照してください。
重要: Red Hat Advanced Cluster Management を使用している場合、multicluster engine for Kubernetes Operator はクラスターにすでにインストールされています。
非推奨: multicluster engine Operator 2.4 以前のバージョンはサポートされなくなりました。ドキュメントは引き続き利用可能になる可能性がありますが、修正された問題やその他の更新に関するエラータリリースは行われません。
ベストプラクティス: 最新バージョンにアップグレードします。
以下のドキュメントを参照してください。
1.6.1. オンライン接続時のインストール リンクのコピーリンクがクリップボードにコピーされました!
multicluster engine Operator は、Operator Lifecycle Manager によってインストールされます。これは、multicluster engine Operator を含むコンポーネントのインストール、アップグレード、および削除を管理します。
必要なアクセス権: クラスター管理者
重要:
-
外部クラスターに
ManagedClusterリソースが設定されているクラスターに multicluster engine Operator をインストールできません。multicluster engine Operator をインストールする前に、外部クラスターからManagedClusterリソースを削除する必要があります。 -
OpenShift Container Platform 専用環境の場合は、
cluster-admin権限が必要です。デフォルトで、dedicated-adminロールには OpenShift Container Platform Dedicated 環境で namespace を作成するために必要な権限がありません。 - デフォルトでは、multicluster engine Operator コンポーネントは追加設定なしで OpenShift Container Platform クラスターのワーカーノードにインストールされます。Red Hat OpenShift ソフトウェアカタログコンソール、または OpenShift Container Platform CLI を使用して、multicluster engine Operator をワーカーノードにインストールできます。
- OpenShift Container Platform クラスターをインフラストラクチャーノードで設定している場合は、OpenShift Container Platform CLI を使用し、追加のリソースパラメーターを指定して multicluster engine Operator をそのインフラストラクチャーノードにインストールできます。詳細は、インフラストラクチャーノードへのマルチクラスターエンジンのインストール セクションを参照してください。
OpenShift Container Platform または multicluster engine Operator で作成されていない Kubernetes クラスターをインポートする予定の場合は、イメージプルシークレットを設定する必要があります。イメージプルシークレットおよびその他の高度な設定方法は、このドキュメントの 詳細設定 セクションのオプションを参照してください。
1.6.1.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
multicluster engine Operator をインストールする前に、次の前提条件を確認してください。
- OpenShift Container Platform クラスターは、Red Hat OpenShift ソフトウェアカタログコンソールの multicluster engine Operator にアクセスできる必要があります。
- catalog.redhat.com へのアクセスがある。
-
クラスターに外部クラスターに設定された
ManagedClusterリソースが ない。 サポートされているバージョンの OpenShift Container Platform を環境にデプロイし、OpenShift Container Platform CLI を使用してログインする。次のインストールドキュメントを参照してください。
-
OpenShift Container Platform のコマンドラインインターフェイス (CLI) は、
ocコマンドを実行できるように設定している。OpenShift Container Platform CLI のインストールおよび設定の詳細は、CLI の使用方法 を参照してください。 - namespace の作成が可能な OpenShift Container Platform のパーミッションを設定している。
- operator の依存関係にアクセスするには、インターネット接続が必要。
OpenShift Container Platform Dedicated 環境にインストールするには、以下を参照してください。
- OpenShift Container Platform Dedicated 環境が設定され、実行している。
-
エンジンのインストール先の OpenShift Container Platform Dedicated 環境での
cluster-adminがある。
- Red Hat OpenShift Container Platform に付属する Assisted Installer を使用してマネージドクラスターを作成する予定の場合は、要件について、OpenShift Container Platform ドキュメントの Assisted Installer を使用したインストールの準備 トピックを参照してください。
1.6.1.2. OpenShift Container Platform インストールの確認 リンクのコピーリンクがクリップボードにコピーされました!
レジストリー、ストレージサービスなど、サポート対象の OpenShift Container Platform バージョンがインストールされ、機能する状態である必要があります。OpenShift Container Platform のインストールの詳細は、OpenShift Container Platform のドキュメントを参照してください。
- multicluster engine Operator が OpenShift Container Platform クラスターにインストールされていないことを確認します。インストールできる multicluster engine Operator は、OpenShift Container Platform クラスターごとに 1 つだけです。インストールがない場合は、次の手順に進みます。
OpenShift Container Platform クラスターが正しく設定されていることを確認するには、以下のコマンドを使用して OpenShift Container Platform Web コンソールにアクセスします。
kubectl -n openshift-console get route console以下の出力例を参照してください。
console console-openshift-console.apps.new-coral.purple-chesterfield.com console https reencrypt/Redirect None-
ブラウザーで URL を開き、結果を確認します。コンソール URL の表示が
console-openshift-console.router.default.svc.cluster.localの場合は、OpenShift Container Platform のインストール時にopenshift_master_default_subdomainを設定します。https://console-openshift-console.apps.new-coral.purple-chesterfield.comの例を参照してください。
multicluster engine Operator のインストールに進むことができます。
1.6.1.3. Red Hat OpenShift ソフトウェアカタログコンソールからのインストール リンクのコピーリンクがクリップボードにコピーされました!
ベストプラクティス: OpenShift Container Platform ナビゲーションの Administrator ビューから、OpenShift Container Platform で提供される Red Hat OpenShift ソフトウェアカタログコンソールをインストールします。
- Ecosystem > Software Catalog に移動します。
- インストールする Operator を選択します。
Operator Installation ページで、インストールのオプションを選択します。
Namespace:
- multicluster engine Operator エンジンは、独自の namespace またはプロジェクトにインストールする必要があります。
-
デフォルトでは、Red Hat OpenShift ソフトウェアカタログコンソールのインストールプロセスによって、
multicluster-engineという namespace が作成されます。ベストプラクティス:multicluster-enginenamespace が使用可能な場合は、引き続き使用します。 -
multicluster-engineという名前の namespace が存在する場合は、別の namespace を選択してください。
- チャネル: インストールするリリースに対応するチャネルを選択します。チャネルを選択すると、指定のリリースがインストールされ、そのリリース内の今後のエラータ更新が取得されます。
承認ストラテジー: 承認ストラテジーでは、サブスクライブ先のチャネルまたはリリースに更新を適用するのに必要な人の間のやり取りを特定します。
- そのリリース内の更新が自動的に適用されるようにするには、デフォルトで選択されている Automatic を選択します。
- Manual を選択して、更新が利用可能になると通知を受け取ります。更新が適用されるタイミングに懸念がある場合は、これがベストプラクティスになる可能性があります。
注記: 次のマイナーリリースにアップグレードするには、Red Hat OpenShift ソフトウェアカタログに戻り、より新しいリリースの新しいチャネルを選択する必要があります。
- Install を選択して変更を適用し、Operator を作成します。
MultiClusterEngine カスタムリソースを作成するには、次のプロセスを参照してください。
- OpenShift Container Platform コンソールナビゲーションで、Installed Operators > multicluster engine for Kubernetes を選択します。
- MultiCluster Engine タブを選択します。
- Create MultiClusterEngine を選択します。
YAML ファイルのデフォルト値を更新します。このドキュメントの MultiClusterEngine advanced configuration のオプションを参照してください。
- 以下の例は、デフォルトのテンプレートを示しています。
apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}
Create を選択して、カスタムリソースを初期化します。multicluster engine Operator エンジンがビルドされて起動するまで、最大 10 分かかる場合があります。
MultiClusterEngineリソースが作成されると、リソースのステータスがMultiCluster EngineタブでAvailableになります。
1.6.1.4. OpenShift Container Platform CLI からのインストール リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインインターフェイスからインストールするには、次の手順を参照してください。
Operator の要件を満たす、multicluster engine Operator エンジンの namespace を作成します。次のコマンドを実行します。ここで、
namespaceは multicluster engine Operator の namespace の名前です。namespaceの値は、OpenShift Container Platform 環境では プロジェクト と呼ばれる場合があります。oc create namespace <namespace>プロジェクトの namespace を、作成した namespace に切り替えます。
namespaceは、手順 1 で作成した namespace 名に置き換えます。oc project <namespace>OperatorGroupリソースを設定するために YAML ファイルを作成します。namespace ごとに割り当てることができる Operator グループは 1 つだけです。defaultはお使いの operator グループ名に置き換えます。namespaceはお使いのプロジェクトの namespace 名に置き換えます。以下の例を参照してください。apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: <default> namespace: <namespace> spec: targetNamespaces: - <namespace>以下のコマンドを実行して
OperatorGroupリソースを作成します。operator-groupは、作成した operator グループの YAML ファイル名に置き換えます。oc apply -f <path-to-file>/<operator-group>.yamlOpenShift Container Platform サブスクリプションを設定するための YAML ファイルを作成します。ファイルは次の例のようになります。
<stable-2.x>は、使用しているサポート対象のバージョンを表すものに変更してください。apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: multicluster-engine spec: sourceNamespace: openshift-marketplace source: redhat-operators channel: stable-2.x installPlanApproval: Automatic name: multicluster-engine注記: インフラストラクチャーノードを設定するには、multicluster engine Operator のインフラストラクチャーノードの設定 を参照してください。
以下のコマンドを実行して OpenShift Container Platform サブスクリプションを作成します。
subscriptionは、作成したサブスクリプションファイル名に置き換えます。oc apply -f <path-to-file>/<subscription>.yamlYAML ファイルを作成して、
MultiClusterEngineカスタムリソースを設定します。デフォルトのテンプレートは、以下の例のようになります。apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}注記: インフラストラクチャーノードに multicluster engine Operator をインストールする場合は、MultiClusterEngine カスタムリソースの追加設定 セクションを参照してください。
次のコマンドを実行して、
MultiClusterEngineカスタムリソースを作成します。custom-resourceは、カスタムリソースファイル名に置き換えます。oc apply -f <path-to-file>/<custom-resource>.yaml以下のエラーで、この手順に失敗した場合でも、リソースは作成され、適用されます。リソースが作成されてから数分後にもう一度コマンドを実行します。
error: unable to recognize "./mce.yaml": no matches for kind "MultiClusterEngine" in version "operator.multicluster-engine.io/v1"以下のコマンドを実行してカスタムリソースを取得します。次のコマンドを実行した後、
MultiClusterEngineカスタムリソースステータスがstatus.phaseフィールドにAvailableとして表示されるまでに最大 10 分かかる場合があります。oc get mce -o=jsonpath='{.items[0].status.phase}'
multicluster engine Operator を再インストールしても Pod が起動しない場合は、再インストールに失敗する場合のトラブルシューティング で、この問題を回避する手順を参照してください。
注記:
-
ClusterRoleBindingが指定されたServiceAccountは、multicluster engine Operator と、multicluster engine Operator をインストールする namespace にアクセスできるすべてのユーザー認証情報に、クラスター管理者権限を自動的に付与します。
承認された管理コンポーネントを実行するインフラストラクチャーノードを含むように OpenShift Container Platform クラスターを設定できるようになりました。インフラストラクチャーノードでコンポーネントを実行すると、それらの管理コンポーネントを実行しているノードの OpenShift Container Platform サブスクリプションクォータの割り当てる必要がなくなります。その手順は、multicluster engine Operator のインフラストラクチャーノードの設定 を参照してください。