アドオン


Red Hat Advanced Cluster Management for Kubernetes 2.16

klusterlet アドオンに関する情報を提供します。

概要

クラスターでアドオンを使用する方法

第1章 マネージドクラスターの高度な設定

Red Hat Advanced Cluster Management for Kubernetes klusterlet アドオンを使用すると、マネージドクラスターをさらに設定してパフォーマンスを向上させ、アプリケーションに機能を追加できます。次の有効化オプションを参照してください。

1.1. クラスター管理のためにクラスターで klusterlet アドオンを有効にする

Red Hat Advanced Cluster Management for Kubernetes をインストールし、Operator 用のマルチクラスターエンジンを使用してクラスターを作成またはインポートした後、それらのマネージドクラスターに対して klusterlet アドオンを有効にできます。Red Hat Advanced Cluster Management コンソールを使用してクラスターを作成またはインポートしない限り、クラスターを作成またはインポートした場合に、klusterlet アドオンがデフォルトでは有効になりません。次の利用可能な klusterlet アドオンを参照してください。

  • application-manager
  • cert-policy-controller
  • config-policy-controller
  • governance-policy-framework
  • search-collector

Red Hat Advanced Cluster Management のインストール後に、マネージドクラスターの klusterlet アドオンを有効にするには、以下のステップを実行します。

  1. 次の KlusterletAddonConfig に似た YAML ファイルを作成し、アドオンを表す spec 値を使用します。

    apiVersion: agent.open-cluster-management.io/v1
    kind: KlusterletAddonConfig
    metadata:
      name: <cluster_name>
      namespace: <cluster_name>
    spec:
      applicationManager:
        enabled: true
      certPolicyController:
        enabled: true
      policyController: 
    1
    
        enabled: true
      searchCollector:
        enabled: true
    1
    policy-controller アドオンは、governance-policy-frameworkconfig-policy-controller の 2 つのアドオンに分かれています。その結果、policyControllergovernance-policy-frameworkconfig-policy-controller managedClusterAddons を制御します。
  2. ファイルは klusterlet-addon-config.yaml として保存します。
  3. ハブクラスターで次のコマンドを実行して、YAML を適用します。

    oc apply -f klusterlet-addon-config.yaml
  4. KlusterletAddonConfig の作成後に、有効な managedClusterAddons が作成されたかどうかを確認するには、次のコマンドを実行します。

    oc get managedclusteraddons -n <cluster namespace>

1.2. klusterlet アドオンの設定

Red Hat Advanced Cluster Management では、次の klusterlet アドオンを設定して、マネージドクラスターのパフォーマンスと機能を向上させることができます。

  • application-manager
  • cert-policy-controller
  • cluster-proxy
  • config-policy-controller
  • governance-policy-framework
  • hypershift-addon
  • managed-serviceaccount
  • multicluster-observability-addon
  • search-collector
  • submariner
  • volsync
  • work-manager

1.2.1. AddOnDeploymentConfig をセットアップして klusterlet アドオンを設定する

klusterlet アドオンを設定するときに、nodeSelectortolerations など、マネージドクラスターごとの任意のアドオンに仕様を適用できます。klusterlet アドオンを設定するには、次の手順を実行します。

  1. AddonDeploymentConfig API を使用して、ハブクラスター上の任意の namespace にアドオン設定を作成します。
  2. 次のテンプレートを使用して、addondeploymentconfig.yaml という名前のファイルを作成します。

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: AddOnDeploymentConfig
    metadata:
      name: config-name 
    1
    
      namespace: config-namespace 
    2
    
    spec:
      nodePlacement:
        nodeSelector: {<node-selector>} 
    3
    
        tolerations: {<tolerations>} 
    4
    
      resourceRequirements: 
    5
    
      - containerID: "<workload-kind>:<workload-name>:<container-name>" 
    6
    
        resources:
          requests:
            memory: 75Mi
          limits:
            memory: 150Mi
    1
    config-name は、作成済みの AddonDeploymentConfig の名前に置き換えます。
    2
    config-namespace は、作成済みの AddonDeploymentConfig の namespace に置き換えます。
    3
    <node-selector> は、独自のノードセレクターに置き換えます。
    4
    <tolerations> は、独自の tolerations に置き換えます。
    5
    アドオンワークロードコンテナーの resources をオーバーライドするには、ここでリソース要件をリストします。アドオンコンテナーがリスト内の複数の項目と一致する場合、最後に一致した設定が適用されます。
    6
    <workload-kind> は、ワークロードの種類に置き換えます (例: deployment)。<workload-name> は、ワークロードの名前に置き換えます。<container-name> は、コンテナーの名前に置き換えます。
    1. これらの値のいずれにも、* 属性を使用して、アドオンによって管理されるすべてのオブジェクトに設定を適用できます。たとえば、*:*:* 属性を使用した場合、設定がアタッチされているすべてのアドオン内のすべてのワークロードの種類のコンテナーすべてに設定が適用されます。

      完成した AddOnDeploymentConfig は、次の例のようになります。

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: AddOnDeploymentConfig
    metadata:
      name: deploy-config
      namespace: open-cluster-management-hub
    spec:
      nodePlacement:
        nodeSelector:
          "node-dedicated": "acm-addon"
        tolerations:
          - effect: NoSchedule
            key: node-dedicated
            value: acm-addon
            operator: Equal

