配置专用 IP 网络

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

本页面介绍如何为专用 IP 环境配置 Google Cloud 项目网络。

对于专用 IP 环境,Cloud Composer 仅会为您的环境中的代管式 Google Kubernetes Engine 和 Cloud SQL 虚拟机分配专用 IP (RFC 1918) 地址。

作为一种选择,您还可以使用以非公开方式使用的公共 IP 地址IP 伪装代理来节省 IP 地址空间并使用非 RFC 1918 地址。

如需了解如何连接到环境中的资源,请参阅专用 IP

具有 Private Service Connect 和 VPC 对等互连的环境

默认情况下,Cloud Composer 2 使用 Private Service Connect,因此除非您在创建环境时另行指定,否则您的专用 IP 环境无需使用 VPC 对等互连进行内部通信。

如果您对使用通过 VPC 对等互连的环境没有特定要求,我们建议您使用具有 Private Service Connect 的环境。

准备工作

确保您拥有创建环境所需的相应用户和服务账号权限

检查网络要求

验证项目的 VPC 网络是否满足以下要求:

  • 确保不存在专用 IP 块冲突。如果您的 VPC 网络及其已建立的 VPC 对等体与 Google 管理的租户项目中的 VPC 网络之间存在重叠的 IP 地址块,Cloud Composer 将无法创建您的环境。如需了解每个区域中使用的默认值,请参阅默认 IP 范围表

  • 确保 Cloud Composer GKE pod 和服务具有足够的次要 IP 范围。GKE 会在次要 IP 范围内搜索 IP 别名。如果 GKE 找不到某一范围,则 Cloud Composer 无法创建您的环境。

  • 确保子网中的次要范围数不超过 30 个。请考虑以下事项:

    • 专用 IP 环境的 GKE 集群会在子网中创建两个次要范围。您可以在同一区域中为同一 VPC 网络创建多个子网。
    • 最多支持 30 个次要范围。每个专用 IP 环境都需要两个次要范围以用于 Cloud Composer GKE pod 和服务。
  • 请确保您项目的网络可以承受单个 VPC 网络连接数上限限制。您可以创建的专用 IP 环境的数量上限取决于您的 VPC 网络中已有的 VPC 对等互连连接的数量。

    • 具有 PSC 的每个专用 IP 环境对每种环境使用一个 VPC 对等互连。此 VPC 对等互连由您环境的 GKE 集群创建,GKE 集群可以重复使用此连接。对于具有 PSC 的专用 IP 环境,每个位置最多支持 75 个专用集群

    • 每个具有 VPC 对等互连的专用 IP 环境对每个环境最多使用两个 VPC 对等互连。Cloud Composer 会为租户项目网络创建一个 VPC 对等互连。第二个对等互连由您环境的 GKE 集群创建,GKE 集群可以重复使用此连接

选择网络、子网和网络范围

为您的专用 IP 环境选择网络范围(或使用默认范围)。稍后您在创建专用 IP 环境时会使用这些网络范围。

如需创建专用 IP 环境,您需要提供以下信息:

  • 您的 VPC 网络 ID
  • 您的 VPC 子网 ID
  • VPC 子网中的两个次要 IP 范围:
    • pod 的次要 IP 范围
    • Service 的次要 IP 范围
  • 环境组成部分的 IP 地址范围:

    如果您的环境使用 Private Service Connect:

    • GKE 控制平面 IP 范围。GKE 控制平面的 IP 范围。
    • Cloud Composer 连接子网。Cloud Composer 连接子网的 IP 地址范围。您只能指定一个 IP 地址范围。此范围可供您项目中的多个环境使用。

    如果您的环境使用 VPC 对等互连:

    • GKE 控制平面 IP 范围。GKE 控制平面的 IP 范围。
    • Cloud Composer 租户网络的 IP 范围。Cloud Composer 租户网络的 IP 范围。此网络托管您的环境的 SQL 代理组件
    • Cloud SQL IP 范围。Cloud SQL 实例的 IP 范围。

