本教程介绍如何使用 Private Service Connect 使负载均衡服务可从其他 VPC 网络访问。
默认情况下,您在上一个教程中创建的内部直通式网络负载平衡器仅在其自己的 VPC 网络中可用。借助 Private Service Connect,您可以发布服务,使其可供其他 VPC 网络中的资源使用。
本教程面向云架构师、网络架构师、网络管理员和 IT 管理员。
目标
- 创建已发布的服务
- 为已发布的服务流量创建防火墙规则
- 获取服务连接 URI
费用
在本文档中,您将使用的以下收费组件: Google Cloud
您可使用 价格计算器 根据您的预计使用情况来估算费用。
完成本文档中描述的任务后,您可以通过删除所创建的资源来避免继续计费。如需了解详情,请参阅清理。
准备工作
- 完成上一个教程 创建负载均衡服务中的步骤。
- 选择您在上一个教程中选择或创建的服务提供方项目 (
PRODUCER_PROJECT)。在本教程的步骤中使用此项目。
创建已发布的服务
如需使服务可从其他 VPC 网络访问,请发布该服务。如需发布服务,请在与负载均衡器相同的网络和区域中创建以下资源:
- 一个 Private Service Connect 子网,用于在提供方网络和使用方网络之间提供网络地址转换 (NAT) 的 IP 地址。
- 一个服务连接。
以下说明介绍了如何创建可从任何项目访问的已发布服务。在生产环境中,您可能需要限制哪些网络或项目可以访问该服务。
控制台
在 Google Cloud 控制台中,前往 Private Service Connect 页面。
点击已发布服务标签页。
点击发布服务。
在目标详情 部分中,选择负载平衡器 。
选择内部直通式网络负载平衡器
选择您创建的内部负载均衡器
service-lb。对于 Service 名称,输入
published-service。为 NAT 创建 Private Service Connect 子网:
- 点击子网 ,然后点击预留新子网 。
- 对于名称,输入
nat-subnet。 - 对于区域,请选择
REGION。 - 对于 IPv4 范围,输入
10.10.20.0/22。 - 点击 Add (添加)。
对于连接偏好设置,选择 Automatically accept all connections(自动接受所有连接)。
点击添加服务 。
gcloud
使用
gcloud compute networks subnets create命令创建 Private Service Connect 子网。gcloud compute networks subnets create nat-subnet \ --network=service-network \ --region=REGION \ --range=10.10.20.0/22 \ --purpose=PRIVATE_SERVICE_CONNECT
如需发布服务,请使用
gcloud compute service-attachments create命令。gcloud compute service-attachments create published-service \ --region=REGION \ --target-service=projects/PRODUCER_PROJECT/regions/REGION/forwardingRules/service-rule \ --connection-preference=ACCEPT_AUTOMATIC \ --nat-subnets=nat-subnet
替换以下内容:
PRODUCER_PROJECT:提供方项目的 ID。REGION:服务连接的区域。 此区域必须与目标转发规则的 IP 地址的区域相同。
为已发布的服务流量创建防火墙规则
创建防火墙规则,以允许来自 Private Service Connect NAT 子网的流量到达负载均衡器的后端虚拟机。
控制台
在 Google Cloud 控制台中,前往 防火墙政策 页面。
如需允许来自 Private Service Connect NAT 子网的流量到达负载均衡器的后端虚拟机,请点击创建防火墙规则 并使用以下设置:
- 对于名称,输入
fw-allow-nat。 - 对于网络,请选择
service-network。 - 在优先级 字段中,输入
1000。 - 对于流量方向,选择入站。
- 对于对匹配项执行的操作 ,选择允许 。
- 对于目标 ,选择 Specified target tags (指定的目标标记)。
- 对于目标标记,输入
allow-nat。 - 对于来源过滤条件,选择IPv4 范围。
- 对于来源 IPv4 范围,输入
10.10.20.0/22。 - 对于协议和端口,选择全部允许。
- 对于名称,输入
点击创建 。
gcloud
创建
fw-allow-nat防火墙规则,以允许从 Private Service Connect NAT 子网到虚拟机后端的通信:gcloud compute firewall-rules create fw-allow-nat \ --network=service-network \ --action=allow \ --direction=ingress \ --source-ranges=10.10.20.0/22 \ --rules=tcp,udp,icmp
获取服务连接 URI
您可以使用服务连接 URI 在下一个 教程从其他 VPC 网络中配置端点。
控制台
在 Google Cloud 控制台中,前往 Private Service Connect 页面。
点击已发布服务标签页。
点击要查看的服务。
服务连接 字段包含服务连接 URI。
gcloud
使用
gcloud compute service-attachments describecommand 命令查看已发布服务的详细信息。selfLink字段包含服务连接 URI。gcloud compute service-attachments describe \ published-service --region=REGION将
REGION替换为包含服务连接的区域。