创建启用了 VPC 对等互连的专用实例

本页面介绍了如何创建 Cloud Data Fusion 实例和 内部 IP 地址。您可以在 VPC 网络或共享 VPC 网络中创建实例。

专用 Cloud Data Fusion 实例具有以下优势:

  • 与实例的连接是通过 Google Cloud 项目中的专用 VPC 网络建立的。通过该网络的流量不会通过公共互联网。

  • 由于您的本地网络通过 Cloud VPNCloud Interconnect 连接到 Google Cloud 专用 VPC 网络,因此实例可以连接到本地资源(例如关系型数据库)。您可以通过专用网络安全访问本地资源(例如数据库),而无需打开 Google Cloud。

目标

  • 设置 VPC 网络或共享 VPC 网络。
  • 分配一个 IP 范围,用于在租户项目中部署 Cloud Data Fusion 实例。
  • 创建 Cloud Data Fusion 专用实例。
  • 在需要配置 VPC 网络的 VPC 之间 包含 Cloud Data Fusion 实例和 VPC 包含关联的租户项目。
  • 对于共享 VPC 网络,请设置 Identity and Access Management (IAM) 权限。
  • 如果您的私有实例使用 Cloud Data Fusion 6.2.0 或更低版本,请创建防火墙规则。
  • 让不同的 Google Cloud 服务与各个 Google Cloud 服务在内部进行通信 启用专用 Google 访问通道 Dataproc 子网。

准备工作

  • 如需了解 Cloud Data Fusion 的部署架构,请参阅 网络

设置 VPC 网络

如果您尚未执行此操作,请创建 VPC 网络共享 VPC 网络

如需设置 VPC 网络,您必须分配一个 IP 地址 范围。

分配 IP 范围

VPC 网络

如果您未使用共享 VPC 网络 创建存储分区时,Cloud Data Fusion 默认分配 IP 范围 实例。

共享 VPC 网络

要使用共享 VPC,您必须分配 IP 范围。

如需为您的 Cloud Data Fusion 实例分配 IP 范围,请按照下列步骤操作: 具体步骤:

  1. 在 Google Cloud 控制台中,前往 VPC 网络页面。

    进入 VPC 网络页面

  2. 名称列中,点击要在其中创建私有 Cloud Data Fusion 实例的 VPC 网络。

    系统会打开 VPC 网络详情页面。

  3. 点击专用服务连接。如果系统提示,请点击启用 API 以启用 Service Networking API。

    配置 VPC 网络详细信息。

  4. 点击分配 IP 范围

    1. 为您的 IP 范围指定名称。

    2. IP 范围部分,点击自动

    3. 指定前缀大小 22

    4. 点击分配

      分配 IP 范围。

创建私有实例

在 VPC 中创建专用 Cloud Data Fusion 实例 或共享 VPC 网络。

VPC 网络

要在 VPC 网络中创建实例,请使用 Google Cloud 控制台或 c网址。

如果您使用 Google Cloud 控制台创建专用实例, 默认情况下,Cloud Data Fusion 会分配 /22 IP 地址范围。接收者 请选择其他 IP 范围,则必须使用 c网址 命令。

控制台

  1. 前往创建 Data Fusion 实例页面。

    前往“创建 Data Fusion 实例”页面

  2. 为实例输入实例名称和说明。

  3. 选择要在其中创建实例的区域

  4. 选择一个 Cloud Data Fusion 版本,然后 版本

  5. 指定 Dataproc 服务账号 来运行 Cloud Data Fusion 流水线 Dataproc。默认的 Compute Engine 账号。

  6. 展开高级选项菜单,然后点击启用专用 IP

  7. 网络字段中,选择要用于创建实例的网络。

  8. 点击创建。最长可能需要 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:您要创建专用实例的 VPC 网络的名称。
  • IP_RANGE您分配的 IP 范围。要在 Google Cloud 控制台中转到 VPC 网络详情 > 专用服务连接 > 内部 IP 范围

共享 VPC 网络

如需在共享 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托管共享 VPC 网络的项目的 ID。
  • NETWORK_NAME: 要在其中创建专用 VPC 网络 实例。
  • IP_RANGE您分配的 IP 范围。 如需在 Google Cloud 控制台中查找 IP 范围,请前往 VPC 网络详情页面 > 专用服务连接 > 内部 IP 范围

设置 VPC 网络对等互连