如需了解每个区域使用的默认 IP 范围表,请参阅默认 IP 范围表

默认 IP 范围

使用 Private Service Connect 的环境

区域 GKE 控制平面 IP 地址范围
africa-south1 172.16.64.0/23
asia-east1 172.16.42.0/23
asia-east2 172.16.0.0/23
asia-northeast1 172.16.2.0/23
asia-northeast2 172.16.32.0/23
asia-northeast3 172.16.30.0/23
asia-south1 172.16.4.0/23
asia-south2 172.16.50.0/23
asia-southeast1 172.16.40.0/23
asia-southeast2 172.16.44.0/23
australia-southeast1 172.16.6.0/23
australia-southeast2 172.16.56.0/23
europe-central2 172.16.36.0/23
europe-north1 172.16.48.0/23
europe-southwest1 172.16.58.0/23
europe-west1 172.16.8.0/23
europe-west10 172.16.62.0/23
europe-west12 172.16.62.0/23
europe-west2 172.16.10.0/23
europe-west3 172.16.12.0/23
europe-west4 172.16.42.0/23
europe-west6 172.16.14.0/23
europe-west8 172.16.60.0/23
europe-west9 172.16.46.0/23
me-central1 172.16.58.0/23
me-west1 172.16.54.0/23
northamerica-northeast1 172.16.16.0/23
northamerica-northeast2 172.16.46.0/23
southamerica-east1 172.16.18.0/23
southamerica-west1 172.16.58.0/23
us-central1 172.16.20.0/23
us-east1 172.16.22.0/23
us-east4 172.16.24.0/23
us-east5 172.16.52.0/23
us-south1 172.16.56.0/23
us-west1 172.16.38.0/23
us-west2 172.16.34.0/23
us-west3 172.16.26.0/23
us-west4 172.16.28.0/23

具有 VPC 对等互连的环境

区域 GKE 控制平面 IP 地址范围 Cloud Composer 租户网络 IP 地址范围 Cloud SQL IP 地址范围
africa-south1 172.16.64.0/23 172.31.223.0/24 10.0.0.0/12
asia-east1 172.16.42.0/23 172.31.255.0/24 10.0.0.0/12
asia-east2 172.16.0.0/23 172.31.255.0/24 10.0.0.0/12
asia-northeast1 172.16.2.0/23 172.31.254.0/24 10.0.0.0/12
asia-northeast2 172.16.32.0/23 172.31.239.0/24 10.0.0.0/12
asia-northeast3 172.16.30.0/23 172.31.240.0/24 10.0.0.0/12
asia-south1 172.16.4.0/23 172.31.253.0/24 10.0.0.0/12
asia-south2 172.16.50.0/23 172.31.230.0/24 10.0.0.0/12
asia-southeast1 172.16.40.0/23 172.31.235.0/24 10.0.0.0/12
asia-southeast2 172.16.44.0/23 172.31.233.0/24 10.0.0.0/12
australia-southeast1 172.16.6.0/23 172.31.252.0/24 10.0.0.0/12
australia-southeast2 172.16.56.0/23 172.31.227.0/24 10.0.0.0/12
europe-central2 172.16.36.0/23 172.31.237.0/24 10.0.0.0/12
europe-north1 172.16.48.0/23 172.31.231.0/24 10.0.0.0/12
europe-southwest1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
europe-west1 172.16.8.0/23 172.31.251.0/24 10.0.0.0/12
europe-west10 172.16.62.0/23 172.31.224.0/24 10.0.0.0/12
europe-west12 172.16.62.0/23 172.31.224.0/24 10.0.0.0/12
europe-west2 172.16.10.0/23 172.31.250.0/24 10.0.0.0/12
europe-west3 172.16.12.0/23 172.31.249.0/24 10.0.0.0/12
europe-west4 172.16.42.0/23 172.31.234.0/24 10.0.0.0/12
europe-west6 172.16.14.0/23 172.31.248.0/24 10.0.0.0/12
europe-west8 172.16.60.0/23 172.31.225.0/24 10.0.0.0/12
europe-west9 172.16.46.0/23 172.31.232.0/24 10.0.0.0/12
me-central1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
me-west1 172.16.54.0/23 172.31.228.0/24 10.0.0.0/12
northamerica-northeast1 172.16.16.0/23 172.31.247.0/24 10.0.0.0/12
northamerica-northeast2 172.16.46.0/23 172.31.232.0/24 10.0.0.0/12
southamerica-east1 172.16.18.0/23 172.31.246.0/24 10.0.0.0/12
southamerica-west1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
us-central1 172.16.20.0/23 172.31.245.0/24 10.0.0.0/12
us-east1 172.16.22.0/23 172.31.244.0/24 10.0.0.0/12
us-east4 172.16.24.0/23 172.31.243.0/24 10.0.0.0/12
us-east5 172.16.52.0/23 172.31.229.0/24 10.0.0.0/12
us-south1 172.16.56.0/23 172.31.227.0/24 10.0.0.0/12
us-west1 172.16.38.0/23 172.31.236.0/24 10.0.0.0/12
us-west2 172.16.34.0/23 172.31.238.0/24 10.0.0.0/12
us-west3 172.16.26.0/23 172.31.242.0/24 10.0.0.0/12
us-west4 172.16.28.0/23 172.31.241.0/24 10.0.0.0/12

