配置专用 IP Cloud Composer 环境

本页面介绍如何配置专用 IP Cloud Composer 环境。

如果您启用专用 IP,那么 Cloud Composer 仅会为您的环境中的托管式 Google Kubernetes Engine 和 Cloud SQL 虚拟机分配专用 IP (RFC 1918) 地址。

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

准备工作

访问权限控制

网络要求

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

  • 确保不存在专用 IP 地址块冲突。如果您的 VPC 网络及其已建立的 VPC 对等体与 Google 管理的租户项目中的 VPC 网络之间存在重叠的 IP 地址块,Cloud Composer 将无法创建您的环境。
  • 确保各个 Cloud Composer GKE pod 和服务都有足够的次要 IP 地址范围。GKE 会在次要 IP 地址范围内搜索 IP 别名。如果 GKE 找不到某一范围,则 Cloud Composer 无法创建您的环境。
  • 在专用 IP Cloud Composer 环境的 VPC 网络中,确保现有子网和次要范围未使用 172.31.255.0/24 IP 地址范围。专用 IP Cloud Composer 环境将此 IP 地址范围用于网络对等互连。如果存在 IP 冲突,则可能无法创建环境。
  • 确保您的 VPC 网络中的 VPC 对等互连连接数不超过 25 个。请注意以下事项:
    • 对于每个专用 IP Cloud Composer 环境,Cloud Composer 会为租户项目网络创建一个对等互连连接。
    • 专用 GKE 集群会在您的 VPC 网络中另外创建一个 VPC 对等互连连接。
    • Cloud Composer 最多可以支持 12 个专用 IP Cloud Composer 环境。
    • 您最多可以创建的专用 IP Cloud Composer 环境数量取决于您要在 VPC 网络中使用的 VPC 对等互连连接数。
  • 确保子网中的次要范围数不超过 5 个。请注意以下事项:
    • 专用 IP Cloud Composer 环境的 GKE 集群会在该子网中创建两个次要范围。您可以在同一区域中为同一 VPC 网络创建多个子网。
    • 最多支持 5 个次要范围。由于每个专用 IP Cloud Composer 环境都需要两个次要范围(分别用于 Cloud Composer GKE pod 和服务),因此每个子网最多支持两个专用 IP Cloud Composer 环境。

针对 VPC Native 配置的 API 支持

如果您在 GCP Console 或 Cloud SDK 中启用了专用 IP,则 VPC Native 默认处于启用状态。

目前,您必须使用 v1beta1 RESTRPC API 进行以下网络配置:

  • 启用专用 IP 和 VPC Native。
  • 配置 IP 别名次要范围并指定 master-ipv4-cidr-block

    例如:

    curl --request POST -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       https://composer.googleapis.com/v1beta1/projects/test-project/locations/asia-northeast1/environments \
       --data '{"config": {"nodeConfig": {"diskSizeGb": 100, "ipAllocationPolicy": {"useIpAliases": true, clusterIpv4CidrBlock: "10.180.0.0/20", servicesIpv4CidrBlock: "10.182.0.0/20"}, "network": "projects/test-project/global/networks/default",
       "subnetwork": "projects/test-project/regions/asia-northeast1/subnetworks/default"},"softwareConfig": {"imageVersion": "composer-1.6.0-airflow-1.10.1"}}, "name": "projects/test-project/locations/asia-northeast1/environments/vpcnative"}'
    

启用专用 IP Cloud Composer 环境

Console

  1. 打开 Google Cloud Platform Console 中的创建环境页面。

    打开“创建环境”页面

  2. 配置您的环境
  3. 要启用专用 IP Cloud Composer 环境,请选中专用 IP 环境
  4. 要为您的环境中的 GKE 集群启用公共端点,请选中使用 GKE 主实例的外部 IP 地址访问该实例

    您的集群已配置为停用公共端点访问权限

  5. GKE 主实例 IP 地址范围 (GKE master IP range) 中,为主实例的 VPC 输入一个专用 RFC 1918 范围。
  6. 完成环境配置后,点击创建

gcloud

根据需要配置您的环境,包括以下专用 IP Cloud Composer 环境参数:

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION --enable-private-environment \
    OTHER_ARGUMENTS

除非特别指定,否则以下参数均为必填项:

  • ENVIRONMENT_NAME 是环境的名称。该名称必须与以下格式匹配:^[a-z](?:[-0-9a-z]{0,62}[0-9a-z])?$
  • LOCATION 是环境所在的 Compute Engine 区域。
  • --enable-private-environment 用于启用专用 IP Cloud Composer 环境。
  • master-ipv4-cidr 用于指定主实例 VPC 的专用 RFC 1918 范围。
  • (可选)enable-private-endpoint 用于为环境中的 GKE 集群启用公共端点。您的集群已配置为停用公共端点访问权限

以下示例会创建一个环境,该环境在 us-central1 区域运行受支持的最新 Cloud Composer 映像版本,并且使用带有 beta 环境标签的 n1-standard-2 机器类型。

该环境启用了专用 IP,并且 GKE 主实例 VPC 的 IP 地址范围为 192.0.2.0/28

gcloud beta composer environments create test-environment \
    --location us-central1 \
    --zone us-central1-f \
    --machine-type n1-standard-2 \
    --image-version composer-latest-airflow-x.y.z \
    --labels env=beta  \
    --enable-private-environment \
    --enable-private-endpoint \
    --master-ipv4-cidr 192.0.2.0/28 

API

要使用 Cloud Composer REST API 创建新的 Cloud Composer 环境,请构建一个 environments.create API 请求,并使用您的配置信息填充 Environment 资源。

例如:

POST https://composer.googleapis.com/v1beta1/projects/test-project/locations/us-central1/environments
      {
  "config": {
    "nodeConfig": {
      "diskSizeGb": 100,
      "ipAllocationPolicy": {
        "useIpAliases": true
      },
      "network": "projects/test-project/global/networks/default",
      "subnetwork": "projects/test-project/regions/us-central1/subnetworks/default"
    },
    "softwareConfig": {
      "imageVersion": "composer-1.5.2-airflow-1.10.1"
    }
  },
  "name": "projects/test-project/locations/us-central1/environments/vpcnative-test"
}

配置次要范围

目前,您必须使用 Cloud Composer API 配置次要范围和 IPv4 CIDR 地址块。

要使用 Cloud Composer REST API 创建新的 Cloud Composer 环境,请构建一个 environments.create API 请求,并使用您的配置信息填充 Environment 资源。

例如:

POST https://composer.googleapis.com/v1beta1/projects/test-project/locations/us-central1/environments
      {
  "config": {
    "nodeConfig": {
      "diskSizeGb": 100,
      "ipAllocationPolicy": {
        "useIpAliases": true,
        "clusterIpv4CidrBlock": "10.180.0.0/20",
        "servicesIpv4CidrBlock": "10.182.0.0/20"
      },
      "network": "projects/test-project/global/networks/default",
      "subnetwork": "projects/test-project/regions/us-central1/subnetworks/default"
    },
    "softwareConfig": {
      "imageVersion": "composer-1.5.2-airflow-1.10.1"
    }
  },
  "name": "projects/test-project/locations/us-central1/environments/vpcnative-test"
}
此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Cloud Composer