了解如何为 主管 和 Tanzu Kubernetes Grid 集群配置 HTTP 代理设置。了解在 Tanzu Mission Control 中注册 主管 和 Tanzu Kubernetes Grid 集群时为其配置 HTTP 代理的工作流。对于在 Tanzu Mission Control 中注册为管理集群的内部部署 主管,可以使用 HTTP 代理提取映像和传输容器流量。
在要用于 Tanzu Mission Control 的 主管 和 Tanzu Kubernetes 集群上配置 HTTP 代理设置的工作流
要在希望作为管理集群注册到 Tanzu Mission Control 的 主管 上配置 HTTP 代理,请执行以下步骤:
- 在 vSphere 中,通过以下两种方式在 主管 上配置 HTTP 代理:继承 vCenter Server 的 HTTP 代理设置,或者通过命名空间管理集群 API 或 DCLI 命令行在单个 主管 上配置代理设置。
- 在 Tanzu Mission Control 中,使用您在 vSphere with Tanzu 中为 主管 配置的代理设置创建代理配置对象。请参见为在 vSphere with Tanzu 中运行的 Tanzu Kubernetes Grid 服务集群创建代理配置对象。
- 在 Tanzu Mission Control 中,将 主管 注册为管理集群时使用此代理配置对象。请参见在 Tanzu Mission Control 中注册管理集群和完成在 vSphere with Tanzu 中注册主管集群。
要为在 Tanzu Mission Control 中置备或添加为工作负载集群的 Tanzu Kubernetes Grid 集群配置 HTTP 代理,请执行以下操作:
- 使用要用于 Tanzu Kubernetes 集群的代理设置创建代理配置对象。请参见为在 vSphere with Tanzu 中运行的 Tanzu Kubernetes Grid 服务集群创建代理配置对象。
- 将 Tanzu Kubernetes 集群置备或添加为工作负载集群时,使用该代理配置对象。请参见在 vSphere with Tanzu 中置备集群和将工作负载集群添加到 Tanzu Mission Control Management
为 vSphere with Tanzu 中的 Tanzu Kubernetes Grid 集群配置 HTTP 代理
- 为单个 Tanzu Kubernetes Grid 集群配置代理设置。请参见用于使用 Tanzu Kubernetes Grid 服务 v1alpha2 API 置备 Tanzu Kubernetes 集群的配置参数。有关配置 YAML 的示例,请参见用于使用 Tanzu Kubernetes Grid 服务 v1alpha2 API 置备自定义 Tanzu Kubernetes 集群的示例 YAML。
- 创建将应用于所有 Tanzu Kubernetes 集群的全局代理配置。请参见 Tanzu Kubernetes Grid 服务 v1alpha2 API 的配置参数。
在新创建的 vSphere 7.0 Update 3 及更高版本的 主管 上配置代理设置
对于在 vSphere 7.0 Update 3 及更高版本的环境中新创建的 主管,将从 vCenter Server 继承 HTTP 代理设置。无论在 主管 上配置 HTTP 代理设置之前还是之后创建 vCenter Server,集群都将继承这些设置。
请参见配置 DNS、IP 地址和代理设置,了解如何在 vCenter Server 上配置 HTTP 代理设置。
您也可以通过集群管理 API 或 DCLI 替代单个 主管 上继承的 HTTP 代理配置。
由于继承 vCenter Server 代理设置是新创建的 vSphere 7.0.3 主管 的默认配置,因此,如果 主管 不需要代理,但 vCenter Server 仍然需要,也可以使用集群管理 API 或 DCLI 不继承任何 HTTP 代理设置。
在升级到 vSphere 7.0 Update 3 及更高版本的 主管 上配置代理设置
如果将 主管 升级到 vSphere 7.0 Update 3 及更高版本,则不会自动继承 vCenter Server 的 HTTP 代理设置。在这种情况下,可以使用 vcenter/namespace-management/clusters
API 或 DCLI 命令行配置 主管 代理设置。
使用集群管理 API 在 主管 上配置 HTTP 代理
可以通过 vcenter/namespace-management/clusters
API 配置 主管 代理设置。此 API 为 主管 上的代理配置提供了三个选项:
API 设置 |
新创建的 vSphere 7.0.3 及更高版本的 主管 |
升级到 vSphere 7.0.3 及更高版本的 主管 |
---|---|---|
VC_INHERITED | 这是新 主管 的默认设置,您无需使用 API 配置 主管 代理设置。可以只在 vCenter Server 上使用其管理界面配置代理设置。 | 使用此设置将 HTTP 代理配置推送到已升级到 vSphere 7.0.3 及更高版本的 主管。 |
CLUSTER_CONFIGURED | 在以下任意一种情况下,使用此设置可以替代从 vCenter Server 继承的 HTTP 代理配置:
|
在以下任意一种情况下,使用此设置可为升级到 vSphere 7.0.3 及更高版本的单个 主管 配置 HTTP 代理:
|
NONE | 当 主管 直接连接到 Internet,而 vCenter Server 需要代理时,使用此设置。NONE 设置将使 主管 无法继承 vCenter Server 的代理设置。 |
要为 主管 设置 HTTP 代理或修改现有设置,请在 vCenter Server 的 SSH 会话中使用以下命令:
vc_address=<IP address> cluster_id=domain-c<number> session_id=$(curl -ksX POST --user '<SSO user name>:<password>' https://$vc_address/api/session | xargs -t) curl -k -X PATCH -H "vmware-api-session-id: $session_id" -H "Content-Type: application/json" -d '{ "cluster_proxy_config": { "proxy_settings_source": "CLUSTER_CONFIGURED", "http_proxy_config":"<proxy_url>" } }' https://$vc_address/api/vcenter/namespace-management/clusters/$cluster_id
只需传递完整集群 ID 中的 domain_c<number>
。例如,使用以下集群 ID 中的 domain-c50
:ClusterComputeResource:domain-c50:5bbb510f-759f-4e43-96bd-97fd703b4edb
。
使用 VC_INHERITED
或 NONE
设置时,请在命令中省略 "http_proxy_config:<proxy_url>"
。
要使用自定义 CA 包,请在命令中添加 "tlsRootCaBundle": "<TLS_certificate>
,并以纯文本形式提供 TSL CA 证书。
使用 DCLI 在 主管 上配置 HTTP 代理设置
可以在以下 DCLI 命令中使用 CLUSTER_CONFIGURED 设置为 主管 配置 HTTP 代理设置。
<dcli> namespacemanagement clusters update --cluster domain-c57 --cluster-proxy-config-http-proxy-config <proxy URL> --cluster-proxy-config-https-proxy-config <proxy URL> --cluster-proxy-config-proxy-settings-source CLUSTER_CONFIGURED