(可选)配置与 Google API 和服务的连接

作为一种选择,您可能希望通过属于 private.googleapis.com 网域的多个 IP 地址将所有流量路由到 Google API 和服务。在此配置中,您的环境通过仅可从 Google Cloud 内路由的 IP 地址访问 Google API 和服务。

如果您的专用 IP 环境也使用 VPC Service Controls,请改为按照适用于 VPC Service Controls 的环境的说明进行操作。

Cloud Composer 环境使用以下网域:

  • *.googleapis.com 用于访问其他 Google 服务。

  • *.composer.cloud.google.com 用于使环境的 Airflow Web 服务器可访问。必须在创建环境之前应用此规则。

    • 或者,您也可以为特定区域创建规则。为此,请使用 REGION.composer.cloud.google.com。将 REGION 替换为环境所在的区域,例如 us-central1
  • (可选)访问环境的 Airflow Web 服务器时会使用 *.composer.googleusercontent.com。仅当您从在 VPC 网络中运行的实例访问 Airflow Web 服务器时,才需要此规则,否则不需要。此规则的一种常见场景是您希望从 VPC 网络内调用 Airflow REST API。

    • 此外,您还可以为特定环境创建规则。为此,请使用 ENVIRONMENT_WEB_SERVER_NAME.composer.googleusercontent.com。将 ENVIRONMENT_WEB_SERVER_NAME 替换为环境 Airflow 界面网址的唯一部分,例如 bffe6ce6c4304c55acca0e57be23128c-dot-us-central1
  • *.pkg.dev 用于获取环境映像,例如在创建或更新环境时。

  • *.gcr.io无论 Cloud Composer 版本如何,GKE 都需要连接到 Container Registry 网域。

配置与 private.googleapis.com 端点的连接:

网域 DNS 名称 CNAME 记录 A 记录
*.googleapis.com googleapis.com. DNS 名称:*.googleapis.com.
资源记录类型:CNAME
规范名称:googleapis.com.
资源记录类型:A
IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.composer.cloud.google.com composer.cloud.google.com. DNS 名称:*.composer.cloud.google.com.
资源记录类型:CNAME
规范名称:composer.cloud.google.com.
资源记录类型:A
IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.composer.googleusercontent.com
(可选,参见说明)
composer.googleusercontent.com. DNS 名称:*.composer.googleusercontent.com.
资源记录类型:CNAME
规范名称:composer.googleusercontent.com.
资源记录类型:A
IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.pkg.dev pkg.dev. DNS 名称:*.pkg.dev.
资源记录类型:CNAME
规范名称:pkg.dev.
资源记录类型:A
IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.gcr.io gcr.io. DNS 名称:*.gcr.io.
资源记录类型:CNAME
规范名称:gcr.io.
资源记录类型:A
IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

