第1章 Red Hat Advanced Cluster Management インテグレーションを使用する multicluster engine Operator


multicluster engine Operator を使用しており、後から Red Hat Advanced Cluster Management をインストールすると、ObservabilityPolicy をはじめとする多くのマルチクラスター管理機能にアクセスできるようになります。

統合機能は、次の要件を参照してください。

multicluster engine Operator と Red Hat Advanced Cluster Management マルチクラスター管理には、次の手順を参照してください。

1.1. Red Hat Advanced Cluster Management でのマルチクラスターエンジン Operator がホストするクラスターの検出

複数の ホステッドクラスター をホストしているマルチクラスターエンジン Operator クラスターがある場合は、それらのホステッドクラスターを Red Hat Advanced Cluster Management ハブクラスターに移動して、アプリケーションライフサイクルガバナンス などの Red Hat Advanced Cluster Management コンポーネントを使用して管理できます。

これらのホステッドクラスターは自動的に検出され、マネージドクラスターとしてインポートできます。

注記: Hosted Control Plane はマネージドマルチクラスターエンジン Operator クラスターノード上で実行されます。そのため、クラスターがホストできる Hosted Control Plane の数は、マネージドマルチクラスターエンジン Operator クラスターノードのリソースの可用性と、マネージドマルチクラスターエンジン Operator クラスターの数によって決まります。ノードまたはマネージドクラスターを追加すると、より多くの Hosted Control Plane をホストできます。

必要なアクセス権: クラスター管理者

1.1.1. 前提条件

  • 1 つ以上のマルチクラスターエンジン Operator クラスターがある。
  • ハブクラスターとして設定された Red Hat Advanced Cluster Management クラスターがある。
  • 次のコマンドを実行して clusteradm CLI をインストールする。

    curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bash

1.1.2. マルチクラスターエンジン Operator クラスターをインポートするための Red Hat Advanced Cluster Management の設定

マルチクラスターエンジン Operator には、管理対象のハブクラスターである local-cluster があります。この local-cluster では、open-cluster-management-agent-addon namespace で次のデフォルトのアドオンが有効になっています。

  • cluster-proxy
  • managed-serviceaccount
  • work-manager

1.1.2.1. アドオンの設定

マルチクラスターエンジン Operator が Red Hat Advanced Cluster Management にインポートされると、Red Hat Advanced Cluster Management は、マルチクラスターエンジン Operator を管理するために、同じアドオンのセットを有効にします。

これらのアドオンを別のマルチクラスターエンジン Operator の namespace にインストールして、マルチクラスターエンジン Operator が local-cluster のアドオンを使用して自己管理できるようにし、同時に Red Hat Advanced Cluster Management がマルチクラスターエンジン Operator を管理できるようにします。次の手順を実行します。

  1. CLI を使用して Red Hat Advanced Cluster Management にログインします。
  2. AddOnDeploymentConfig リソースを作成し、別のアドオンインストール用 namespace を指定します。次の例を参照してください。agentInstallNamespaceopen-cluster-management-agent-addon-discovery を参照しています。

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: AddOnDeploymentConfig
    metadata:
      name: addon-ns-config
      namespace: multicluster-engine
    spec:
      agentInstallNamespace: open-cluster-management-agent-addon-discovery
  3. oc apply -f <filename>.yaml を実行して、ファイルを適用します。
  4. アドオンの既存の ClusterManagementAddOn リソースを更新して、作成した AddOnDeploymentConfig リソースで指定されている open-cluster-management-agent-addon-discovery namespace にアドオンがインストールされるようにします。次の例を参照してください。namespace として open-cluster-management-global-set を使用しています。

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ClusterManagementAddOn
    metadata:
      name: work-manager
    spec:
      addonMeta:
        displayName: work-manager
      installStrategy:
        placements:
        - name: global
          namespace: open-cluster-management-global-set
          rolloutStrategy:
            type: All
        type: Placements
    1. addonDeploymentConfigsClusterManagementAddOn に追加します。以下の例を参照してください。

      apiVersion: addon.open-cluster-management.io/v1alpha1
      kind: ClusterManagementAddOn
      metadata:
        name: work-manager
      spec:
        addonMeta:
          displayName: work-manager
        installStrategy:
          placements:
          - name: global
            namespace: open-cluster-management-global-set
            rolloutStrategy:
              type: All
            configs:
            - group: addon.open-cluster-management.io
              name: addon-ns-config
              namespace: multicluster-engine
              resource: addondeploymentconfigs
          type: Placements
    2. AddOnDeploymentConfigmanaged-serviceaccount に追加します。以下の例を参照してください。

      apiVersion: addon.open-cluster-management.io/v1alpha1
      kind: ClusterManagementAddOn
      metadata:
        name: managed-serviceaccount
      spec:
        addonMeta:
          displayName: managed-serviceaccount
        installStrategy:
          placements:
          - name: global
            namespace: open-cluster-management-global-set
            rolloutStrategy:
              type: All
            configs:
            - group: addon.open-cluster-management.io
              name: addon-ns-config
              namespace: multicluster-engine
              resource: addondeploymentconfigs
          type: Placements
    3. cluster-proxy という名前の ClusterManagementAddOn リソースに addondeploymentconfigs 値を追加します。以下の例を参照してください。
    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ClusterManagementAddOn
    metadata:
      name: cluster-proxy
    spec:
      addonMeta:
        displayName: cluster-proxy
      installStrategy:
        placements:
        - name: global
          namespace: open-cluster-management-global-set
          rolloutStrategy:
            type: All
          configs:
          - group: addon.open-cluster-management.io
            name: addon-ns-config
            namespace: multicluster-engine
            resource: addondeploymentconfigs
        type: Placements
  5. 次のコマンドを実行して、Red Hat Advanced Cluster Management の local-cluster 用のアドオンが、指定した namespace に再インストールされていることを確認します。

    oc get deployment -n open-cluster-management-agent-addon-discovery

    次の出力例を参照してください。

    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

