公共网络连接

本页介绍了 Integration Connectors 如何连接到可公开访问的后端应用。

您可以通过以下两种方式连接到公开后端应用:

  • 直接连接到您的公共后端应用。
  • 通过防火墙连接到您的公共后端应用。

直接连接到您的公共后端应用

如果您可以公开连接到后端应用,则可以通过在 Hostname 字段中指定端点,将连接配置为使用公共端点。您的关联将直接访问您的后端应用。

通过防火墙连接到公共后端应用

如果您想使用防火墙限制对公共端点的访问,可以配置 Integration Connectors,以便为来自连接的流量使用一组静态 IP 地址。配置完成后,来自连接的所有调用都将来自一组静态 IP 地址,您可以在防火墙中将其列入许可名单。如需允许连接通过防火墙进行连接,您必须执行以下大致步骤:

  1. 创建防火墙,并将出站流量路由到防火墙。
  2. 为您的连接分配静态 IP 地址。
  3. 在防火墙中将分配的静态 IP 地址列入许可名单。

有关创建和配置防火墙的步骤不在本页的讨论范围内。本页仅介绍如何为连接分配静态 IP 地址。

默认情况下,Integration Connectors 会自动分配 IP 地址。不过,您可以将 Integration Connectors 配置为生成静态 IP 地址,而不是自动 IP 地址。Integration Connectors 会在区域一级分配静态 IP 地址。例如,us-east1 区域的静态 IP 地址将不同于 us-west2 区域中的静态 IP 地址。

如需为连接分配静态 IP 地址,请执行以下步骤:

  1. 获取您要为其分配静态 IP 地址的连接所在的区域。 您可以在“连接”页面的 Location 列中查看连接区域。

    前往“连接”页面

  2. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  3. 配置 Integration Connectors,为您在第 1 步中获得的区域分配静态 IP 地址。在 Cloud Shell 中运行以下命令。
    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"networkConfig": {"egressMode": "static_ip"}}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings?updateMask="networkConfig"

    LOCATION 设置为您在第 1 步中获取的区域。

    运行此命令会返回类似于以下内容的响应:

    {
    "name": "projects/test-01/locations/us-central1/operations/operation-1696840994443-6074494b6d138-8215226d-516faaf8",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.connectors.v1.OperationMetadata",
      "createTime": "2023-10-09T08:43:14.467058513Z",
      "target": "projects/test-01/locations/us-central1/regionalSettings",
      "verb": "update",
      "requestedCancellation": false,
      "apiVersion": "v1"
     },
    "done": false
    }

    此命令会返回一个操作 ID,并启动一项长时间运行的操作 (LRO),该操作可能需要一些时间才能完成。等待 LRO 完成。您可以使用以下命令跟踪操作进度:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

    如果静态 IP 地址分配成功,您将收到类似于以下内容的响应:

    ...
    ...
    "response": {
      "@type": "type.googleapis.com/google.cloud.connectors.v1.RegionalSettings",
      "name": "projects/test-01/locations/us-central1/regionalSettings",
      "networkConfig": {
       "egressMode": "STATIC_IP",
        "egressIps": [
          "35.193.227.203",
          "34.133.63.9",
          "35.223.253.58",
          "34.170.27.253"
        ]
      }
    }
    

    在此示例响应中,系统为 us-central1 区域分配了 4 个静态 IP 地址,并将该区域的 egressMode 设置为 STATIC_IP

  4. 在防火墙规则中将静态 IP 地址(在第 4 步中获取)列入许可名单。

获取某个区域的静态 IP 地址

如果您随时想获取分配给某个区域(位置)的静态 IP 地址,请运行以下命令:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings

运行此命令会返回类似于如下所示的响应:

  "response": {
    "@type": "type.googleapis.com/google.cloud.connectors.v1.RegionalSettings",
    "name": "projects/test-01/locations/us-central1/regionalSettings",
    "networkConfig": {
     "egressMode": "STATIC_IP",
      "egressIps": [
        "35.193.227.203",
        "34.133.63.9",
        "35.223.253.58",
        "34.170.27.253"
      ]
    }
  }

向区域分配自动 IP 地址

如果您想移除某个区域的静态 IP 地址配置,并自动分配 IP 地址,则必须在终端中运行以下命令:

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"networkConfig": {"egressMode": "auto_ip"}}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings?updateMask="networkConfig"

与用于配置静态 IP 地址的上一条命令类似,此命令也会返回操作 ID 并启动一个可能需要一些时间才能完成的长时间运行的操作 (LRO)。等待 LRO 完成。

注意事项

为区域分配静态 IP 地址时,请考虑以下几点:

  • 项目中不同区域预留的静态 IP 地址集不同。
  • 当您将某个区域的外出模式从 STATIC_IP 更改为 AUTO_IP 时,系统不会保留原始的一组静态 IP 地址,因此,当您再次将外出模式从 AUTO_IP 更改为 STATIC_IP 时,系统会分配一组新的静态 IP 地址。
  • 将出站流量模式从 AUTO_IP 更改为 STATIC_IP 或反之亦然时,停机时间预计会在几秒钟的范围内。