作为服务提供方,您可以部署和管理后端基础架构,其中包括用于检查的虚拟机 (VM)、用于分配流量的内部直通网络负载平衡器,以及带内集成资源。
本页面详细介绍了服务提供方必须采取哪些步骤才能提供数据包检查服务。
准备工作
- 登录您的 Google Cloud 账号。如果您是 Google Cloud新手, 请创建一个账号来评估我们的产品在 实际场景中的表现。新客户还可获享 $300 赠金,用于 运行、测试和部署工作负载。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- 确保您在项目中拥有以下 Identity and Access Management (IAM) 角色:
- Compute
Network Admin 角色 (
roles/compute.networkAdmin) - Intercept Deployment Admin 角色 (
roles/networksecurity.interceptDeploymentAdmin)
- Compute
Network Admin 角色 (
启用 Compute Engine 和 Network Security API。
启用 API 所需的角色
如需启用 API,您需要拥有
serviceusage.services.enable权限。如果您 创建了项目,则可能已通过 所有者角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。 了解如何授予角色。- 安装 Google Cloud CLI。如需了解详情,
请参阅 gcloud CLI 概览。
注意:如果您之前未运行过 Google Cloud CLI,请运行
gcloud init命令来初始化您的 gcloud CLI 目录。
准备您的网络
在您计划提供数据包检查服务的每个可用区中,创建并配置必要的网络和计算资源。
创建 VPC 网络。
我们建议您创建自定义模式的虚拟私有云 网络,这样您就可以完全控制子网的 创建。
创建子网。
在包含您要提供数据包检查服务的可用区的每个区域中,至少创建一个子网。您可以使用该子网作为数据包检查虚拟机的网络接口。
创建包含数据包检查虚拟机的托管式或非托管式实例组。
如果可以,我们建议您使用托管式实例组。如需实现完全的可用区隔离,请使用可用区级托管实例组。 如需了解详情,请参阅 在单个可用区中创建 MIG。
创建防火墙规则。
创建入站流量
allow防火墙规则,以允许来自所有相关子网网关 IPv4 地址的UDP数据包,这些地址属于其数据包被拦截的消费者虚拟机所使用的所有子网。如需了解详情,请参阅了解 GENEVE 格式。创建内部直通网络负载平衡器。
在您要提供数据包检查服务的区域的每个可用区中创建一个负载均衡器。
配置负载均衡器时,请注意以下事项:
负载均衡器的后端服务协议必须是
UDP或UNSPECIFIED。负载均衡器的转发规则必须使用
UDP协议,并指定目标端口6081以接受 GENEVE 封装的数据包。确保数据包检查虚拟机保留每个数据包的 5 元组特征。允许的数据包无法使用不同的数据包特征创建新连接。
每个数据包检查虚拟机的负载均衡网络接口 (NIC) 必须使用与负载均衡器的后端服务相同的 VPC 网络。如需了解详情,请参阅实例组后端和 网络接口、后端 服务网络 规范、 和后端服务网络 规则。
GENEVE 封装的数据包会路由到数据包检查虚拟机,其目标与内部直通网络负载平衡器的 IP 地址、
UDP协议和目标端口6081相匹配。每个 GENEVE 封装的数据包的来源 IP 地址是包含其数据包被拦截的消费者虚拟机 NIC 的子网的网关 IPv4 地址。来源端口由不透明哈希计算得出。
您为内部直通网络负载平衡器配置的健康检查必须使用受支持的健康检查协议。入站流量
allow防火墙规则还必须允许健康检查流量。 如需详细了解健康检查,请参阅健康检查 原理。如需简化维护并提高可用性,请为内部直通网络负载平衡器配置故障切换。
配置带内资源
创建以下资源,以便向消费者提供数据包检查服务:
在包含拦截部署的同一项目中或同一组织中的不同项目中创建拦截部署 组 。如需了解详情,请参阅 创建和管理拦截部署 组。
在您已创建数据包检查虚拟机 和内部直通网络负载平衡器的项目的每个可用区中创建一个拦截 部署 。
将每个拦截部署配置为引用内部直通网络负载平衡器的转发规则,该规则具有与拦截部署位于同一可用区中的数据包检查虚拟机。如需了解详情,请参阅创建和管理拦截 部署。
更新包含 拦截部署组的项目的 IAM 政策,向需要使用拦截部署组提供的数据包检查 服务的正文授予 Intercept Deployment External User 角色 (
roles/networksecurity.interceptDeploymentExternalUser) 预定义角色。或者,您也可以授予至少包含预定义角色权限的自定义角色。
配置带内资源时,请考虑以下事项:
拦截部署组、其成员可用区级拦截部署、其内部直通网络负载平衡器和数据包检查虚拟机必须位于单个服务提供方项目中。
在虚拟机和内部直通网络负载平衡器用于数据包检查的提供方 VPC 网络中,所有可用区级拦截部署都必须属于同一拦截部署组。
每个拦截部署仅引用一个内部直通网络负载平衡器。