1.1.2.2. KlusterletConfig リソースの作成

マルチクラスターエンジン Operator には、管理対象のハブクラスターである local-cluster があります。この local-cluster に対して、klusterlet という名前のリソースが作成されます。

マルチクラスターエンジン Operator が Red Hat Advanced Cluster Management にインポートされると、Red Hat Advanced Cluster Management は、マルチクラスターエンジン Operator を管理するために、同じ名前の klusterlet (klusterlet) をインストールします。これは、マルチクラスターエンジン Operator の local-cluster の klusterlet と競合します。

競合を回避するために、klusterlet が別の名前でインストールされるように、ManagedCluster リソースがマルチクラスターエンジン Operator クラスターのインポートに使用する KlusterletConfig リソースを作成する必要があります。次の手順を実行します。

  1. 次の例を使用して KlusterletConfig リソースを作成します。この KlusterletConfig リソースがマネージドクラスターで参照された場合、spec.installMode.noOperator.postfix フィールドの値が klusterlet 名の接尾辞として使用されます (例: klusterlet-mce-import)。

    kind: KlusterletConfig
    apiVersion: config.open-cluster-management.io/v1alpha1
    metadata:
      name: mce-import-klusterlet-config
    spec:
      installMode:
        type: noOperator
        noOperator:
           postfix: mce-import
  2. oc apply -f <filename>.yaml を実行して、ファイルを適用します。

1.1.2.3. バックアップと復元の設定

Red Hat Advanced Cluster Management をインストールすると、バックアップおよび復元 機能も使用できます。

障害復旧シナリオでハブクラスターが復元されると、インポートされたマルチクラスターエンジン 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
  • hypershift-addon-deploy-config の場合は、次のコマンドを実行します。

    oc label addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine cluster.open-cluster-management.io/backup=true
  • work-manager の場合は、次のコマンドを実行します。

    oc label clustermanagementaddon work-manager cluster.open-cluster-management.io/backup=true
  • `cluster-proxy` の場合は、次のコマンドを実行します。

    oc label clustermanagementaddon cluster-proxy cluster.open-cluster-management.io/backup=true
  • managed-serviceaccount の場合は、次のコマンドを実行します。

    oc label clustermanagementaddon managed-serviceaccount cluster.open-cluster-management.io/backup=true
  • mce-import-klusterlet-config の場合は、次のコマンドを実行します。

    oc label KlusterletConfig mce-import-klusterlet-config cluster.open-cluster-management.io/backup=true

1.1.3. マルチクラスターエンジン Operator の手動インポート