1.2.2. すべてのマネージドクラスターに klusterlet アドオンを設定する

AddOnDeploymentConfig をセットアップした後、ClusterManagementAddOn を使用してこれを設定できます。これにより、ハブクラスターに接続されているすべてのマネージドクラスターにこのアドオン設定が適用されます。すべてのマネージドクラスターに対して klusterlet アドオンを設定するには、次の手順を実行します。

  1. 次のコマンドを実行して、AddOnDeploymentConfig ファイルを klusterlet アドオンに適用します。

    oc apply -f addondeploymentconfig.yaml
  2. ClusterManagementAddOn リソースにパッチを適用して、作成した新しい設定をすべてのマネージドクラスターのアドオンに接続します。次のコマンドを実行して、ClusterManagementAddOnspec.supportedConfigs パラメーターにパッチを適用し、新しい設定を指すようにします。

    oc patch clustermanagementaddons.v1alpha1.addon.open-cluster-management.io <addon-name> --type='json' -p='[{
      "op":"add",
      "path":"/spec/supportedConfigs",
      "value":[{
        "group":"addon.open-cluster-management.io",
        "resource":"addondeploymentconfigs",
        "defaultConfig":{"name":"<config-name>","namespace":"<config-namespace>"}
      }]
    }]'
    • <addon-name> は、独自のアドオン名に置き換えます。
    • <config-name> は、作成済みの AddonDeploymentConfig の名前に置き換えます。
    • <config-namespace> は、作成済みの AddonDeploymentConfig の namespace に置き換えます。

1.2.3. 単一のマネージドクラスター用の klusterlet アドオンの設定

特定のマネージドクラスター上のアドオンのグローバルデフォルト AddonDeploymentConfig 設定をオーバーライドすることもできます。アドオン設定は、ハブクラスターのその namespace にアタッチされた特定のマネージドクラスターにのみ適用されるため、オーバーライドすると、単一のマネージドクラスターに対して klusterlet アドオンを設定できます。設定をオーバーライドするには、次の手順を実行します。

  1. AddonDeploymentConfig API を使用して別の設定を作成し、ハブクラスター上の nodeSelectortolerations を指定します。
  2. 作成した新しい設定を、マネージドクラスター namespace のハブクラスター上の ManagedClusterAddOn アドオンに接続します。次のコマンドを実行して、ManagedClusterAddOnspec.configs パラメーターにパッチを適用し、新しい設定を指すようにします。

    oc -n <managed-cluster> patch managedclusteraddons.v1alpha1.addon.open-cluster-management.io <addon-name> --type='json' -p='[{
      "op":"add",
      "path":"/spec/configs",
      "value":[{
        "group":"addon.open-cluster-management.io",
        "resource":"addondeploymentconfigs",
        "namespace":"<config-namespace>",
        "name":"<config-name>"
      }]
    }]'
    • managed-cluster は、マネージドクラスター名に置き換えます。
    • addon-name を、アドオン名に置き換えます。
    • config-namespace は、作成済みの AddonDeploymentConfig の namespace に置き換えます。
    • config-name は、作成済みの AddonDeploymentConfig の名前に置き換えます。

ManagedClusterAddOn アドオンで参照した新しい設定は、以前に ClusterManagementAddOn アドオンで定義したグローバルデフォルト設定をオーバーライドします。

コンテンツを正しいノードにデプロイできるようにするには、オプション: 特定のノードで実行するように klusterlet を設定する を参照してください。

1.3. 既存のクラスターアドオンでクラスター全体のプロキシーを有効にする

