本頁說明如何建立具有內部 IP 位址的 Cloud Data Fusion 執行個體。您可以在虛擬私有雲網路或Shared VPC網路中建立執行個體。
私有 Cloud Data Fusion 執行個體具有下列優點:
系統會透過 Google Cloud 專案中的私人虛擬私有雲網路,建立與執行個體的連線。網路流量不會經過公開網際網路。
由於地端部署網路透過 Cloud VPN 或 Cloud Interconnect 連線至Google Cloud 虛擬私有雲網路,因此執行個體可以連線至地端部署資源,例如關聯式資料庫。您可以在私人網路上安全存取地端部署資源 (例如資料庫),不必開放存取 Google Cloud。
目標
- 設定虛擬私有雲網路或 Shared VPC 網路。
- 分配 IP 範圍,用於在租戶專案中部署 Cloud Data Fusion 執行個體。
- 建立 Cloud Data Fusion 私人執行個體。
- 在包含 Cloud Data Fusion 執行個體的 VPC,以及包含相關聯租戶專案的 VPC 之間,設定虛擬私有雲網路對等互連。
- 如果是 Shared VPC 網路,請設定 Identity and Access Management (IAM) 權限。
- 如果私人執行個體使用 Cloud Data Fusion 6.2.0 版或更早版本,請建立防火牆規則。
- 在 Managed Service for Apache Spark 子網路上啟用 Private Google Access,讓不同 Google Cloud 服務彼此進行內部通訊。
事前準備
- 如要瞭解 Cloud Data Fusion 的部署架構,請參閱「網路」。
設定虛擬私有雲網路
如果尚未建立,請建立虛擬私有雲網路或Shared VPC 網路。
如要設定虛擬私有雲網路,您必須分配 IP 位址範圍。
分配 IP 範圍
虛擬私有雲網路
如果您未使用 Shared VPC 網路,建立執行個體時,Cloud Data Fusion 會預設分配 IP 範圍。
Shared VPC 網路
如要使用 Shared VPC,您必須為 Cloud Data Fusion 執行個體分配 IP 範圍。
如要為 Cloud Data Fusion 執行個體分配 IP 範圍,請按照下列步驟操作:
前往 Google Cloud 控制台的「VPC networks」(虛擬私有雲網路) 頁面。
在「Name」(名稱) 欄中,按一下要建立 Cloud Data Fusion 私人執行個體的虛擬私有雲網路。
「虛擬私有雲網路詳細資料」頁面隨即開啟。
按一下「私人服務連線」。如果出現提示,請按一下「啟用 API」來啟用 Service Networking API。

按一下「Allocate IP range」(分配 IP 範圍)。
為 IP 範圍命名。
在「IP range」(IP 範圍) 中,按一下「Automatic」(自動)。
指定前置碼大小為
22。按一下「Allocate」(分配)。

