本节介绍了如何通过公用 IP 支持在 Google Cloud Platform (GCP) 中置备和配置 NSX Advanced Load Balancer 以进行网络负载均衡。
NSX Advanced Load Balancer 不支持 Linux 服务器云和 GCP 上的 GCP IPAM。
关于 Google Cloud Platform (GCP)
Google Cloud Platform 是一种云计算服务,它在 Google 在内部用于最终用户产品(例如搜索和 YouTube)的相同支持基础架构上提供托管服务。Cloud Platform 为开发人员提供了一些产品,以构建包括简单网站和复杂应用程序在内的各种程序。
GCP 是 Google Cloud 企业服务套件的一部分,提供了一组基于云的模块化服务以及一系列开发工具,包括托管和计算、云存储、数据存储、转换 API 和预测 API。
关于 NSX Advanced Load Balancer
NSX Advanced Load Balancer 为内部部署和公有云基础架构提供企业级分布式 ADC 解决方案。它还提供内置的分析功能以诊断和改善最终用户应用程序体验,从而帮助网络管理员更轻松地运行应用程序。
NSX Advanced Load Balancer 是一个完整的软件解决方案,它在商用 x86 服务器上运行或作为虚拟机运行,并且完全可以通过 REST API 调用进行访问。
网络负载均衡
网络负载均衡用于根据入站 IP 协议数据(如地址、端口和协议类型)来均衡系统上的负载。
网络负载均衡功能
网络负载均衡使用指向目标池的转发规则,这些规则会列出可进行负载均衡的实例,并定义必须对这些实例执行的运行状况检查类型。
网络负载均衡是一种非代理的区域负载均衡器。使用网络负载均衡,可以在 SSL 代理和 TCP 代理负载均衡器不支持的端口上对 UDP 流量和 TCP 及 SSL 流量进行负载均衡。
网络负载均衡器是直通负载均衡器。它不会代理来自客户端的连接。
网络负载均衡的限制
不支持协议更新。
无运行状况检查。这会导致故障切换增多。网络负载均衡运行状况检查仅支持 HTTP,因此无法对所有类型的应用程序使用。
子网路由方案不适用于网络负载均衡器。
配置 IPAM
配置区域名称 (region_name
) 和项目 (project_name
),即服务引擎所在的位置以及将在其中创建网络负载均衡器的位置。
要编辑 IPAM 配置文件,请执行以下操作:
在 NSX Advanced Load Balancer UI 上,导航到 。
单击要编辑的 IPAM 配置文件(类型为 Google Cloud Platform IPAM)旁边的编辑图标。此时将显示编辑 IPAM/DNS 配置文件屏幕。
选择手动配置,然后输入项目和区域详细信息,如下图所示:
单击保存。
从 NSX Advanced Load Balancer 版本 22.1.3 开始,可以使用以下 UI:
服务引擎项目 ID - 项目 A(SE 的项目名称)
服务引擎区域 - 区域 A(SE 的区域名称)
区域
VPC 项目 ID
VPC 网络名称
VPC 子网名称
云存储项目 ID
云存储桶名称
2. 为类型字段选择 Avi Vantage IPAM。
3. 添加可用的网络,然后单击保存。
编辑云以添加 IPAM 配置文件
要将 GCP IPAM 添加到 Linux 服务器云,请编辑 Default-Cloud,并选择已创建的 IPAM 提供程序作为 GCP IPAM 提供程序。
从 NSX Advanced Load Balancer 版本 22.1.3 开始,可以使用以下 UI:
您可以在编辑云时添加 IPAM 配置文件,如下所示:
导航到 IPAM/DNS 选项卡。在 IPAM 配置文件字段中,从下拉菜单中选择已创建的 IPAM 配置文件。
在编辑云屏幕中单击保存,以完成云配置。
编辑现有云。
转发规则
在 GCP 中,一个虚拟服务将用作一个网络负载均衡器。这意味着,一个虚拟服务将具有一个包含 GCP 外部 IP 的转发规则作为前端,以及一个包含服务引擎的目标池作为后端。
++Truncated Output++ +------------------------------------+-----------------------------------------------------+ [admin:10-146-43-2]: virtualservice> vip index 1 [admin:10-146-43-2]: virtualservice:vip> auto_allocate_floating_ip Overwriting the previously entered value for auto_allocate_floating_ip [admin:10-146-43-2]: virtualservice:vip> save [admin:10-146-43-2]: virtualservice> save ++ Truncated Output++
目前,仅支持通过 CLI 分配浮动 IP。在未来版本中将纳入 UI 支持。
自动分配 FIP
NLB 的所有 GCP 资源都将在 SE 项目中进行创建。仅支持自动分配浮动 IP。
++Truncated Output++ [2018-07-16 06:48:08,717] INFO [gcp_nlb.allocate_vip:63] old_vip_info: vip { addr: "55.55.55.100" type: V4 } alloc_fip: false || new_vip_info: vip { addr: "55.55.55.100" type: V4 } alloc_fip: true
可使用 Swagger API 通过 PUT
请求自动分配浮动 IP,以用于网络负载均衡 VIP/虚拟服务,如下所示:
"vip" : [ { "availability_zone" : "aeiou", "ip6_address" : "", "subnet" : "", "port_uuid" : "aeiou", "subnet_uuid" : "aeiou", "avi_allocated_vip" : true, "vip_id" : "aeiou", "ip_address" : "", "auto_allocate_floating_ip" : true, * "enabled" : true, "floating_subnet6_uuid" : "aeiou", "auto_allocate_ip" : true, "subnet6" : "", "floating_ip" : "", "floating_subnet_uuid" : "aeiou", "avi_allocated_fip" : true, "subnet6_uuid" : "aeiou", "floating_ip6" : "", "ipam_network_subnet" : "", "network_ref" : "aeiou", "discovered_networks" : [ "" ]
有关从 NSX Advanced Load Balancer API 文档访问 OpenAPI (Swagger 2.0) 的更多信息,请参阅 OpenAPI (Swagger 2.0) 规范集成。
要了解浮动 IP 的状态是否为 UP
,请执行以下操作:
在 NSX Advanced Load Balancer UI 上,单击虚拟服务选项卡。
单击分配了浮动 IP 的虚拟服务以将其选中。
在指向选定的虚拟服务时,将出现一个弹出屏幕,其中显示浮动 IP 的状态为
UP
:
该虚拟服务扩展到两个不同的服务引擎,如下所示:
与网络负载均衡器共享 VIP
创建的网络负载均衡器具有端口 1-65535
,因此可以在相同的 IP 上创建共享 VIP,如下所示: