瞭解如何為主管叢集和 Tanzu Kubernetes 叢集進行 HTTP Proxy 設定。瞭解在 Tanzu Mission Control 中登錄主管叢集和 Tanzu Kubernetes 叢集時為其設定 HTTP Proxy 的工作流程。對於在 Tanzu Mission Control 中登錄為管理叢集的內部部署主管叢集,可以使用 HTTP Proxy 提取映像和傳輸容器流量。
在要用於 Tanzu Mission Control 的主管叢集和 Tanzu Kubernetes 叢集上進行 HTTP Proxy 設定的工作流程
若要在想要作為管理叢集向 Tanzu Mission Control 登錄的主管叢集上設定 HTTP Proxy,請遵循以下步驟:
- 在 vSphere 中,透過以下兩種方式在主管叢集上設定 HTTP Proxy:繼承 vCenter Server 的 HTTP Proxy 設定,或者透過命名空間管理叢集 API 或 DCLI 命令列在個別主管叢集上進行 Proxy 設定。
- 在 Tanzu Mission Control 中,使用您在 vSphere with Tanzu 中為主管叢集設定的 Proxy 設定建立 Proxy 組態物件。請參閱〈為在 vSphere with Tanzu 中執行的 Tanzu Kubernetes Grid 服務叢集建立 Proxy 組態物件〉。
- 在 Tanzu Mission Control 中,將主管叢集登錄為管理叢集時使用此 Proxy 組態物件。請參閱〈在 Tanzu Mission Control 中登錄管理叢集〉和〈完成在 vSphere with Tanzu 中登錄主管叢集〉。
為在 Tanzu Mission Control 中佈建或新增為工作負載叢集的 Tanzu Kubernetes 叢集設定 HTTP Proxy:
- 使用要用於 Tanzu Kubernetes 叢集的 Proxy 設定建立 Proxy 組態物件。請參閱〈為在 vSphere with Tanzu 中執行的 Tanzu Kubernetes Grid 服務叢集建立 Proxy 組態物件〉。
- 將 Tanzu Kubernetes 叢集佈建或新增為工作負載叢集時,使用該 Proxy 組態物件。請參閱〈在 vSphere with Tanzu 中佈建叢集〉和〈將工作負載叢集新增到 Tanzu Mission Control Management〉
為 vSphere with Tanzu 中的 Tanzu Kubernetes 叢集設定 HTTP Proxy
- 為個別 Tanzu Kubernetes 叢集進行 Proxy 設定。請參閱〈用於使用 Tanzu Kubernetes Grid 服務 v1alpha2 API 佈建 Tanzu Kubernetes 叢集的組態參數〉。如需組態 YAML 範例,請參閱〈用於使用 Tanzu Kubernetes Grid 服務 v1alpha2 API 佈建自訂 Tanzu Kubernetes 叢集的範例 YAML〉。
- 建立將套用至所有 Tanzu Kubernetes 叢集的全域 Proxy 組態。請參閱〈Tanzu Kubernetes Grid 服務 v1alpha2 API 的組態參數〉。
在新建立的 vSphere 7.0 Update 3 主管叢集上進行 Proxy 設定
對於在 vSphere 7.0 Update 3 環境中新建立的主管叢集,將從 vCenter Server 繼承 HTTP Proxy 設定。無論在 vCenter Server 上進行 HTTP Proxy 設定之前還是之後建立主管叢集,叢集都將繼承這些設定。
請參閱〈設定 DNS、IP 位址及 Proxy 設定〉,瞭解如何在 vCenter Server 上進行 HTTP Proxy 設定。
您也可以透過叢集管理 API 或 DCLI 覆寫個別主管叢集上繼承的 HTTP Proxy 組態。
由於繼承 vCenter Server Proxy 設定是新建立的 vSphere 7.0.3 主管叢集的預設組態,因此,如果主管叢集不需要 Proxy,但 vCenter Server 仍然需要,也可以使用叢集管理 API 或 DCLI 不繼承任何 HTTP Proxy 設定。
在升級到 vSphere 7.0 Update 3 的主管叢集上進行 Proxy 設定
如果將主管叢集升級到 vSphere 7.0 Update 3,則不會自動繼承 vCenter Server 的 HTTP Proxy 設定。在這種情況下,可以使用 vcenter/namespace-management/clusters
API 或 DCLI 命令列進行主管叢集 Proxy 設定。
使用叢集管理 API 在主管叢集上設定 HTTP Proxy
可以透過 vcenter/namespace-management/clusters
API 進行主管叢集 Proxy 設定。此 API 為主管叢集上的 Proxy 組態提供了三個選項:
API 設定 |
新建立的 vSphere 7.0.3 主管叢集 |
升級到 vSphere 7.0.3 的主管叢集 |
---|---|---|
VC_INHERITED | 這是新主管叢集的預設設定,您無需使用 API 進行主管叢集 Proxy 設定。可以只在 vCenter Server 上透過其管理介面進行 Proxy 設定。 | 使用此設定可將 HTTP Proxy 組態推送到升級至 vSphere 7.0.3 的主管叢集。 |
CLUSTER_CONFIGURED | 在以下任一情況下,使用此設定可覆寫從 vCenter Server 繼承的 HTTP Proxy 組態:
|
在以下任一情況下,使用此設定可為升級至 vSphere 7.0.3 的個別主管叢集設定 HTTP Proxy:
|
NONE | 當主管叢集直接連線到網際網路,而 vCenter Server 需要 Proxy 時,使用此設定。NONE 設定將使 主管叢集 無法繼承 vCenter Server 的 Proxy 設定。 |
若要為主管叢集設定 HTTP Proxy 或修改現有設定,請在 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
只需傳遞完整叢集識別碼中的 domain_c<number>
。例如,使用以下叢集識別碼中的 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 Proxy 設定
可以在以下 DCLI 命令中使用 CLUSTER_CONFIGURED 設定為主管叢集進行 HTTP Proxy 設定。
<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