klusterlet 附加组件
访问 klusterlet 附加组件的信息。
摘要
第 1 章 受管集群 klusterlet 高级配置 复制链接链接已复制到粘贴板!
使用 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
- iam-policy-controller
- governance-policy-framework
- search-collector
完成以下步骤,在安装 Red Hat Advanced Cluster Management 后为受管集群启用 klusterlet 附加组件:
创建一个类似于以下
KlusterletAddonConfig
的 YAML 文件,其spec
值代表附加组件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
policy-controller
附加组件分为两个附加组件:governance-policy-framework
和config-policy-controller
。因此,policyController
控制governance-policy-framework
和config-policy-controller
managedClusterAddons
。
-
将文件保存为
klusterlet-addon-config.yaml
。 在 hub 集群中运行以下命令来应用 YAML:
oc apply -f klusterlet-addon-config.yaml
oc apply -f klusterlet-addon-config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要验证在创建
KlusterletAddonConfig
后是否创建了已启用的managedClusterAddons
,请运行以下命令:oc get managedclusteraddons -n <cluster namespace>
oc get managedclusteraddons -n <cluster namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
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
完成以下步骤:
-
使用
AddonDeploymentConfig
API 创建配置,在 hub 集群上的特定命名空间中指定nodeSelector
和tolerations
。 根据以下模板,创建一个名为
addondeploymentconfig.yaml
的文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 完成的
AddOnDeployment
文件可能类似以下示例:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令以应用您创建的文件:
oc apply -f addondeploymentconfig
oc apply -f addondeploymentconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,使用您创建的配置作为附加组件的全局默认配置:
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"}}]}]'
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"}}]}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
addon-name
替换为您的附加组件名称。 -
将
config-name
替换为您刚才创建的AddonDeploymentConfig
的名称。 -
将
config-namespace
替换为您刚才创建的AddonDeploymentConfig
的命名空间。
-
将
您指定的 nodeSelector
和 tolerations
应用到每个受管集群的所有附加组件。
您还可以按照以下步骤覆盖特定受管集群中附加组件的全局默认 AddonDeploymentConfig
配置:
-
使用
AddonDeploymentConfig
API 创建另一个配置,以指定 hub 集群上的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>"} ]}]'
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>"} ]}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
managed-cluster
替换为您的受管集群名称 -
将
addon-name
替换为您的附加组件名称 -
将
config-namespace
替换为您刚才创建的AddonDeploymentConfig
的命名空间 -
将
config-name
替换为您刚才创建的AddonDeploymentConfig
的名称
-
将
您在 add-on ManagedClusterAddon
中引用的新配置会覆盖您之前在 ClusterManagementAddon
附加组件中定义的全局默认配置。
1.3. 在现有集群附加组件上启用集群范围代理 复制链接链接已复制到粘贴板!
您可以在集群命名空间中配置 KlusterletAddonConfig
,将代理环境变量添加到受管 Red Hat OpenShift Container Platform 集群的所有 klusterlet 附加组件 pod 中。完成以下步骤以配置 KlusterletAddonConfig
,将三个环境变量添加到 klusterlet 附加组件的 pod 中:
编辑位于需要代理的集群的
KlusterletAddonConfig
文件。您可以使用控制台查找资源,也可以使用以下命令在终端中编辑:oc -n <my-cluster-name> edit klusterletaddonconfig <my-cluster-name>
oc -n <my-cluster-name> edit klusterletaddonconfig <my-cluster-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注: 如果您只使用一个集群,则不需要命令末尾的
<my-cluster-name>
。使用以下命令:oc -n <my-cluster-name> edit klusterletaddonconfig
oc -n <my-cluster-name> edit klusterletaddonconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑文件的
.spec.proxyConfig
部分,使其类似以下示例。spec.proxyConfig
是一个可选部分:spec proxyConfig: httpProxy: "<proxy_not_secure>" httpsProxy: "<proxy_secure>" noProxy: "<no_proxy>"
spec proxyConfig: httpProxy: "<proxy_not_secure>"
1 httpsProxy: "<proxy_secure>"
2 noProxy: "<no_proxy>"
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果使用在 hub 集群上配置的集群范围内的代理创建 OpenShift Container Platform 集群,则集群范围的代理配置值会在满足以下条件时添加到 klusterlet add-ons 的 pod 中:
-
addon
部分中的.spec.policyController.proxyPolicy
被启用并设置为OCPGlobalProxy
。 .spec.applicationManager.proxyPolicy
被启用并设置为CustomProxy
。注:
addon
部分中的proxyPolicy
默认值是Disabled
。请参阅以下
proxyPolicy
条目示例:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
重要: 全局代理设置不会影响警报转发。要为使用集群范围代理的 Red Hat Advanced Cluster Management hub 集群设置警报转发,请参阅 转发警报 以了解更多详细信息。