私人 IP 環境

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

本頁面說明私人 IP Cloud Composer 環境。

對於私人 IP 環境,Cloud Composer 只會為環境中的代管 Google Kubernetes Engine 和 Cloud SQL VM 指派私人 IP (RFC 1918) 位址,使得這些代管 VM 無法從公開網際網路存取。您也可以選擇使用私人使用的公開 IP 位址IP 偽裝代理程式,以節省 IP 位址空間並使用非 RFC 1918 位址。

根據預設,在私人 IP 環境中,Cloud Composer 工作流程無法存取外部網際網路,但仍可透過 Google 的私人網路存取 Google Cloud API 和服務。

虛擬私人雲端原生 GKE 叢集

當您建立環境時,Cloud Composer 會將環境的資源分配至 Google 代管的用戶群專案和客戶專案。

針對私人 IP 環境,Cloud Composer 會在客戶專案中,為您的環境建立虛擬私有雲原生 GKE 叢集。

虛擬私有雲原生叢集會使用虛擬私有雲網路內建的別名 IP 轉送功能,讓虛擬私有雲可為 pod 管理轉送。使用虛擬私人雲端原生叢集時,GKE 會自動選擇次要範圍。如有特定網路需求,您也可以在建立環境時,為 GKE Pod 和 GKE 服務設定次要範圍

私人 IP Cloud Composer 環境

您可以在建立環境時選取私人 IP 環境。使用私人 IP 即表示環境中的 GKE 和 Cloud SQL VM 未獲指派公開 IP 位址,且只能透過 Google 的內部網路通訊。

建立私人 IP 環境時,環境的 GKE 叢集會設為私人叢集,Cloud SQL 執行個體則會設為私人 IP

Cloud Composer 會在客戶專案的虛擬私有雲網路和用戶群專案的虛擬私有雲網路之間建立對等互連連線。

環境啟用私人 IP 後,環境 GKE 叢集和 Cloud SQL 資料庫之間的 IP 流量就不會公開,將工作流程與公開網際網路隔離開來。

這一層額外安全防護會影響您連線至這些資源和環境存取外部資源的方式。使用私人 IP 不會影響您透過公開 IP 存取 Cloud Storage 或 Airflow 網路伺服器的方式。

GKE 叢集

使用私人 GKE 叢集可讓您控管叢集控制層的存取權 (叢集節點沒有公開 IP 位址)。

建立私人 IP Cloud Composer 環境時,您必須指定是否要將控制平面的存取權設為公開,並提供其 IP 範圍。控制層 IP 範圍不得與虛擬私人雲端網路中的任何子網路重疊。

選項 說明
停用公開端點存取權 如要連線至叢集,您必須從與私人 IP 環境位在相同地區和相同虛擬私有雲網路的 VM 進行連線。用來連線至叢集的 VM 執行個體需要以下存取權範圍允許所有 Cloud API 的完整存取權
您可以透過該 VM 在環境叢集中執行 kubectl 指令
啟用公開端點存取權和主要執行個體授權網路 在這種設定中,叢集節點會透過 Google 的私人網路與控制層通訊。節點可存取環境和授權網路中的資源。您可以在 GKE 中新增授權網路
在授權網路中,您可以在環境叢集中執行 kubectl 指令

Cloud SQL

Cloud SQL 執行個體沒有公開 IP 位址,因此私人 IP 環境中的 Cloud SQL 流量不會暴露在公開網際網路中。

Cloud Composer 會將 Cloud SQL 設為接受透過私人服務存取權連入的連線。如要存取虛擬私人雲端網路中的 Cloud SQL 執行個體,您可以使用其私人 IP 位址。

工作流程的公開網際網路存取權

運算子和作業如果必須存取未獲授權網路或公開網際網路中的資源,則可能會失敗。舉例來說,Dataflow Python 作業需要公開網際網路連線,才能從 pip 下載 Apache Beam。

您必須使用 Cloud NAT,才能讓沒有外部 IP 位址的 VM 和私人 GKE 叢集連線至網際網路。

如要使用 Cloud NAT,請為私人 IP Cloud Composer 環境所屬的虛擬私人雲端網路和地區,透過 Cloud Router 建立 NAT 設定

後續步驟