如需创建 DNS 规则,请执行以下操作:

  1. 创建一个新的 DNS 区域,并使用 DNS 名称作为此区域的 DNS 名称。

    示例:pkg.dev.

  2. CNAME 记录添加记录集

    示例:

    • DNS 名称:*.pkg.dev.
    • 资源记录类型:CNAME
    • 规范名称:pkg.dev.
  3. A 记录添加一个记录集

    示例:

    • 资源记录类型:A
    • IPv4 地址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

如需了解详情,请参阅设置与 Google API 和服务的专用连接

(可选)配置防火墙规则

仅当您的项目具有非默认防火墙规则(例如覆盖隐式防火墙规则的规则,或修改默认网络中的预先填充的规则)时,才执行此步骤。

例如,如果您有拒绝所有出站流量的防火墙规则,则 Cloud Composer 可能无法创建环境。为避免出现问题,请定义选择性 allow 规则,这些规则遵循列表,且优先级高于全局 deny 规则。

将您的 VPC 网络配置为允许来自您环境的流量:

  • 请参阅使用防火墙规则,了解如何查看、添加和更新 VPC 网络的规则。
  • 使用 Connectivity Tool 验证 IP 范围之间的连接。
  • 您可以使用网络标记进一步限制访问权限。您可以在创建环境时设置这些标记。
说明 方向 操作 来源或目标 协议 端口
DNS 出站 允许 任何目标 (0.0.0.0/0) 或 DNS 服务器 IP 地址 TCP、UDP 53
Google API 和服务 出站 允许 您为 Google API 和服务选择的网域的 IP 地址范围。如果您使用默认网域,请参阅默认网域的 IP 地址 TCP 443
环境的集群节点 出站 允许 环境的子网主要 IP 地址范围 TCP、UDP 全部
环境的集群 Pod 出站 允许 环境子网中 Pod 的次要 IP 地址范围 TCP、UDP 全部
环境的集群控制平面 出站 允许 GKE 控制平面 IP 地址范围 TCP、UDP 全部
(如果您的环境使用 Private Service Connect)连接子网 出站 允许 Cloud Composer 连接子网范围 TCP 3306、3307
(如果您的环境使用 VPC 对等互连)租户网络 出站 允许 Cloud Composer 租户网络 IP 地址范围 TCP 3306、3307

要获取 IP 范围,请执行以下操作:

  • Pod、Service 和控制平面地址范围可在环境集群的集群页面上找到:

    1. 在 Google Cloud 控制台中,前往环境页面。

      转到“环境”

    2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

    3. 转到环境配置标签页。

    4. 点击查看集群详情链接。

  • 您可以在环境配置标签页上查看环境的 Cloud Composer 租户网络 IP 范围。

  • 您可以在环境配置标签页上查看环境的子网 ID 和 Cloud Composer 连接子网 ID。如需获取子网的 IP 范围,请转到 VPC 网络页面,然后点击网络名称以查看详细信息:

    转到“VPC 网络”

配置代理服务器设置

您可以在环境中设置 HTTP_PROXYHTTPS_PROXY 环境变量。在环境集群的容器中运行的 Web 客户端会使用这些标准 Linux 变量来通过指定代理路由流量。

默认情况下,NO_PROXY 变量设置为 Google 网域列表,以便在代理中排除这些网域:.google.com,.googleapis.com,metadata.google.internal。此配置可让您在未将代理配置为处理流向 Google 服务的流量的情况下创建已设置 HTTP_PROXYHTTPS_PROXY 环境变量的环境。