您在自己的项目中使用的 设计环境 (例如:Wrangler、连接管理器和架构验证)启动 从租户项目 VPC 到来源的网络连接 系统。Cloud Data Fusion 使用 VPC 网络对等互连建立与包含实例的 VPC 或共享 VPC 的网络连接。借助 VPC 网络对等互连,Cloud Data Fusion 可以使用您自己的 VPC 及其控制功能通过内部 IP 地址访问您网络中的资源。要与另一个项目中的资源连接 请参阅连接用例的步骤

以下部分介绍了如何 创建对等互连配置 您的网络与 Cloud Data Fusion 之间的连接 租户项目

获取租户项目 ID

要创建对等互连配置,您需要 租户项目 ID。

  1. 前往 Cloud Data Fusion 实例页面。

    转到“实例”

  2. 实例名称列中,选择相应实例。

  3. 实例详情页面上,复制租户项目 ID(即 在按以下步骤创建对等互连连接时需要使用以下 ID。

创建对等连接

  1. 前往 VPC 网络对等互连页面。

    转到 VPC 网络对等互连

  2. 依次点击创建连接 > 继续

  3. 在随即打开的创建对等连接页面上,执行以下操作:

    1. 输入对等互连连接的名称
    2. 对于您的 VPC 网络,请选择包含您的 Cloud Data Fusion 实例。
    3. 对于对等互连的 VPC 网络,选择在其他项目中
    4. 对于项目 ID,请输入 您之前在以下位置找到的租户项目 ID: 本教程。
    5. 对于 VPC 网络名称,请选择一个网络或输入 INSTANCE_REGION-INSTANCE_ID

      替换以下内容:

      • INSTANCE_REGION:您在其中创建了 Cloud Data Fusion 实例。
      • INSTANCE_ID:您的 Cloud Data Fusion 实例的 ID。
    6. 选择对等互连连接的互联网协议版本 在您的 VPC 网络之间交换 IPv4 和 IPv6 路由, 对等 VPC 网络如需了解详情,请参阅 VPC 网络对等互连

    7. 选择导出自定义路由,以便将自定义路由从您的 VPC 网络导出到租户 VPC 网络。

    8. 选择是否允许将具有公共 IPv4 的子网路由导入或导出到您的 VPC 网络。

    9. 点击创建

    VPC 网络对等互连在创建后不久即会生效。

设置 IAM 权限

VPC 网络

跳过此步骤,直接创建防火墙规则

共享 VPC 网络

如果您在共享 VPC 网络中创建 Cloud Data Fusion 实例,则必须向以下服务账号授予 Compute Network User 角色。如需授予对所有子网的权限,请向共享 VPC 宿主项目授予该角色。

如需进一步控制访问权限,请改为向特定子网授予该角色,并向宿主项目授予 Network Viewer 角色

  • Cloud Data Fusion 服务账号:service-PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
  • Dataproc 服务账号:service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com

PROJECT_NUMBER 是包含您的 Cloud Data Fusion 实例的 Google Cloud 项目的编号。

如需了解详情,请参阅向所需的服务账号授予访问权限

创建防火墙规则

在 VPC 网络上创建防火墙规则,以允许来自您在创建私有 Cloud Data Fusion 实例时所指定 IP 范围的入站 SSH 连接。

对于 6.2.0 之前的 Cloud Data Fusion 版本,此步骤是必需的。它允许 Cloud Data Fusion 与运行流水线的 Dataproc 集群之间进行通信。

您可以使用 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:防火墙规则所附加的网络的名称。它是 VPC 网络的名称 您在其中创建了专用实例的网络。
  • PROJECT_ID:目标项目的 ID 托管 VPC 网络的方法。

连接用例的步骤

以下部分介绍了与专用连接相关的使用场景, 实例。

启用专用 Google 访问通道

如需通过内部 IP 地址访问资源,Cloud Data Fusion 必须在具有专用 Google 访问通道的子网中创建 Dataproc 集群并运行数据流水线。您必须为包含 Dataproc 集群的子网启用专用 Google 访问通道。

  • 如果 Dataproc 所在的区域只存在一个子网 则集群会在相应子网中启动。
  • 如果一个区域中有多个子网,则必须 Cloud Data Fusion,用于选择 用于启动 Dataproc 集群的专用 Google 访问通道。

如需为子网启用专用 Google 访问通道,请参阅专用 Google 访问通道配置

可选:连接到其他来源

在 Cloud Data Fusion 中创建专用实例后,您可以 其他来源,例如以下用例:

可选:启用 DNS 对等互连

在以下情况下启用 DNS 对等互连

  • 当 Cloud Data Fusion 通过主机名(而不是 IP)连接到系统时 addresses
  • 目标系统部署在负载均衡器后面,例如在某些 SAP 部署中

后续步骤