本頁面說明如何為 VMware 專用的 Google Distributed Cloud (僅限軟體) 設定 Proxy 和防火牆規則。本頁內容適用於負責實作防火牆等資料安全防護系統的網路專家。如要進一步瞭解我們在 Google Cloud 內容中提及的常見角色和範例工作,請參閱「常見的 GKE Enterprise 使用者角色和工作」。
將 Proxy 位址加入許可清單
如果貴機構要求傳出流量必須通過 Proxy 伺服器,請在 Proxy 伺服器中將下列位址加入許可清單。請注意,您需要 www.googleapis.com
,而非 googleapis.com
:
- dl.google.com 1
- gcr.io
- www.googleapis.com
- accounts.google.com
- anthos.googleapis.com
- anthosgke.googleapis.com
- cloudresourcemanager.googleapis.com
- compute.googleapis.com
- connectgateway.googleapis.com
- container.googleapis.com
- gkeconnect.googleapis.com 2
- gkehub.googleapis.com
- gkeonprem.googleapis.com
- gkeonprem.mtls.googleapis.com
- iam.googleapis.com
- iamcredentials.googleapis.com
- kubernetesmetadata.googleapis.com
- logging.googleapis.com
- monitoring.googleapis.com
- oauth2.googleapis.com
- opsconfigmonitoring.googleapis.com
- securetoken.googleapis.com
- servicecontrol.googleapis.com
- serviceusage.googleapis.com
- storage.googleapis.com
- sts.googleapis.com
- releases.hashicorp.com (選用) 3
注意事項:
1 SDK 安裝程式需要 dl.google.com
。 Google Cloud
2 如果叢集是使用 Google Cloud 區域向車隊註冊,您需要將 REGION-gkeconnect.googleapis.com
(例如 us-central1-gkeconnect.googleapis.com
) 加入允許清單。如果未指定區域,叢集會使用全域 Connect 服務執行個體,您需要將 gkeconnect.googleapis.com
加入允許清單。如要找出叢集的車隊成員位置,請執行 gcloud container fleet memberships list
。詳情請參閱gkeConnect.location
。
3 如果您未使用管理工作站上的 Terraform 用戶端執行 terraform apply
等指令,則不需要將 releases.hashicorp.com
加入允許清單。如果您在管理工作站上使用 Terraform 用戶端,可以選擇將 releases.hashicorp.com
加入允許清單,以便執行 terraform version
指令,檢查您使用的 Terraform 用戶端版本是否為最新版本。
此外,如果 vCenter Server 具有外部 IP 位址,請在 Proxy 伺服器中將該位址加入許可清單。
管理員叢集的防火牆規則
管理員叢集 IP 位址取決於使用者叢集是否已啟用 Controlplane V2,以及叢集建立時的版本。
啟用 Controlplane V2 後,使用者叢集的控制層會在使用者叢集本身執行。如果未啟用 Controlplane V2,使用者叢集的控制層會在管理員叢集的一或多個節點上執行,這稱為 kubeception。
在 1.28 以上版本中,新的 HA 管理員叢集沒有外掛程式節點。
管理員叢集附加元件節點 (如有) 和 kubeception 使用者叢集控制層節點的 IP 位址,會列在管理員叢集 IP 區塊檔案中。管理員叢集控制層節點是在管理員叢集設定檔的 network.controlPlaneIPBlock.ips
區段中設定。
由於管理員叢集 IP 區塊檔案中的 IP 位址未指派給特定節點,因此您必須確保下表列出的所有防火牆規則都適用於管理員叢集可用的所有 IP 位址。
設定防火牆規則,允許下列流量。
寄件者 |
來源通訊埠 |
收件者 |
通訊埠 |
通訊協定 |
說明 |
---|---|---|---|---|---|
管理員叢集控制層節點 |
1024 - 65535 |
vCenter Server API |
443 |
TCP/https |
調整叢集大小。 |
管理員叢集外掛程式節點 |
1024 - 65535 |
vCenter Server API |
443 |
TCP/https |
管理使用者叢集生命週期。 |
管理員叢集外掛程式節點 |
32768- 60999 |
管理員叢集的 Kubernetes API 伺服器 VIP 使用者叢集 Kubernetes API 伺服器的 VIP |
443 |
TCP/https |
建立使用者叢集。 更新使用者叢集。 使用者叢集升級。 已刪除使用者叢集。 |
管理員叢集控制層節點 |
32768- 60999 |
gcr.io cloudresourcemanager.googleapis.com compute.googleapis.com iam.googleapis.com oauth2.googleapis.com serviceusage.googleapis.com storage.googleapis.com 管理員或使用者叢集啟用服務所需的任何 *.googleapis.com URL 使用者叢集 Kubernetes API 伺服器的 VIP 管理員叢集 Kubernetes API 伺服器的 VIP vCenter Server API 管理員叢集 F5 BIG_IP API 使用者叢集 F5 BIG_IP API 管理員叢集 NTP 伺服器 使用者叢集 NTP 伺服器 管理員叢集 DNS 伺服器 使用者叢集 DNS 伺服器 |
443 |
TCP/https |
預檢 (驗證)。 建立、更新或升級使用者叢集時。 建立、更新或升級管理員叢集時。 |
管理員叢集控制層節點 |
32768- 60999 |
使用者叢集 On-premises local Docker registry |
視註冊機構而定 |
TCP/https |
預檢 (驗證)。 如果使用者叢集設定為使用本機私密 Docker 登錄檔 (而非 gcr.io),則為必要條件。 建立或升級使用者叢集時。 建立或升級管理員叢集時。 |
管理員叢集控制層節點 |
32768- 60999 |
管理員叢集節點 使用者叢集節點 管理員叢集負載平衡器 VIP 使用者叢集負載平衡器 VIP |
icmp |
預檢 (驗證)。 建立、更新或升級使用者叢集時。 建立、更新或升級管理員叢集時。 |
|
管理員叢集控制層節點 |
32768- 60999 |
使用者叢集工作站節點 |
22 |
ssh |
預檢 (驗證)。 升級使用者叢集時。 升級管理員叢集時。 |
使用者叢集控制層節點 (僅限 kubeception) |
1024 - 65535 |
vCenter Server API |
443 |
TCP/https |
調整叢集大小。 |
使用者叢集控制層節點 (僅限 kubeception) |
1024 - 65535 |
cloudresourcemanager.googleapis.com gkeconnect.googleapis.com 或 REGION-gkeconnect.googleapis.com gkehub.googleapis.com |
443 |
TCP/https |
如要註冊車隊,必須具備存取權。請參閱允許清單網址清單後的 附註 2。 |
使用者叢集控制層節點 (僅限 kubeception) |
1024 - 65535 |
F5 BIG-IP API |
443 |
TCP/https |
|
使用者叢集控制層節點 (僅限 kubeception) |
1024 - 65535 |
地端本機 Docker 登錄檔 |
視註冊機構而定 |
TCP/https |
如果 Google Distributed Cloud 設定為使用本機私人 Docker 登錄檔 (而非 gcr.io),則必須提供這項資訊。 |
使用者叢集控制層節點 (僅限 kubeception) |
1024 - 65535 |
gcr.io oauth2.googleapis.com storage.googleapis.com 管理員叢集啟用服務所需的任何 *.googleapis.com 網址 |
443 |
TCP/https |
從公開 Docker 登錄檔下載映像檔。 如果使用私密 Docker 登錄檔,則不需要此步驟。 |
Cloud Logging 收集器,在管理員叢集的外掛程式節點上執行 |
1024 - 65535 |
oauth2.googleapis.com logging.googleapis.com servicecontrol.googleapis.com storage.googleapis.com www.googleapis.com |
443 |
TCP/https |
|
Cloud Metadata Collector,在管理員叢集外掛程式節點上執行 |
1024 - 65535 |
opsconfigmonitoring.googleapis.com |
443 |
TCP/https |
|
Cloud Monitoring Collector,在管理員叢集的外掛程式節點上執行 |
1024 - 65535 |
oauth2.googleapis.com monitoring.googleapis.com |
443 |
TCP/https |
|
管理員叢集控制層節點 |
1024 - 65535 |
F5 BIG-IP API |
443 |
TCP/https |
|
管理員叢集控制層節點 |
1024 - 65535 |
地端本機 Docker 登錄檔 |
視註冊機構而定 |
TCP/https |
如果 Google Distributed Cloud 設定為使用本機私人 Docker 登錄檔 (而非 gcr.io),則必須提供這項資訊。 |
管理員叢集控制層節點 |
1024 - 65535 |
gcr.io oauth2.googleapis.com storage.googleapis.com 管理員叢集啟用服務所需的任何 *.googleapis.com 網址 |
443 |
TCP/https |
從公開 Docker 登錄檔下載映像檔。 如果使用私密 Docker 登錄檔,則不需要。 |
管理員叢集工作站節點 |
1024 - 65535 |
管理員叢集工作站節點 |
全部 |
179 - bgp 443 - https 5473 - Calico/Typha 9443 - Envoy 指標 10250 - kubelet 節點通訊埠 |
所有工作站節點都必須是第 2 層鄰近節點,且不得有任何防火牆。 |
管理員叢集節點 |
1024 - 65535 |
管理員叢集 Pod CIDR |
全部 |
不限 |
外部流量會在第一個節點上進行 SNAT,然後傳送至 Pod IP。 |
管理員叢集工作站節點 |
全部 |
使用者叢集節點 |
22 |
ssh |
kubeception 必須使用這項屬性。透過 SSH 通道在 API 伺服器與 kubelet 之間通訊。如果是 Controlplane V2,則應略過這項操作。 |
管理員叢集節點 |
1024 - 65535 |
管理員叢集的 Seesaw 負載平衡器 VM IP |
20255、20257 |
TCP/http |
LB 設定推送和指標監控。如果您使用 Bundled LB Seesaw,才需要這個檔案。 |
管理員叢集節點 |
1024 - 65535 |
管理員叢集節點 |
7946 |
TCP/UDP |
MetalLB 健康狀態檢查。只有在使用隨附的 LB MetalLB 時才需要。 |
管理員叢集節點 |
全部 |
使用者叢集控制層 VIP |
443 |
https |
這是 Controlplane V2 的必要條件。允許管理員叢集中的節點和 Pod 與使用者叢集的 Kubernetes API 伺服器通訊。 |
管理員叢集節點 |
全部 |
使用者叢集控制層節點 |
443 |
https |
這是 Controlplane V2 的必要條件。允許管理員叢集中的節點和 Pod 使用使用者叢集控制層節點的 IP 位址,與使用者叢集的 Kubernetes API 伺服器通訊。 |
使用者叢集節點的防火牆規則
使用者叢集節點的 IP 位址會列在 IP 位址區塊檔案中。
與管理員叢集節點一樣,您不知道哪個節點會使用哪個 IP 位址。因此,使用者叢集節點中的所有規則都會套用至每個使用者叢集節點。
寄件者 |
來源通訊埠 |
收件者 |
通訊埠 |
通訊協定 |
說明 |
---|---|---|---|---|---|
使用者叢集控制層節點 (僅限 Controlplane V2) |
1024 - 65535 |
vCenter Server API |
443 |
TCP/https |
調整叢集大小。 |
使用者叢集控制層節點 (僅限 Controlplane V2) |
1024 - 65535 |
cloudresourcemanager.googleapis.com gkeconnect.googleapis.com 或 REGION-gkeconnect.googleapis.com gkehub.googleapis.com |
443 |
TCP/https |
如要註冊車隊,必須具備存取權。請參閱允許清單網址清單後的 附註 2。 |
使用者叢集控制層節點 (僅限 Controlplane V2) |
1024 - 65535 |
地端本機 Docker 登錄檔 |
視註冊機構而定 |
TCP/https |
如果 Google Distributed Cloud 設定為使用本機私人 Docker 登錄檔 (而非 gcr.io),則必須提供這項資訊。 |
使用者叢集控制層節點 (僅限 Controlplane V2) |
1024 - 65535 |
gcr.io oauth2.googleapis.com storage.googleapis.com 管理員叢集啟用服務所需的任何 *.googleapis.com 網址 |
443 |
TCP/https |
從公開 Docker 登錄檔下載映像檔。 如果使用私密 Docker 登錄檔,則不需要此步驟。 |
使用者叢集控制層節點 (僅限 Controlplane V2) |
1024 - 65535 |
F5 BIG-IP API |
443 |
TCP/https |
|
使用者叢集工作站節點 |
全部 |
gcr.io oauth2.googleapis.com storage.googleapis.com 這個叢集啟用服務所需的任何 *.googleapis.com 網址 |
443 |
TCP/https |
從公開 Docker 登錄檔下載映像檔。 如果使用私密 Docker 登錄檔,則不需要。 |
使用者叢集工作站節點 |
全部 |
F5 BIG-IP API |
443 |
TCP/https |
|
使用者叢集工作站節點 |
全部 |
在管理員叢集中執行的 pushprox 伺服器虛擬 IP。 |
8443 |
TCP/https |
Prometheus 流量。 |
使用者叢集工作站節點 |
全部 |
使用者叢集工作站節點 |
全部 |
22 - ssh 179 - bgp 443 - https 5473 - calico-typha 9443 - envoy 指標 10250 - kubelet 節點通訊埠」 |
所有工作站節點都必須是第 2 層鄰近節點,且不得有任何防火牆。 |
使用者叢集工作站節點 |
全部 |
使用者控制層 VIP |
443 |
TCP/https |
|
使用者叢集工作站節點 |
全部 |
使用者控制層 VIP |
8132 |
GRPC |
kubeception 必須使用這項屬性。Konnectivity 連線。如果是 Controlplane V2,則應略過這項操作。 |
管理員叢集節點 |
全部 |
使用者叢集 vCenter Server |
443 |
https |
允許管理員叢集管理使用者叢集的生命週期。 如果管理員和使用者叢集有不同的 vCenter Server,則為必要步驟。 |
使用者叢集節點 |
1024 - 65535 |
使用者叢集 Pod CIDR |
全部 |
不限 |
外部流量會在第一個節點上進行 SNAT,然後傳送至 Pod IP。 |
Cloud Logging Collector,在隨機使用者叢集工作站節點上執行 |
1024 - 65535 |
oauth2.googleapis.com logging.googleapis.com servicecontrol.googleapis.com www.googleapis.com |
443 |
TCP/https |
|
連線代理程式,會在隨機使用者叢集工作站節點上執行。 |
1024 - 65535 |
cloudresourcemanager.googleapis.com gkeconnect.googleapis.com 或 REGION-gkeconnect.googleapis.com gkehub.googleapis.com www.googleapis.com iam.googleapis.com iamcredentials.googleapis.com oauth2.googleapis.com securetoken.googleapis.com sts.googleapis.com accounts.google.com |
443 |
TCP/https |
|
Cloud Metadata Collector,在隨機使用者叢集工作站節點上執行 |
1024 - 65535 |
opsconfigmonitoring.googleapis.com kubernetesmetadata.googleapis.com |
443 |
TCP/https |
|
Cloud Monitoring 收集器,會在隨機使用者叢集工作站節點上執行 |
1024 - 65535 |
oauth2.googleapis.com monitoring.googleapis.com |
443 |
TCP/https |
|
使用者叢集節點 |
1024 - 65535 |
使用者叢集的 Seesaw 負載平衡器 VM IP |
20255、20257 |
TCP/http |
LB 設定推送和指標監控。如果您使用 Bundled LB Seesaw,才需要這個檔案。 |
使用者叢集節點 (enableLoadBalancer=true) |
1024 - 65535 |
使用者叢集節點 (enableLoadBalancer=true) |
7946 |
TCP/UDP |
MetalLB 健康狀態檢查。只有在使用隨附的 LB MetalLB 時才需要。 |
使用者叢集網路 |
全部 |
使用者叢集控制層 VIP |
443 |
TCP/https |
其餘元件的防火牆規則
這些規則適用於管理員叢集和使用者叢集節點表格中未列出的所有其他元件。
寄件者 |
來源通訊埠 |
收件者 |
通訊埠 |
通訊協定 |
說明 |
---|---|---|---|---|---|
管理員叢集 Pod CIDR |
1024 - 65535 |
管理員叢集 Pod CIDR |
全部 |
不限 |
Pod 間流量會直接使用 Pod CIDR 內的來源和目的地 IP 進行 L2 轉送。 |
管理員叢集 Pod CIDR |
1024 - 65535 |
管理員叢集節點 |
全部 |
不限 |
外部流量的回訪流量。 |
使用者叢集 Pod CIDR |
1024 - 65535 |
使用者叢集 Pod CIDR |
全部 |
不限 |
Pod 間流量會直接使用 Pod CIDR 內的來源和目的地 IP 進行 L2 轉送。 |
使用者叢集 Pod CIDR |
1024 - 65535 |
使用者叢集節點 |
全部 |
不限 |
外部流量的回訪流量。 |
客戶和應用程式使用者 |
全部 |
Istio Ingress 的 VIP |
80、443 |
TCP |
使用者叢集 Ingress 服務的使用者流量。 |
用來部署管理員工作站的跳板伺服器 |
暫時通訊埠範圍 |
vCenter Server API 目標叢集中主機的 ESXi VMkernel (管理) IP |
443 |
TCP/https |
使用 `cat /proc/sys/net/ipv4/ip_local_port_range` 檢查暫時通訊埠範圍。 |
管理員工作站 |
32768- 60999 |
gcr.io cloudresourcemanager.googleapis.com oauth2.googleapis.com storage.googleapis.com 這個叢集啟用服務所需的任何 *.googleapis.com URL |
443 |
TCP/https |
從公開 Docker 登錄檔下載 Docker 映像檔。 |
管理員工作站 |
32768- 60999 |
gcr.io cloudresourcemanager.googleapis.com compute.googleapis.com iam.googleapis.com oauth2.googleapis.com serviceusage.googleapis.com storage.googleapis.com 管理員或使用者叢集啟用服務所需的任何 *.googleapis.com URL 使用者叢集 Kubernetes API 伺服器的 VIP 管理員叢集 Kubernetes API 伺服器的 VIP vCenter Server API F5 BIG-IP API |
443 |
TCP/https |
預檢 (驗證)。 使用 |
管理員工作站 |
32768- 60999 |
vCenter Server API F5 BIG-IP API |
443 |
TCP/https |
建立管理員叢集。 建立使用者叢集。 |
管理員工作站 |
32768- 60999 |
目標叢集中主機的 ESXi VMkernel (管理) IP |
443 |
TCP/https |
管理員工作站會透過 ESXi 主機,將 OVA 上傳至資料儲存庫。 |
管理員工作站 |
32768- 60999 |
管理員叢集的 Kubernetes API 伺服器 VIP 使用者叢集 Kubernetes API 伺服器的 VIP |
443 |
TCP/https |
建立管理員叢集。 更新管理員叢集。 建立使用者叢集。 更新使用者叢集。 已刪除使用者叢集。 |
管理員工作站 |
32768- 60999 |
管理員叢集控制層節點和工作站節點 |
443 |
TCP/https |
建立管理員叢集。 控制層升級。 |
管理員工作站 |
32768- 60999 |
所有管理員叢集節點和所有使用者叢集節點 |
443 |
TCP/https |
網路驗證是 |
管理員工作站 |
32768- 60999 |
管理員叢集 Istio Ingress 的 VIP 使用者叢集 Istio Ingress 的 VIP |
443 |
TCP/https |
網路驗證是 |
管理員工作站 |
32768- 60999 |
oauth2.googleapis.com logging.googleapis.com monitoring.googleapis.com servicecontrol.googleapis.com storage.googleapis.com www.googleapis.com |
443 |
TCP/https |
Cloud Logging 和 Monitoring 存取權。 |
管理員工作站 |
32768- 60999 |
管理員和使用者叢集中的 Seesaw 負載平衡器 VM IP 管理員和使用者叢集的 Seesaw 負載平衡器 VIP |
20256、20258 |
TCP/http/gRPC |
負載平衡器的健康狀態檢查。如果您使用 Bundled LB Seesaw,才需要這個檔案。 |
管理員工作站 |
32768- 60999 |
叢集控制層的節點 IP |
22 |
TCP |
如果您需要從管理工作站透過 SSH 存取管理叢集控制平面,則必須執行這項操作。 |
管理員工作站 | 32768- 60999 | releases.hashicorp.com | 443 | TCP/https | (選用步驟) 請參閱網址許可清單後的 附註 3。 |
負載平衡器 VM IP |
32768- 60999 |
對應叢集的節點 IP |
10256:節點健康狀態檢查 |
TCP/http |
節點健康狀態檢查。healthCheckNodePort 適用於 externalTrafficPolicy 設為 Local 的服務。如果您使用 Bundled LB Seesaw,才需要這個檔案。 |
F5 Self-IP |
1024 - 65535 |
所有管理員和使用者叢集節點 |
30000 - 32767 |
不限 |
F5 BIG-IP 會透過虛擬伺服器 VIP,將資料平面流量負載平衡至 Kubernetes 叢集節點上的節點連接埠。 通常 F5 自我 IP 與 Kubernetes 叢集節點位於相同的網路/子網路。 |