第1章 Red Hat Advanced Cluster Management インテグレーションを使用する multicluster engine Operator
multicluster engine Operator を使用しており、後から Red Hat Advanced Cluster Management をインストールすると、Observability や Policy をはじめとする多くのマルチクラスター管理機能にアクセスできるようになります。統合機能は、次の要件を参照してください。
- Red Hat Advanced Cluster Management がインストールされている。Red Hat Advanced Cluster Management インストールおよびアップグレード に関するドキュメントを参照してください。
- インストール後の Red Hat Advanced Cluster Management の詳細は、MultiClusterHub 詳細設定 参照してください。
multicluster engine Operator と Red Hat Advanced Cluster Management マルチクラスター管理には、次の手順を参照してください。
1.1. Red Hat Advanced Cluster Management での multicluster engine Operator がホストするクラスターの検出 リンクのコピーリンクがクリップボードにコピーされました!
複数の ホステッドクラスター をホストしている multicluster engine Operator クラスターがある場合は、それらのホステッドクラスターを Red Hat Advanced Cluster Management ハブクラスターに移動して、アプリケーションライフサイクル や ガバナンス などの Red Hat Advanced Cluster Management コンポーネントを使用して管理できます。
これらのホステッドクラスターは自動的に検出され、マネージドクラスターとしてインポートできます。
注記: Hosted Control Plane はマネージド multicluster engine Operator クラスターノード上で実行されます。そのため、クラスターがホストできる Hosted Control Plane の数は、マネージド multicluster engine Operator クラスターノードのリソースの可用性と、マネージド multicluster engine Operator クラスターの数によって決まります。ノードまたはマネージドクラスターを追加すると、より多くの Hosted Control Plane をホストできます。
必要なアクセス権: クラスター管理者
前提条件
- 1 つ以上の multicluster engine Operator クラスターがある。
- ハブクラスターとして設定された Red Hat Advanced Cluster Management クラスターがある。
次のコマンドを実行して
clusteradmCLI をインストールする。curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bash
curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bashCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.1. multicluster engine Operator クラスターをインポートするための Red Hat Advanced Cluster Management の設定 リンクのコピーリンクがクリップボードにコピーされました!
multicluster engine Operator には、管理対象のハブクラスターである local-cluster があります。この local-cluster では、open-cluster-management-agent-addon namespace で次のデフォルトのアドオンが有効になっています。
-
cluster-proxy -
managed-serviceaccount -
work-manager
次にアドオンを設定できます。multicluster engine Operator が Red Hat Advanced Cluster Management にインポートされると、Red Hat Advanced Cluster Management は、multicluster engine Operator を管理するために、同じアドオンのセットを有効にします。
これらのアドオンを別の multicluster engine Operator の namespace にインストールして、multicluster engine Operator が local-cluster のアドオンを使用して自己管理できるようにし、同時に Red Hat Advanced Cluster Management が multicluster engine Operator を管理できるようにします。次の手順を実行します。
- CLI を使用して Red Hat Advanced Cluster Management にログインします。
AddOnDeploymentConfigリソースを作成し、別のアドオンインストール用 namespace を指定します。次の例を参照してください。agentInstallNamespaceがopen-cluster-management-agent-addon-discoveryを参照しています。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yamlを実行して、ファイルを適用します。 アドオンの既存の
ClusterManagementAddOnリソースを更新して、作成したAddOnDeploymentConfigリソースで指定されているopen-cluster-management-agent-addon-discoverynamespace にアドオンがインストールされるようにします。次の例を参照してください。namespace としてopen-cluster-management-global-setを使用しています。Copy to Clipboard Copied! Toggle word wrap Toggle overflow addonDeploymentConfigsをClusterManagementAddOnに追加します。以下の例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow AddOnDeploymentConfigをmanaged-serviceaccountに追加します。以下の例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
cluster-proxyという名前のClusterManagementAddOnリソースにaddondeploymentconfigs値を追加します。以下の例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、Red Hat Advanced Cluster Management の
local-cluster用のアドオンが、指定した namespace に再インストールされていることを確認します。oc get deployment -n open-cluster-management-agent-addon-discovery
oc get deployment -n open-cluster-management-agent-addon-discoveryCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の出力例を参照してください。
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24h
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24hCopy to Clipboard Copied! Toggle word wrap Toggle overflow
KlusterletConfig リソースを作成します。multicluster engine Operator には、管理されるハブクラスターである local-cluster があります。この local-cluster に対して、klusterlet という名前のリソースが作成されます。
multicluster engine Operator が Red Hat Advanced Cluster Management にインポートされると、Red Hat Advanced Cluster Management は、multicluster engine Operator を管理するために、同じ名前の klusterlet (klusterlet) をインストールします。これは、multicluster engine Operator の local-cluster の klusterlet と競合します。
競合を回避するために、klusterlet が別の名前でインストールされるように、ManagedCluster リソースが multicluster engine Operator クラスターのインポートに使用する KlusterletConfig リソースを作成する必要があります。次の手順を実行します。
次の例を使用して
KlusterletConfigリソースを作成します。このKlusterletConfigリソースがマネージドクラスターで参照された場合、spec.installMode.noOperator.postfixフィールドの値が klusterlet 名の接尾辞として使用されます (例:klusterlet-mce-import)。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yamlを実行して、ファイルを適用します。
バックアップと復元の設定
Red Hat Advanced Cluster Management をインストールすると、バックアップおよび復元 機能も使用できます。
障害復旧シナリオでハブクラスターが復元されると、インポートされた multicluster engine Operator クラスターとホステッドクラスターが、新しい Red Hat Advanced Cluster Management ハブクラスターにインポートされます。
このとき、Red Hat Advanced Cluster Management ハブクラスターの復元の一環として、以前の設定を復元する必要があります。
バックアップを有効にするには、backup=true ラベルを追加します。各アドオンは、次の手順を参照してください。
addon-ns-configの場合は、次のコマンドを実行します。oc label addondeploymentconfig addon-ns-config -n multicluster-engine cluster.open-cluster-management.io/backup=true
oc label addondeploymentconfig addon-ns-config -n multicluster-engine cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow hypershift-addon-deploy-configの場合は、次のコマンドを実行します。oc label addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine cluster.open-cluster-management.io/backup=true
oc label addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow work-managerの場合は、次のコマンドを実行します。oc label clustermanagementaddon work-manager cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon work-manager cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow `cluster-proxy` の場合は、次のコマンドを実行します。
oc label clustermanagementaddon cluster-proxy cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon cluster-proxy cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow managed-serviceaccountの場合は、次のコマンドを実行します。oc label clustermanagementaddon managed-serviceaccount cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon managed-serviceaccount cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow mce-import-klusterlet-configの場合は、次のコマンドを実行します。oc label KlusterletConfig mce-import-klusterlet-config cluster.open-cluster-management.io/backup=true
oc label KlusterletConfig mce-import-klusterlet-config cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.2. multicluster engine Operator の手動インポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Management クラスターから multicluster engine Operator クラスターを手動でインポートするには、次の手順を実行します。
Red Hat Advanced Cluster Management クラスターから、
ManagedClusterリソースを手動で作成し、multicluster engine Operator クラスターをインポートします。次のファイルの例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yamlを実行して、ファイルを適用します。 multicluster engine Operator クラスターの
kubeconfigを参照するauto-import-secretシークレットを作成します。CLI を使用してマネージドクラスターをインポートする の 自動インポートシークレットを使用してクラスターをインポートする に記載されているとおり、自動インポートシークレットを追加して multicluster engine Operator 自動インポートプロセスを完了します。Red Hat Advanced Cluster Management クラスターの multicluster engine Operator 管理クラスターの namespace に自動インポートシークレットを作成すると、マネージドクラスターが登録されます。
次のコマンドを実行して、ステータスを取得します。
oc get managedcluster
oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターのステータスとサンプル URL を含む次の出力例を参照してください。
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE local-cluster true https://<api.acm-hub.com:port> True True 44h mce-a true https://<api.mce-a.com:port> True True 27s
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE local-cluster true https://<api.acm-hub.com:port> True True 44h mce-a true https://<api.mce-a.com:port> True True 27sCopy to Clipboard Copied! Toggle word wrap Toggle overflow
重要: インポートされた multicluster engine Operator に対して、他の Red Hat Advanced Cluster Management アドオンを有効にしないでください。
1.1.3. ホステッドクラスターの検出 リンクのコピーリンクがクリップボードにコピーされました!
すべての multicluster engine Operator クラスターを Red Hat Advanced Cluster Management にインポートしたら、それらのマネージド multicluster engine Operator クラスターで hypershift-addon を有効にして、ホステッドクラスターを検出する必要があります。
前の手順では、デフォルトのアドオンを別の namespace にインストールしました。同様に、multicluster engine Operator の別の namespace に hypershift-addon をインストールして、multicluster engine Operator の local-cluster のアドオンエージェントと Red Hat Advanced Cluster Management のエージェントが、multicluster engine Operator で動作できるようにします。
重要: 以下のすべてのコマンドで、<managed-cluster-names> を、multicluster engine Operator のコンマ区切りのマネージドクラスター名に置き換えてください。
次のコマンドを実行して、アドオンの
agentInstallNamespacenamespace をopen-cluster-management-agent-addon-discoveryに設定します。oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"agentInstallNamespace":"open-cluster-management-agent-addon-discovery"}}'oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"agentInstallNamespace":"open-cluster-management-agent-addon-discovery"}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、メトリクスを無効にし、HyperShift Operator 管理を無効にします。
oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value": "true"},{"name":"disableHOManagement","value": "true"}]}}'oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value": "true"},{"name":"disableHOManagement","value": "true"}]}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 命名規則を設定します。デフォルトでは、インポートされたホステッドクラスターは
<mce-cluster-name>-<hosted-cluster-name>命名パターンを使用しますが、命名パターンはカスタマイズできます。次のコマンドを実行して、デフォルトの接頭辞を削除します。
oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=merge \ -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value":"true"},{"name":"disableHOManagement","value":"true"},{"name":"discoveryPrefix","value":"custom-prefix"}]}}'oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=merge \ -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value":"true"},{"name":"disableHOManagement","value":"true"},{"name":"discoveryPrefix","value":"custom-prefix"}]}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow custom-prefixを新しい接頭辞に変更します。ホステッドクラスター名は、<custom-prefix>-<hosted-cluster-name>パターンで作成されます。以下のコマンドを実行します。oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=merge \ -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value":"true"},{"name":"disableHOManagement","value":"true"},{"name":"discoveryPrefix","value":"custom-prefix"}]}}'oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=merge \ -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value":"true"},{"name":"disableHOManagement","value":"true"},{"name":"discoveryPrefix","value":"custom-prefix"}]}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 検出接頭辞を完全に削除する必要がある場合は、まずすべてのホステッドクラスターがそれぞれのクラスターから切り離されていることを確認します。重要: カスタム接頭辞として空の文字列を使用すると、multicluster engine Operator クラスター内で klusterlet の命名の競合が発生する可能性があります。以下のコマンドを実行します。
oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=json \ -p='[{"op":"add","path":"/spec/customizedVariables/-","value":{"name":"autoImportDisabled","value":"true"}}]'oc patch addondeploymentconfig hypershift-addon-deploy-config \ -n multicluster-engine \ --type=json \ -p='[{"op":"add","path":"/spec/customizedVariables/-","value":{"name":"autoImportDisabled","value":"true"}}]'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、multicluster engine Operator の
hypershift-addonを有効にします。clusteradm addon enable --names hypershift-addon --clusters <managed-cluster-names>
clusteradm addon enable --names hypershift-addon --clusters <managed-cluster-names>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Advanced Cluster Management で次のコマンドを実行すると、multicluster engine Operator が管理するクラスターの名前を取得できます。
oc get managedcluster
oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow multicluster engine Operator クラスターにログインし、指定した namespace に
hypershift-addonがインストールされていることを確認します。以下のコマンドを実行します。oc get deployment -n open-cluster-management-agent-addon-discovery
oc get deployment -n open-cluster-management-agent-addon-discoveryCopy to Clipboard Copied! Toggle word wrap Toggle overflow アドオンがリスト表示されている次の出力例を参照してください。
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h hypershift-addon-agent 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24h
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h hypershift-addon-agent 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24hCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Red Hat Advanced Cluster Management が hypershift-addon をデプロイします。これは、multicluster engine Operator からホステッドクラスターを検出する検出エージェントです。エージェントは、ホステッドクラスターの kube-apiserver が利用可能になると、Red Hat Advanced Cluster Management ハブクラスター内の multicluster engine Operator が管理するクラスター namespace に、対応する DiscoveredCluster カスタムリソースを作成します。
検出されたクラスターはコンソールで表示できます。
ハブクラスターコンソールにログインし、Fleet Management > Infrastructure > Clusters をクリックします。
注記: バージョン 4.20 よりも前の OpenShift Container Platform バージョンでは、クラスタースイッチャーから All Clusters を選択します。
-
Discovered clusters タブを見つけて、タイプが
MultiClusterEngineHCPの multicluster engine Operator から検出されたすべてのホステッドクラスターを表示します。
次に、検出されたホステッドクラスターのインポートの自動化 を参照して、クラスターを自動的にインポートする方法を確認してください。