瞭解如何為 主管 叢集和 TKG 叢集設定 HTTP Proxy 設定,以及向 Tanzu Mission Control 登錄 主管 叢集和 TKG 叢集時設定 Proxy 的工作流程。

您可以透過 vSphere Client、叢集管理 API 或 DCLI 命令為 主管 設定 Proxy。如果您需要處理來自 主管 外部網路的容器流量或映像提取作業,則可以使用 Proxy。對於在 Tanzu Mission Control 中登錄為管理叢集的內部部署 主管,可以使用 HTTP 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 設定。

您也可以透過 vSphere Client、叢集管理 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 設定。在這種情況下,可以使用 vSphere Client、vcenter/namespace-management/clusters API 或 DCLI 命令列為 主管 進行 Proxy 設定。

vSphere IaaS control plane 中的 TKG 叢集設定 HTTP Proxy

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

使用 vSphere Client主管 上設定 HTTP Proxy 設定

瞭解如何透過 vSphere Client主管 設定 HTTP Proxy 設定。可以在個別 主管 上覆寫從 vCenter Server 繼承的 Proxy 設定,也可以選擇完全不使用任何 Proxy 設定。

必要條件

  • 確認您在叢集上有修改叢集範圍的組態權限。

程序

  1. vSphere Client 中,導覽至工作負載管理
  2. 主管下,選取 主管,然後選取設定
  3. 選取網路,展開 Proxy 組態,然後按一下編輯
  4. 選取 [在主管上設定 Proxy 設定],然後輸入 Proxy 設定。
    選項 說明
    TLS 憑證 用於驗證 Proxy 憑證的 Proxy TLS 根 CA 服務包。以純文字形式輸入該服務包。
    從 Proxy 排除的主機和 IP 位址 不需要 Proxy 伺服器且可以直接存取的以逗點分隔的 IPv4 位址、FQDN 或網域名稱清單。
    HTTPS 組態 HTTPS 設定,例如 URL、連接埠、使用者名稱和密碼。
    HTTP 組態 HTTP 設定,例如 URL、連接埠、使用者名稱和密碼。
  5. 按一下確定

結果

在此 主管 上設定的 Proxy 設定將覆寫從 vCenter Server 繼承的設定。

使用叢集管理 API 和 DCLI 為 主管 設定 HTTP Proxy

可以透過 vcenter/namespace-management/clusters API 或 DCLI 設定 主管 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 憑證。

對於 HTTPS Proxy 設定,請使用以下命令:
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", "https_proxy_config":"<proxy_url>" } }' 
https://$vc_address/api/vcenter/namespace-management/clusters/$cluster_id

使用 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

主管 和 TKG 叢集上為 Tanzu Mission Control 設定 HTTP Proxy 設定

若要在想要作為管理叢集向 Tanzu Mission Control 登錄的 主管 上設定 HTTP Proxy,請遵循以下步驟:

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

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

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