本頁面提供相關指引,說明使用 Private Service Connect 時,如何為 Dataproc 叢集設定網路連線。本文說明不同 Dataproc 用途的 Private Service Connect 與虛擬私有雲對等互連互動。此外,本文也摘要說明 Private Google Access、Private Service Connect 和 Cloud NAT 之間的相似和相異之處。
總覽
Dataproc 叢集需要網路連線,才能存取Google Cloud API 和服務,例如 Dataproc API、Cloud Storage 和 Cloud Logging,以及使用者資源,例如其他虛擬私有雲網路或地端環境中的資料來源。
根據預設,使用映像檔版本 2.2
以上版本建立的 Dataproc 叢集,只會使用內部 IP 位址。Dataproc 會在僅限內部 IP 的叢集所用的區域子網路上,自動啟用私人 Google 存取權,以便連線至 Google API 和服務,不必連上公開網際網路。
如要提供更精細的網路控制,您可以將叢集設定為使用 Private Service Connect,透過虛擬私有雲網路中的私人端點,將流量轉送至支援的 Google API 和服務。這對安全性和法規遵循很有幫助。
常見的私人網路選項
本節說明 Private Google Access、Private Service Connect 和 Cloud NAT 的功能和差異。
私人 Google 存取權是 VM 連至 Google 公開服務的單向路徑,無需使用網際網路。這就像是從您所在社區 (虛擬私有雲子網路) 出發的專用道路出口,可直接通往 Google 服務商場,避開公共道路。街坊鄰居都能使用。如果使用映像檔版本
2.2
以上版本建立 Dataproc 無伺服器叢集,Dataproc 會自動在該叢集使用的區域子網路上啟用 Private Google Access。Private Service Connect 會為位於虛擬私有雲網路中的服務建立私人的雙向端點。這與從您的位置 (虛擬私有雲網路) 直接進入服務的專屬私人路徑類似。這個位址位於您的位置 (虛擬私有雲網路中的內部 IP 位址),只有您可以使用。
Cloud NAT 可讓具有私人 IP 位址的 VM 存取網際網路。
功能和差異
功能 | 私人 Google 存取權 (PGA) | Private Service Connect (PSC) |
---|---|---|
運作方式 | 將 VM 的流量導向至特殊的 Google IP 位址範圍 (private.googleapis.com )。 |
在虛擬私有雲網路中建立代表 Google 服務的轉送規則 (端點)。 |
IP 位址 | 您的 VM 會連線至 Google 擁有的 IP 位址。 | VM 會連線至您在虛擬私有雲網路中擁有的內部 IP 位址。 |
方向 | 僅限輸出:VM 會啟動與 Google 的連線。 | 雙向:VM 會連線至服務,且服務可以啟動回程流量。 |
範圍 | 為整個子網路啟用或停用。 | 部署為特定端點資源。 |
服務 | 僅連線至 Google API,例如 Cloud Storage、BigQuery 或 Dataproc API。 | 連線至 Google API、其他公司的服務,以及您自己的服務。 |
對於 Dataproc 而言,私人 Google 存取權是較簡單的傳統方法,可讓叢集 VM 與 Dataproc 控制平面通訊。Private Service Connect 是較新的彈性做法,可提供精細的控制項,特別是在複雜或多租戶網路中。
為什麼要使用 Private Service Connect?即使 Dataproc 叢集只有內部 IP 位址,且已啟用 Private Google Access (2.2+
映像檔版本叢集的預設設定),Private Service Connect 仍可提供下列優點:
您不必使用私人 Google 存取權共用的端點集連線至 Google API 和服務,而是可以透過 Private Service Connect,在虛擬私有雲網路中建立具有內部 IP 位址的私人端點,直接對應至特定 Google 服務。
您可以建立防火牆規則,只允許流量前往 Private Service Connect 端點 IP 位址。舉例來說,您可以設定規則,只允許 Dataproc 叢集 VM 的輸出流量前往 BigQuery 的 Private Service Connect 端點內部 IP 位址,並拒絕所有其他輸出流量。與使用私人 Google 存取權建立範圍較廣的防火牆規則相比,這種做法更安全。
在虛擬私有雲網路中使用 Private Service Connect 端點,可明確指定網路路徑,並輕鬆稽核安全性與合規性,因為傳送至 Cloud Storage 等服務的流量不會與其他 API 流量共用路徑。
私人和公開路徑
私人 Google 存取權、Private Service Connect 和 Cloud NAT 可讓具有 RFC 1918
位址的主機存取Google Cloud 服務。這類資源也能透過私人位址啟動與服務的連線。 Google Cloud RFC 1918
Google Cloud
評估不同連線選項時,重要區別在於使用連線的流量是否保持私密,或是否透過公用網際網路傳輸。
Private Google Access 和 Private Service Connect 可確保流量留在 Google 的私人網路。資料不會透過公開網際網路傳輸至 Google Cloud 服務,非常適合注重安全性和可預測效能的環境。
Cloud NAT 會連線至服務的公開端點,藉此存取服務。 Google Cloud 流量會透過 NAT 閘道離開虛擬私有雲網路,並透過網際網路傳輸。
各選項的運作方式
以下是各連線機制的說明:
方法 | 服務路徑 | 目的地端點 | 主要應用實例 |
---|---|---|---|
私人 Google 存取權 | Google 私人網路 | Google 專屬 IP 位址 (private.googleapis.com ) |
VM 可在子網路層級輕鬆存取 Google API,且存取方式為私人存取。 |
Private Service Connect | Google 私人網路 | 虛擬私有雲網路內的私人 IP 位址端點 | 精細且安全的 Google API、第三方或自有服務存取權。 |
Cloud NAT | 公開網際網路 | 服務公開 IP 位址 | 為具有私人 IP 位址的 VM 提供一般用途的連出網際網路存取權。 |
設定 Private Service Connect
如要搭配 Dataproc 叢集使用 Private Service Connect,您必須在 VPC 網路中,為 Dataproc 依附的所有 Google API 設定必要的 Private Service Connect 端點和 DNS。如需設定子網路和 DNS 的操作說明,請參閱「透過端點存取 Google API」一文。
視需要啟用對等互連
Private Service Connect 可提供許多 Google 服務的私人存取權,但您可能也需要啟用 VPC 對等互連,特別是在下列情況:
其他虛擬私有雲網路:Private Service Connect 會連線至Google 管理的服務,而非直接連線至其他客戶的虛擬私有雲網路。如果資料來源、自訂應用程式或其他服務與 Dataproc 叢集位於不同的虛擬私有雲網路,通常需要虛擬私有雲對等互連,才能在這些網路之間啟用私密通訊。
內部部署網路:如果 Dataproc 叢集會存取內部部署環境中的資料或服務,您需要透過 Cloud VPN 或 Cloud Interconnect 連線至內部部署網路,通常會搭配虛擬私有雲對等互連使用。
與 Google 服務進行全面內部通訊:Private Service Connect 可提供對已設定 Google 服務 (例如 Cloud Storage 和 BigQuery) 的私人存取權,但內部控制平面通訊或特定 Dataproc 功能可能需要與可存取廣泛 Google 服務的網路進行 VPC 對等互連,才能存取基礎 Google 基礎架構或其他 Google API。
存取其他虛擬私有雲網路中的資料來源:如果 Dataproc 工作會讀取或寫入資料來源 (例如 Cloud SQL、自行管理的資料庫和自訂應用程式),而這些資料來源位於不同的虛擬私有雲網路,您必須在 Dataproc 叢集虛擬私有雲網路與包含這些資料來源的虛擬私有雲網路之間建立虛擬私有雲對等互連。Private Service Connect 不會在客戶擁有的網路之間提供虛擬私有雲網路間的通訊。
混合式連線:在混合式雲端部署中,如果 Dataproc 叢集需要與內部部署資料中心的資源互動,就必須使用 VPC 對等互連,透過 Cloud VPN 或 Cloud Interconnect 將內部部署網路連線至 VPC 網路。 Google Cloud
排解 Private Service Connect 問題
如果 Dataproc 叢集無法建立 Private Service Connect (不含虛擬私有雲對等互連),或是發生連線問題,請按照下列步驟排解及解決問題:
確認必要的 API 存取權:
- 確認 Google Cloud 專案已啟用所有必要的 Google API。
驗證 Private Service Connect 端點設定:
確認已為叢集所需的所有 Google API (例如
dataproc.googleapis.com
、storage.googleapis.com
、logging.googleapis.com
、bigquery.googleapis.com
、compute.googleapis.com
) 正確設定 Private Service Connect 端點。從虛擬私有雲子網路中的 VM 使用
dig
或nslookup
等工具,確認必要服務的 DNS 記錄是否使用 Private Service Connect 端點,正確解析為虛擬私有雲網路中的私人 IP 位址。
檢查防火牆規則:
確認虛擬私有雲網路中的防火牆規則允許從 Dataproc 叢集執行個體連出至 Private Service Connect 端點。
如要使用共用虛擬私有雲,請確認主專案中已設定適當的防火牆規則。
查看 Dataproc 叢集記錄檔:
- 在 Cloud Logging 中查看叢集建立記錄,找出任何與網路相關的錯誤,例如
connection refused
、timeout
或「unreachable host
」。這些錯誤可能表示缺少路徑或防火牆規則有誤。檢查叢集執行個體的序列主控台記錄。
- 在 Cloud Logging 中查看叢集建立記錄,找出任何與網路相關的錯誤,例如
評估是否需要虛擬私有雲對等互連:
根據工作負載的依附元件,如果 Dataproc 叢集需要連線至非 Google 管理的資源 (例如位於不同 VPC 網路中的資料庫和內部部署伺服器),請建立 VPC 對等互連。
檢查 Dataproc 叢集互動的Google Cloud 服務網路需求。即使搭配 Private Service Connect 使用,部分服務仍可能有特定的對等互連需求。
奉行最佳做法
全面規劃網路架構:部署 Dataproc with Private Service Connect 前,請仔細設計網路架構,並考量所有隱含和明確的依附元件和資料流路徑。包括識別 Dataproc 叢集在佈建和運作期間互動的所有 Google API。
測試連線:在開發和暫存階段,徹底測試 Dataproc 叢集與所有必要服務和資料來源之間的網路連線。
使用 Network Intelligence Center:使用 Network Intelligence Center 工具 (例如「連線測試」),診斷及排解網路連線問題。 Google Cloud
後續步驟
- 進一步瞭解 Private Service Connect。
- 瞭解 VPC 網路對等互連。
- 探索 Dataproc 叢集網路設定。