アドオン
第1章 アドオンの概要 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Management for Kubernetes アドオンは、パフォーマンスの一部の領域を改善し、アプリケーションを強化する機能を追加できます。以下のセクションでは、Red Hat Advanced Cluster Management で使用できるアドオンの概要を説明します。
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
- iam-policy-controller
- governance-policy-framework
- search-collector
Red Hat Advanced Cluster Management のインストール後に、マネージドクラスターの klusterlet アドオンを有効にするには、以下のステップを実行します。
次の
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 iamPolicyController: enabled: true policyController:1 enabled: true searchCollector: enabled: true- 1
policy-controllerアドオンは、governance-policy-frameworkとconfig-policy-controllerの 2 つのアドオンに分かれています。その結果、policyControllerはgovernance-policy-frameworkとconfig-policy-controllermanagedClusterAddonsを制御します。
-
ファイルは
klusterlet-addon-config.yamlとして保存します。 ハブクラスターで次のコマンドを実行して、YAML を適用します。
oc apply -f klusterlet-addon-config.yamlKlusterletAddonConfigの作成後に、有効なmanagedClusterAddonsが作成されたかどうかを確認するには、次のコマンドを実行します。oc get managedclusteraddons -n <cluster namespace>
1.2. klusterlet アドオンの nodeSelectors と tolerations を設定する リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Management では、次の klusterlet アドオンの nodeSelector と tolerations を設定できます。
- application-manager
- cert-policy-controller
- cluster-proxy
- config-policy-controller
- governance-policy-framework
- hypershift-addon
- iam-policy-controller
- managed-serviceaccount
- observability-controller
- search-collector
- submariner
- volsync
- work-manager
以下の手順を実行します。
-
AddonDeploymentConfigAPI を使用して、Red Hat Advanced Cluster Management インストールに使用した namespace 内のnodeSelectorとtolerationsを指定するための設定を作成します。 以下のテンプレートに基づいて、
addondeploymentconfig.yamlという名前のファイルを作成します。apiVersion: addon.open-cluster-management.io/v1alpha1 kind: AddOnDeploymentConfig metadata: name: config-name1 namespace: config-name-space2 spec: nodePlacement: nodeSelector: node-selector3 tolerations: tolerations4 完成した
AddOnDeploymentファイルは次の例のようになります。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次のコマンドを実行して、作成したファイルを適用します。
oc apply -f addondeploymentconfig次のコマンドを実行して、作成した設定をアドオンのグローバルなデフォルト設定として使用します。
oc patch clustermanagementaddons <addon-name> --type='json' -p='[{"op":"add", "path":"/spec/supportedConfigs", "value":[{"group":"addon.open-cluster-management.io","resource":"addondeploymentconfigs", "defaultConfig":{"name":"deploy-config","namespace":"open-cluster-management-hub"}}]}]'-
addon-nameは、アドオン名に置き換えます。 -
config-nameは、上記で作成したAddonDeploymentConfigの名前に置き換えます。 -
config-namespaceは、上記で作成したAddonDeploymentConfigの namespace に置き換えます。
-
指定した nodeSelector と tolerations は、各マネージドクラスター上のすべてのアドオンに適用されます。
次の手順を使用して、特定のマネージドクラスター上におけるアドオンのグローバルデフォルトの AddonDeploymentConfig 設定をオーバーライドすることもできます。
-
AddonDeploymentConfigAPI を使用して別の設定を作成し、ハブクラスター上のnodeSelectorとtolerationsを指定します。 作成した新しい設定を、マネージドクラスター上のアドオン
ManagedClusterAddonにリンクします。oc -n <managed-cluster> patch managedclusteraddons <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の名前空間に置き換えます。 -
config-nameを、作成したばかりのAddonDeploymentConfigの名前に置き換えます。
-
アドオン ManagedClusterAddon で参照した新しい設定は、ClusterManagementAddon アドオンで以前に定義したグローバルなデフォルト設定をオーバーライドします。
1.3. 既存のクラスターアドオンでクラスター全体のプロキシーを有効にする リンクのコピーリンクがクリップボードにコピーされました!
クラスター namespace で KlusterletAddonConfig を設定して、管理対象の Red Hat OpenShift Container Platform クラスターのすべての klusterlet アドオン Pod にプロキシー環境変数を追加できます。KlusterletAddonConfig が 3 つの環境変数を klusterlet アドオンの Pod に追加するように設定するには、以下の手順を実行します。
プロキシーが必要なクラスターの namespace にある
KlusterletAddonConfigファイルを編集します。コンソールを使用してリソースを見つけるか、ターミナルから次のコマンドを使用して編集できます。oc -n <my-cluster-name> edit klusterletaddonconfig <my-cluster-name>注記: 1 つのクラスターのみで作業している場合、コマンドの最後に
<my-cluster-name>は必要ありません。以下のコマンドを使用します。oc -n <my-cluster-name> edit klusterletaddonconfigファイルの
.spec.proxyConfigセクションを編集して、以下の例のようにします。spec.proxyConfigは任意のセクションです。spec proxyConfig: httpProxy: "<proxy_not_secure>"1 httpsProxy: "<proxy_secure>"2 noProxy: "<no_proxy>"3 OpenShift Container Platform クラスターがハブクラスターでクラスターワイドプロキシーを設定して作成されている場合は、以下の条件が満たされると、クラスターワイドプロキシー設定値が環境変数として klusterlet アドオンの Pod に追加されます。
-
addonセクションの.spec.policyController.proxyPolicyが有効になり、OCPGlobalProxyに設定されます。 .spec.applicationManager.proxyPolocyが有効になり、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 iamPolicyController: enabled: true proxyPolicy: Disabled
-
重要: グローバルプロキシー設定は、アラートの転送には影響しません。クラスター全体のプロキシーを使用して Red Hat Advanced Cluster Management ハブクラスターのアラート転送を設定する場合は、その詳細を アラートの転送 で参照してください。