保留外部 IP 地址

外部 IP 地址允许从互联网到工作负载虚拟机 (VM) 实例、设备或在私有云中运行的负载均衡器的入站连接。例如,如果您在工作负载虚拟机上运行网络服务器,则可以通过互联网使用外部 IP 地址传送 Web 流量。

进出外部 IP 地址的流量遵循外部访问防火墙规则

为资源分配外部 IP 地址还具有以下优势:

  • 分布式拒绝服务 (DDoS) 攻击防护。系统会自动为外部 IP 地址启用此保护。
  • 始终开启流量监控,并实时缓解常见的网络等级攻击。
  • 在整个网络范围内保护和缓解攻击。该网络可用于跨区域分配和缓解攻击流量。

行为

一个外部 IP 地址只能分配给一个内部 IP 地址,并且该外部 IP 地址将专用于内部 IP 地址,除非您取消分配该地址。与外部 IP 地址关联的资源始终使用外部 IP 地址进行互联网访问。您最多可以为连接到 VMware Engine 的主要 VPC 网络预留 100 个外部 IP 地址。

默认情况下,来自外部 IP 地址的传入流量会被拒绝,并且仅允许出站互联网访问。如需允许入站流量,请为特定端口的外部 IP 地址创建外部访问规则

  • 您只能为 vCenter 和 NSX-T 的端口 443 分配规则。
  • 虽然这并非必需,但我们强烈建议您为 HCX 也打开端口 443。

准备工作

您必须先在应用于私有云的区域中创建网络政策,然后才能为工作负载虚拟机分配外部 IP 地址,并启用互联网访问服务和外部 IP 地址服务。

保留外部 IP 地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 为内部工作负载虚拟机或管理设备预留外部 IP 地址,请执行以下操作:

控制台

如需使用 Google Cloud 控制台为内部工作负载虚拟机或管理设备预留外部 IP 地址,请完成以下步骤:

  1. 在 Google Cloud 控制台中,转到外部 IP 地址页面。

    转到“外部 IP 地址”

  2. 点击选择项目,然后选择要预留外部 IP 地址的组织、文件夹或项目。

  3. 点击预留

  4. 名称字段中,输入用于标识外部 IP 地址的名称。

  5. 私有云列表中,选择包含工作负载虚拟机或管理设备的私有云。

  6. 目标工作负载或设备虚拟机字段中,输入要为其分配此外部 IP 地址的内部 IP 地址。

  7. 点击预留。新预留的外部 IP 地址会显示在外部 IP 地址列表中。

gcloud

如需为内部工作负载虚拟机或管理设备预留外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses create 命令

gcloud vmware private-clouds external-addresses create EXTERNAL_ADDRESS_NAME \
  --internal-ip=IP_ADDRESS \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • EXTERNAL_ADDRESS_NAME:此外部 IP 地址的名称
  • IP_ADDRESS:此请求对应的内部 IP 地址,例如 192.168.1.11
  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 为内部工作负载虚拟机或管理设备预留外部 IP 地址,请发出 POST 请求:

  POST "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses?EXTERNAL_ADDRESS_NAME=EXTERNAL_ADDRESS_NAME"

'{ "internal_ip": "IP_ADDRESS" }'

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此外部 IP 地址的名称
  • IP_ADDRESS:此请求对应的内部 IP 地址,例如 192.168.1.11

列出外部 IP 地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 查看所有外部 IP 地址的列表,请执行以下操作:

控制台

如需查看所有外部 IP 地址的列表,请前往外部 IP 地址页面,点击选择项目,然后选择要列出外部 IP 地址的组织、文件夹或项目。

转到“外部 IP 地址”

gcloud

如需列出所有外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses list 命令

gcloud vmware private-clouds external-addresses list \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 列出所有外部 IP 地址,请发出 GET 请求:

GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses"

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称

修改外部地址

您只能修改与现有外部 IP 资源关联的说明和内部 IP。您无法更改任何其他属性。

控制台

如需修改 IP 地址,请执行以下操作:

  1. 在 Google Cloud 控制台中,转到外部 IP 地址页面。

    转到“外部 IP 地址”

  2. 点击选择项目,然后选择包含您要修改的外部 IP 地址的组织、文件夹或项目。

  3. 点击行末的更多 图标,然后选择修改

gcloud

如果您要修改外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses update 命令

gcloud vmware private-clouds external-addresses update EXTERNAL_ADDRESS_NAME \
  --internal-ip=IP_ADDRESS

API

如需使用 VMware Engine API 修改外部地址,请发出 PATCH 请求:

PATCH "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses/EXTERNAL_ADDRESS_NAME?update_mask=internal_ip"

'{
  "internal_ip": "IP_ADDRESS"
}'

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 地址的名称
  • IP_ADDRESS:此请求的 IP 地址,例如 192.168.1.11

删除外部地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 删除外部地址,请执行以下操作:

控制台

如需使用 Google Cloud 控制台删除外部地址,请执行以下操作:

  1. 在 Google Cloud 控制台中,转到外部 IP 地址页面。

    转到“外部 IP 地址”

  2. 点击选择项目,然后选择包含要删除的外部 IP 地址的组织、文件夹或项目。

  3. 点击行末的删除 图标,然后选择删除

gcloud

如需使用 Google Cloud 控制台删除外部地址,请使用 gcloud vmware private-clouds external-addresses delete 命令

gcloud vmware private-clouds external-addresses delete EXTERNAL_ADDRESS_NAME \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 地址 ID
  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 删除外部地址,请发出 DELETE 请求:

  DELETE "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses/EXTERNAL_IP_ADDRESS"

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 地址的名称

出站流量配置

系统允许外部 IP 地址的出站流量。在 NSX Manager 中设置规则来控制此流量。

后续步骤