Red Hat Advanced Cluster Management クラスターからマルチクラスターエンジン Operator クラスターを手動でインポートするには、次の手順を実行します。

  1. Red Hat Advanced Cluster Management クラスターから、ManagedCluster リソースを手動で作成し、マルチクラスターエンジン Operator クラスターをインポートします。次のファイルの例を参照してください。

    apiVersion: cluster.open-cluster-management.io/v1
    kind: ManagedCluster
    metadata:
      annotations:
        agent.open-cluster-management.io/klusterlet-config: mce-import-klusterlet-config 1
      labels:
        cloud: auto-detect
        vendor: auto-detect
      name: mce-a 2
    spec:
      hubAcceptsClient: true
      leaseDurationSeconds: 60
    1
    mce-import-klusterlet-config アノテーションは、マルチクラスターエンジン Operator に別の名前で Red Hat Advanced Cluster Management の klusterlet をインストールするために、前の手順で作成した KlusterletConfig リソースを参照します。
    2
    この例では、マルチクラスターエンジン Operator が管理する mce-a という名前クラスターをインポートします。
  2. oc apply -f <filename>.yaml を実行して、ファイルを適用します。
  3. マルチクラスターエンジン Operator クラスターの kubeconfig を参照する auto-import-secret シークレットを作成します。CLI を使用してマネージドクラスターをインポートする自動インポートシークレットを使用してクラスターをインポートする に記載されているとおり、自動インポートシークレットを追加してマルチクラスターエンジン Operator 自動インポートプロセスを完了します。

    Red Hat Advanced Cluster Management クラスターのマルチクラスターエンジン Operator 管理クラスターの namespace に自動インポートシークレットを作成すると、マネージドクラスターが登録されます。

  4. 次のコマンドを実行して、ステータスを取得します。

    oc get managedcluster

    マネージドクラスターのステータスとサンプル 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

重要: インポートされたマルチクラスターエンジン Operator に対して、他の Red Hat Advanced Cluster Management アドオンを有効にしないでください。

1.1.4. ホステッドクラスターの検出

すべてのマルチクラスターエンジン Operator クラスターを Red Hat Advanced Cluster Management にインポートしたら、それらのマネージドマルチクラスターエンジン Operator クラスターで hypershift-addon を有効にして、ホステッドクラスターを検出する必要があります。

前の手順では、デフォルトのアドオンを別の namespace にインストールしました。同様に、マルチクラスターエンジン Operator の別の namespace に hypershift-addon をインストールして、マルチクラスターエンジン Operator の local-cluster のアドオンエージェントと Red Hat Advanced Cluster Management のエージェントが、マルチクラスターエンジン Operator で動作できるようにします。

重要: 以下のすべてのコマンドで、<managed-cluster-names> を、マルチクラスターエンジン Operator のコンマ区切りのマネージドクラスター名に置き換えてください。

  1. 次のコマンドを実行して、アドオンの agentInstallNamespace namespace を 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"}}'
  2. 次のコマンドを実行して、メトリクスを無効にし、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"}]}}'
  3. オプション: 前のコマンドに {"name":"discoveryPrefix","value": ""}]}}' を追加することで、命名規則を設定できます。検出されたホステッドクラスターが Red Hat Advanced Cluster Management ハブクラスターに自動的にインポートされると、`<mce-cluster-name>`-<hosted-cluster-name> の命名規則に従って マネージドクラスター になります。また、discoveryPrefix を他の文字列に設定して、それを <mce-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": ""}]}}'
  4. 次のコマンドを実行して、マルチクラスターエンジン Operator の hypershift-addon を有効にします。

    clusteradm addon enable --names hypershift-addon --clusters <managed-cluster-names>
  5. Red Hat Advanced Cluster Management で次のコマンドを実行すると、マルチクラスターエンジン Operator が管理するクラスターの名前を取得できます。

    oc get managedcluster
  6. マルチクラスターエンジン Operator クラスターにログインし、指定した namespace に hypershift-addon がインストールされていることを確認します。以下のコマンドを実行します。

    oc get deployment -n open-cluster-management-agent-addon-discovery

    アドオンがリスト表示されている次の出力例を参照してください。

    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

Red Hat Advanced Cluster Management が hypershift-addon をデプロイします。これは、マルチクラスターエンジン Operator からホステッドクラスターを検出する検出エージェントです。エージェントは、ホステッドクラスターの kube-apiserver が利用可能になると、Red Hat Advanced Cluster Management ハブクラスター内のマルチクラスターエンジン Operator が管理するクラスター namespace に、対応する DiscoveredCluster カスタムリソースを作成します。

検出されたクラスターはコンソールで表示できます。

  1. ハブクラスターコンソールにログインし、All Clusters > Infrastructure > Clusters に移動します。
  2. Discovered clusters タブを見つけて、タイプが MultiClusterEngineHCP のマルチクラスターエンジン Operator から検出されたすべてのホステッドクラスターを表示します。

次に、検出されたホステッドクラスターのインポートの自動化 を参照して、クラスターを自動的にインポートする方法を確認してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.