瞭解如何為主管叢集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,請遵循以下步驟:

  1. 在 vSphere 中,透過以下兩種方式在主管叢集上設定 HTTP Proxy:繼承 vCenter Server 的 HTTP Proxy 設定,或者透過命名空間管理叢集 API 或 DCLI 命令列在個別主管叢集上進行 Proxy 設定。
  2. 在 Tanzu Mission Control 中,使用您在 vSphere with Tanzu 中為主管叢集設定的 Proxy 設定建立 Proxy 組態物件。請參閱〈為在 vSphere with Tanzu 中執行的 Tanzu Kubernetes Grid 服務叢集建立 Proxy 組態物件〉
  3. 在 Tanzu Mission Control 中,將主管叢集登錄為管理叢集時使用此 Proxy 組態物件。請參閱〈在 Tanzu Mission Control 中登錄管理叢集〉〈完成在 vSphere with Tanzu 中登錄主管叢集〉

為在 Tanzu Mission Control 中佈建或新增為工作負載叢集的 Tanzu Kubernetes 叢集設定 HTTP Proxy:

  1. 使用要用於 Tanzu Kubernetes 叢集的 Proxy 設定建立 Proxy 組態物件。請參閱〈為在 vSphere with Tanzu 中執行的 Tanzu Kubernetes Grid 服務叢集建立 Proxy 組態物件〉
  2. Tanzu Kubernetes 叢集佈建或新增為工作負載叢集時,使用該 Proxy 組態物件。請參閱〈在 vSphere with Tanzu 中佈建叢集〉〈將工作負載叢集新增到 Tanzu Mission Control Management〉

vSphere with Tanzu 中的 Tanzu Kubernetes 叢集設定 HTTP Proxy

使用以下方法之一為 vSphere with Tanzu 中的 Tanzu Kubernetes 叢集設定 Proxy:
備註: 如果使用 Tanzu Mission Control 管理 Tanzu Kubernetes 叢集,則無需透過 vSphere with Tanzu 中的叢集 YAML 檔案進行 Proxy 設定。將 Tanzu Kubernetes 叢集作為工作負載叢集新增到 Tanzu Mission Control 時,可以進行 Proxy 設定。

在新建立的 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 組態:

  • 主管叢集vCenter Server 位於不同的子網路中,需要使用不同的 Proxy 伺服器。
  • Proxy 伺服器使用自訂 CA 服務包。

在以下任一情況下,使用此設定可為升級至 vSphere 7.0.3 的個別主管叢集設定 HTTP Proxy:

  • 無法使用 vCenter Server Proxy,因為主管叢集vCenter Server 位於不同的子網路中,需要使用不同的 Proxy 伺服器。
  • Proxy 伺服器使用自訂 CA 服務包。
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-c50ClusterComputeResource:domain-c50:5bbb510f-759f-4e43-96bd-97fd703b4edb

使用 VC_INHERITEDNONE 設定時,請在命令中省略 "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