1.9. 在代理环境中创建集群
当 hub 集群通过代理服务器连接时,您可以创建 Red Hat OpenShift Container Platform 集群。
要成功创建集群,则必须满足以下情况之一:
- Red Hat Advanced Cluster Management for Kubernetes 与您要创建的受管集群具有私有网络连接,但 Red Hat Advanced Cluster Management 和受管集群使用代理访问互联网。
- 受管集群位于基础架构供应商上,但防火墙端口启用了从受管集群到 hub 集群的通信。
要创建使用代理配置的集群,请完成以下步骤:
通过在
install-config.yaml
文件中添加以下信息,在 hub 集群上配置集群范围的代理设置:apiVersion: v1 kind: Proxy baseDomain: <domain> proxy: httpProxy: http://<username>:<password>@<proxy.example.com>:<port> httpsProxy: https://<username>:<password>@<proxy.example.com>:<port> noProxy: <wildcard-of-domain>,<provisioning-network/CIDR>,<BMC-address-range/CIDR>
使用代理服务器的用户名替换
username
。使用密码替换
password
以访问您的代理服务器。将
proxy.example.com
替换为代理服务器的路径。使用与代理服务器的通信端口替换
port
。将
wildcard-of-domain
替换为应当绕过代理的域的条目。使用置备网络的 IP 地址和分配的 IP 地址(以 CIDR 表示)替换
provisioning-network/CIDR
。将
BMC-address-range/CIDR
替换为 BMC 地址和地址数(以 CIDR 表示)。添加前面的值后,设置将应用到集群。
- 通过完成创建集群的步骤来置备集群。请参阅创建集群以选择您的供应商。
1.9.1. 在现有集群附加组件上启用集群范围代理
您可以配置集群命名空间中的 KlusterletAddonConfig
,将代理环境变量添加到由 hub 集群管理的 Red Hat OpenShift Container Platform 集群的所有 klusterlet 附加组件 pod 中。
完成以下步骤,配置 KlusterletAddonConfig
,将 3 个环境变量添加到 klusterlet add-ons 的 pod 中:
-
打开位于需要添加代理的集群命名空间中的
KlusterletAddonConfig
文件。 编辑文件的
.spec.proxyConfig
部分,使其类似以下示例:spec proxyConfig: httpProxy: "<proxy_not_secure>" httpsProxy: "<proxy_secure>" noProxy: "<no_proxy>"
将
proxy_not_secure
替换为http
请求的代理服务器的地址。例如:http://192.168.123.145:3128
。使用
https
请求的代理服务器的地址替换proxy_secure
。例如:https://192.168.123.145:3128
。使用以逗号分隔的 IP 地址、主机名和域名列表替换
no_proxy
,其中不会通过代理路由流量。例如:.cluster.local,.svc,10.128.0.0/14,example.com
。spec.proxyConfig
是一个可选部分。如果使用在 Red Hat Advanced Cluster Management hub 集群上配置的集群范围内的代理创建 OpenShift Container Platform 集群,则集群范围的代理配置值会在满足以下条件时添加到 klusterlet add-ons 的 pod 中:-
addon
部分中的.spec.policyController.proxyPolicy
被启用并设置为OCPGlobalProxy
.spec.applicationManager.proxyPolocy
被启用并设置为CustomProxy
。注:
addon
部分中的proxyPolicy
默认值是Disabled
。请参见以下示例:
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 hub 集群设置警报转发,请参阅 转发警报 以了解更多详细信息。