建立私人執行個體
在虛擬私有雲網路或 Shared VPC 網路中,建立私人的 Cloud Data Fusion 執行個體。
虛擬私有雲網路
如要在虛擬私有雲網路中建立執行個體,請使用Google Cloud 控制台或 cURL。
如果您使用 Google Cloud 控制台建立私人執行個體,Cloud Data Fusion 會預設分配 /22 IP 位址範圍。如要選擇其他 IP 範圍,請使用 cURL 指令。
控制台
前往「建立 Data Fusion 執行個體」頁面。
輸入執行個體的名稱和說明。
選取要建立執行個體的「Region」(區域)。
指定要用於在 Managed Service for Apache Spark 中執行 Cloud Data Fusion 管道的 Managed Service for Apache Spark 服務帳戶。系統會預先選取預設的 Compute Engine 帳戶。
展開「Advanced Options」(進階選項) 選單,然後按一下「Enable Private IP」(啟用私人 IP)。
在「Network」(網路) 欄位中,選擇要建立執行個體的網路。
點按「Create」(建立)。執行個體建立程序最多需要 30 分鐘才能完成。
cURL
為方便起見,您可以匯出下列變數,也可以直接將這些值代入下列指令:
export PROJECT=PROJECT_ID
export LOCATION=REGION
export DATA_FUSION_API_NAME=datafusion.googleapis.com
如要建立執行個體,請呼叫其 create() 方法:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://$DATA_FUSION_API_NAME/v1/projects/$PROJECT/locations/$LOCATION/instances?instance_id=INSTANCE_ID -X POST -d '{"description": "Private CDF instance created through REST.", "type": "ENTERPRISE", "privateInstance": true, "networkConfig": {"network": "NETWORK_NAME", "ipAllocation": "IP_RANGE"}}'
更改下列內容:
INSTANCE_ID:新執行個體應取得的 ID 字串。NETWORK_NAME:要在其中建立私人執行個體的虛擬私有雲網路名稱。IP_RANGE:您分配的 IP 範圍。如要在Google Cloud 控制台中找出 IP 範圍,請依序前往「VPC network details」(虛擬私有雲網路詳細資料) >「Private service connection」(私有服務連線) >「Internal IP range」(內部 IP 範圍)。
Shared VPC 網路
如要在 Shared VPC 網路中建立執行個體,請使用 cURL,而非Google Cloud 控制台。
cURL
為方便起見,您可以匯出下列變數。 或者,您也可以直接在下列指令中替換這些值:
export PROJECT=PROJECT_ID export LOCATION=REGION export DATA_FUSION_API_NAME=datafusion.googleapis.com
如要建立執行個體,請呼叫其 create() 方法:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://$DATA_FUSION_API_NAME/v1/projects/$PROJECT/locations/$LOCATION/instances?instanceId=INSTANCE_ID -X POST -d '{"description": "Private CDF instance created through REST.", "type": "ENTERPRISE", "privateInstance": true, "networkConfig": {"network": "projects/SHARED_VPC_HOST_PROJECT_ID/global/networks/NETWORK_NAME", "ipAllocation": "IP_RANGE"}}'
更改下列內容:
INSTANCE_ID:新執行個體應取得的 ID 字串。SHARED_VPC_HOST_PROJECT_ID:代管 Shared VPC 網路的專案 ID。NETWORK_NAME:要在其中建立私人執行個體的虛擬私有雲網路名稱。IP_RANGE:您分配的 IP 範圍。 如要在 Google Cloud 控制台中找出 IP 範圍,請依序前往「VPC network details」(虛擬私有雲網路詳細資料) 頁面 >「Private service connection」(私人服務連線) >「Internal IP range」(內部 IP 範圍)。
設定虛擬私有雲網路對接
您在設計環境中使用的 Cloud Data Fusion 服務 (例如 Wrangler、連線管理員和結構定義驗證) 會從租戶專案虛擬私有雲發起網路連線,連至來源系統。Cloud Data Fusion 會使用 VPC 網路對等互連,建立與含有執行個體的虛擬私有雲網路或 Shared VPC 的網路連線。透過虛擬私有雲網路對等互連,Cloud Data Fusion 就能使用您自己的虛擬私有雲及其控制項,透過內部 IP 位址存取網路中的資源。如要連線至其他網路中的資源,請參閱連線用途的步驟。
下一節說明如何在網路與 Cloud Data Fusion 租戶專案網路之間建立對等互連設定。
取得租戶專案 ID
如要建立對等互連設定,您需要租戶專案 ID。
前往 Cloud Data Fusion 的「Instances」(執行個體) 頁面。
在「執行個體名稱」欄中選取執行個體。
在「執行個體詳細資料」頁面,複製「租戶專案 ID」,在後續步驟中建立對等互連連線時,需要這個 ID。
建立對接連線
前往「虛擬私有雲網路對等互連」(VPC 網路對等互連) 頁面。
依序點選「建立連結」>「繼續」。
在隨即開啟的「建立對等互連連線」頁面中,執行下列操作:
- 輸入對等互連連線的「Name」(名稱)。
- 在「您的虛擬私有雲網路」中,選取包含 Cloud Data Fusion 執行個體的網路。
- 在「對等互連虛擬私有雲網路」中,選取「在其他專案中」。
- 在「專案 ID」部分,輸入您先前在本教學課程中找到的租戶專案 ID。
在「虛擬私有雲網路名稱」部分,選取網路或輸入 INSTANCE_REGION-INSTANCE_ID。
更改下列內容:
- INSTANCE_REGION:您建立 Cloud Data Fusion 執行個體的區域。
- INSTANCE_ID:Cloud Data Fusion 執行個體的 ID。
選取對等互連連線的網際網路通訊協定版本,在虛擬私有雲網路和對等互連虛擬私有雲網路之間交換 IPv4 和 IPv6 路徑。詳情請參閱「虛擬私有雲網路對等互連」。
選取「匯出自訂路徑」,即可將自訂路徑從虛擬私有雲網路匯出至租戶虛擬私有雲網路。
選擇是否允許將採用公開 IPv4 的子網路路徑匯入或匯出虛擬私有雲網路。
點選「建立」。
虛擬私有雲網路對等互連會在建立後不久生效。
設定 IAM 權限
虛擬私有雲網路
略過這個步驟,直接前往「建立防火牆規則」。
Shared VPC 網路
如果您在 Shared VPC 網路中建立 Cloud Data Fusion 執行個體,請務必將 Compute 網路使用者角色授予下列服務帳戶。如要授予所有子網路的權限,請將角色授予 Shared VPC 主專案。
如要進一步控管存取權,請改為將角色授予特定子網路,並在主專案中授予網路檢視者角色。
- Cloud Data Fusion 服務帳戶:
service-PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com - Managed Service for Apache Spark 服務帳戶:
service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com
PROJECT_NUMBER 是包含 Cloud Data Fusion 執行個體的Google Cloud 專案編號。
詳情請參閱授予必要服務帳戶存取權。
建立防火牆規則
在虛擬私有雲網路上建立防火牆規則,允許來自您建立私有 Cloud Data Fusion 執行個體時指定 IP 範圍的輸入 SSH 連線。
如果 Cloud Data Fusion 版本低於 6.2.0,就必須執行這個步驟。可讓 Cloud Data Fusion 與執行管道的 Managed Service for Apache Spark 叢集進行通訊。
您可以使用 Google Cloud 控制台或 gcloud CLI 建立防火牆規則。
控制台
請參閱「建立防火牆規則」。
gcloud
請執行下列指令:
gcloud compute firewall-rules create FIREWALL_NAME-allow-ssh --allow=tcp:22 --source-ranges=IP_RANGE --network=NETWORK_NAME --project=PROJECT_ID
更改下列內容:
FIREWALL_NAME:要建立的防火牆規則名稱。IP_RANGE:您分配的 IP 範圍。NETWORK_NAME:防火牆規則所附加的網路名稱。這是您建立私人執行個體時所用的虛擬私有雲網路名稱。PROJECT_ID:託管虛擬私有雲網路的專案 ID。
連結用途的步驟
以下各節說明私人執行個體的連線相關用途。
啟用 Private Google Access
如要透過內部 IP 位址存取資源,Cloud Data Fusion 必須建立 Managed Service for Apache Spark 叢集,並在具有 Private Google Access 的子網路中執行資料管道。您必須為包含 Managed Service for Apache Spark 叢集的子網路啟用 Private Google Access。
- 如果 Managed Service for Apache Spark 叢集啟動的區域只有一個子網路,叢集就會在該子網路中啟動。
如果區域中有多個子網路,您必須設定 Cloud Data Fusion,選取具有 Private Google Access 的子網路,才能啟動 Managed Service for Apache Spark 叢集。
如要為子網路啟用 Private Google Access,請參閱Private Google Access 設定。
選用:連結至其他來源
在 Cloud Data Fusion 中建立私人執行個體後,即可連線至其他來源,例如下列用途:
- 在其他虛擬私有雲網路中執行的地端部署資料庫和系統
- 以私人模式在自有網路中執行的其他 Google Cloud 服務,例如 Cloud SQL
- 公開網際網路上的來源
選用:啟用 DNS 對等互連
在下列情況下啟用 DNS 對等互連:
- Cloud Data Fusion 透過主機名稱 (而非 IP 位址) 連線至系統
- 如果目標系統部署在負載平衡器後方,例如某些 SAP 部署作業
後續步驟
- 瞭解 Cloud Data Fusion 的安全性概念。
- 瞭解如何連線至外部網路中的資源。
- 瞭解其他重要的 Cloud Data Fusion 概念和功能。
- 請參閱 Cloud Data Fusion 定價。