クラスター namespace で KlusterletAddonConfig を設定して、Red Hat OpenShift Container Platform のマネージドのクラスターのすべての klusterlet アドオン Pod にプロキシー環境変数を追加できます。KlusterletAddonConfig が 3 つの環境変数を klusterlet アドオンの Pod に追加するように設定するには、以下の手順を実行します。

  1. プロキシーが必要なクラスターの namespace にある KlusterletAddonConfig ファイルを編集します。コンソールを使用してリソースを見つけるか、ターミナルから次のコマンドを使用して編集できます。

    oc -n <my-cluster-name> edit klusterletaddonconfig <my-cluster-name>

    注記: 1 つのクラスターのみで作業している場合、コマンドの最後に <my-cluster-name> は必要ありません。以下のコマンドを使用します。

    oc -n <my-cluster-name> edit klusterletaddonconfig
  2. ファイルの .spec.proxyConfig セクションを編集して、以下の例のようにします。spec.proxyConfig は任意のセクションです。

    spec
      proxyConfig:
        httpProxy: "<proxy_not_secure>" 
    1
    
        httpsProxy: "<proxy_secure>" 
    2
    
        noProxy: "<no_proxy>" 
    3
    1
    proxy_not_secure は、http 要求のプロキシーサーバーのアドレスに置き換えます。たとえば、http://192.168.123.145:3128 を使用します。
    2
    proxy_secure は、https 要求のプロキシーサーバーのアドレスに置き換えます。たとえば、https://192.168.123.145:3128 を使用します。
    3
    no_proxy を、トラフィックがプロキシー経由でルーティングされない IP アドレス、ホスト名、およびドメイン名のコンマ区切りリストに置き換えます。たとえば、.cluster.local,.svc,10.128.0.0/14,example.com を使用します。

    OpenShift Container Platform クラスターがハブクラスターでクラスターワイドプロキシーを設定して作成されている場合は、以下の条件が満たされると、クラスターワイドプロキシー設定値が環境変数として klusterlet アドオンの Pod に追加されます。

    • addon セクションの .spec.policyController.proxyPolicy が有効になり、OCPGlobalProxy に設定されます。
    • .spec.applicationManager.proxyPolicy が有効になり、CustomProxy に設定されます。

      注記: addon セクションの proxyPolicy のデフォルト値は Disabled です。

      次の proxyPolicy エントリーの例を参照してください。

      apiVersion: agent.open-cluster-management.io/v1
          kind: KlusterletAddonConfig
          metadata:
            name: clusterName
            namespace: clusterName
          spec:
            proxyConfig:
              httpProxy: http://pxuser:12345@10.0.81.15:3128
              httpsProxy: http://pxuser:12345@10.0.81.15:3128
              noProxy: .cluster.local,.svc,10.128.0.0/14, example.com
            applicationManager:
              enabled: true
              proxyPolicy: CustomProxy
            policyController:
              enabled: true
              proxyPolicy: OCPGlobalProxy
            searchCollector:
              enabled: true
              proxyPolicy: Disabled
            certPolicyController:
              enabled: true
              proxyPolicy: Disabled

重要: グローバルプロキシー設定は、アラートの転送には影響しません。クラスター全体のプロキシーを使用して Red Hat Advanced Cluster Management ハブクラスターのアラート転送を設定する場合は、その詳細を アラートの転送 で参照してください。

1.4. クラスターの klusterlet アドオン設定の変更

ハブクラスターを使用して設定を変更するには、KlusterletAddonConfig の設定を変更します。

KlusterletAddonConfig コントローラーは、klusterletaddonconfigs.agent.open-cluster-management.io Kubernetes リソースの設定に合わせて有効化/無効化される機能を管理します。KlusterletAddonConfig の次の例を確認してください。この例では、<2.x.0> の値は、使用しているサポート対象のバージョンに置き換えられています。

apiVersion: agent.open-cluster-management.io/v1
kind: KlusterletAddonConfig
metadata:
  name: <cluster-name>
  namespace: <cluster-name>
spec:
  clusterName: <cluster-name>
  clusterNamespace: <cluster-name>
  clusterLabels:
    cloud: auto-detect
    vendor: auto-detect
  applicationManager:
    enabled: true
  certPolicyController:
    enabled: true
  policyController:
    enabled: true
  searchCollector:
    enabled: false
  version: <2.x.0>

1.4.1. klusterlet アドオン設定の説明

以下の設定は、klusterletaddonconfigs.agent.open-cluster-management.io の Kubernetes リソースで更新できます。

Expand
表1.1 klusterlet アドオン設定の表リスト
設定名説明

applicationmanager

true または false

このコントローラーは、マネージドクラスターでアプリケーションのサブスクリプションライフサイクルを管理します。

certPolicyController

true または false

このコントローラーは、マネージドクラスターで証明書ベースのポリシーを有効にします。

policyController

true または false

このコントローラーは、マネージドクラスターの他の全ポリシールールを有効にします。

searchCollector

true または false

このコントローラーを使用して、リソースインデックスデータをハブクラスターに定期的に戻します。

1.4.2. ハブクラスターのコンソールを使用した変更

ハブクラスターを使用して、klusterletaddonconfigs.agent.open-cluster-management.io リソースの設定を変更できます。設定の変更には、以下の手順を実行します。

  1. ハブクラスターの Red Hat Advanced Cluster Management for Kubernetes コンソールにログインします。
  2. ハブクラスターコンソールのヘッダーメニューから Search アイコンを選択します。
  3. 検索パラメーターに、kind:klusterletaddonconfigs の値を入力します。
  4. 更新するエンドポイントリソースを選択します。
  5. spec セクションから、Edit を選択してコンテンツを編集します。
  6. 設定を変更します。
  7. Save を選択して変更を適用します。

1.4.3. ハブクラスターのコマンドラインを使用した変更

ハブクラスターを使用して設定を変更するには、cluster-name namespace へのアクセス権が必要です。以下の手順を実行します。

  1. ハブクラスターにログインします。
  2. 以下のコマンドを入力してリソースを編集します。

    kubectl edit klusterletaddonconfigs.agent.open-cluster-management.io <cluster-name> -n <cluster-name>
  3. spec セクションを検索します。
  4. 必要に応じて設定を変更します。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る