可以通过使用 HTTPS 应用程序配置文件配置 L7 虚拟服务来实现 App Volumes Manager 的负载均衡。

App Volumes 服务器不支持源同一客户端从不同源 IP 地址发起的连接。如果虚拟服务部署为活动/活动扩展,则来自同一客户端的多个连接可通过不同服务引擎进行处理。由于每个服务引擎使用不同的 SNAT IP,因此服务器可能会看到同一客户端具有不同源 IP 的多个连接,从而导致身份验证失败。要解决此问题,请使用下面提供的选项之一:

  • 选项 1:在对 App Volumes 进行负载均衡时使用活动/备用服务引擎组

  • 选项 2:如果使用本机扩展,请通过 CLI 将流量分配算法配置为仅基于客户端 IP 地址,而不是客户端 IP 和端口:

configure virtualservice <appvol-vs-name>
flow_dist flow_dist consistent_hash_source_ip_address
save
注:

选项 2 仅适用于本机扩展的情况。如果使用 ECMP 扩展(例如,使用 BGP),则服务引擎之间的流量分配取决于上游路由器使用的 ECMP 哈希算法。如果该哈希基于完整的 5 元组(源/目标 IP/端口/协议),则会遇到此问题。

使用 GSLB 的多站点

可以使用任何负载均衡算法(基于地理、基于源 IP 等)为 NSX Advanced Load Balancer 配置 GSLB,以将流量定向到所需站点。即使在同一地理范围内,这也会避免东西向流量。站点 1 可以位于与站点 2 生态系统不同的任何生态系统中。例如,站点 1 可能位于本地,而站点 2 可能位于 VMC 上。



高可用性

建议在弹性活动/活动高可用性模式下部署 NSX Advanced Load Balancer 服务引擎。在活动/活动高可用性部署模式下,虚拟服务将放置在两个服务引擎上。因此,一个服务引擎出现故障将仅暂时影响流经该特定 SE 的用户流量。有关更多信息,请参阅VMware NSX Advanced Load Balancer 配置指南》中的“高可用性和冗余”主题。

注:

为获得最佳性能,建议对 Horizon 使用单独的 NSX Advanced Load Balancer SE。请勿将任何其他虚拟服务放置在同一 SE 上。

大小调整注意事项

NSX Advanced Load Balancer 控制器 大小调整

建议在为生产部署配置的集群中放置 3 个控制器。NSX Advanced Load Balancer 控制器 需要最低规格的 CPU、RAM 和存储。有关大小调整准则的更多信息,请参阅VMware NSX Advanced Load Balancer 安装指南》中的“NSX Advanced Load Balancer Controller 大小调整”主题。

NSX Advanced Load Balancer SE 大小调整

对于 Horizon 部署,SE 大小调整取决于用户数和每个用户的吞吐量。SE 大小调整还取决于通过 VDI 访问的应用程序,因为视频和 3D 建模等较高带宽的应用程序需要较高的吞吐量。吞吐量的最大影响因素是辅助协议 (Blast/PCoIP)。

SE 的数量取决于选择用于对 UAG 进行负载均衡的部署模型,如下所述:

  1. 具有两个虚拟服务且使用 307 重定向解决方案的单个 VIP:Blast 和 PCoIP 协议流经 NSX Advanced Load Balancer SE,因此必须针对 Blast 和 PCoIP 吞吐量调整 SE 的大小。

  2. 使用 307 重定向解决方案的 (n+1) VIP:只有 XML-API 协议流经 NSX Advanced Load Balancer SE,因此所需的 SE 数会少些。

  3. 具有两个虚拟服务的单个 VIP:Blast 和 PCoIP 协议流经 NSX Advanced Load Balancer SE,因此必须针对 Blast 和 PCoIP 吞吐量调整 SE 的大小。

  4. 单个 L4 虚拟服务:Blast 和 PCoIP 协议流经 NSX Advanced Load Balancer SE,因此必须针对 Blast 和 PCoIP 吞吐量调整 SE 的大小。

  5. (n+1) VIP:只有 XML-API 协议流经 NSX Advanced Load Balancer SE,因此所需的 SE 数会少些。

  6. 建议使用单独的 SE 进行连接服务器负载均衡,以避免流量流回到内部客户端的 DMZ 中。

活动/活动高可用性配置至少需要两个服务引擎。

每个站点都需要根据自己的 SE 调整大小,并且在站点之间需要具有一个额外的 SE 以满足 GSLB 要求。

具有两个虚拟服务和单个 L4 虚拟服务的单个 VIP 的大小调整示例

示例 1

在单个站点中拥有 250 个具有小型工作负载(电子邮件、MS Office 应用程序和多个监控器)的用户。

用户数

每个用户的大致吞吐量

总吞吐量 =用户数 X 每个用户的吞吐量

活动/活动 HA

250

600 Kbps

150 Mbps

1 核 SE X 2

示例 2

在单个站点中拥有 1500 个具有中型工作负载(频繁的文件传输、复杂的文档编辑、480 p 视频和 MS Office 应用程序)的用户。

用户数

每个用户的大致吞吐量

总吞吐量 = 用户数 X 每个用户的吞吐量

活动/活动 HA

1500

2 Mbps

3 Gbps

2 核 SE X 2

示例 3

在单个站点中拥有 1000 个具有高工作负载(3D 建模、高清视频和 3D 图形)的用户。

用户数

每个用户的大致吞吐量

总吞吐量 = 用户数 X 每个用户的吞吐量

活动/活动 HA

1000

20 Mbps

20 Gbps

4 核 SE X 4

注:
  • 对于视频或对抖动敏感的应用程序,建议使用专用调度程序以获得最佳性能。

  • 对于视频等高带宽应用程序,建议使用 L3 扩展以获取最佳性能。

示例 4

在单个站点中拥有 5000 个具有中型工作负载(频繁的文件传输、复杂的文档编辑、480 p 视频和 MS Office 应用程序)的用户。

用户数

每个用户的大致吞吐量

总吞吐量 =用户数 X 每个用户的吞吐量

活动/活动 HA

5000

2 Mbps

10 Gbps

3 核 SE X 2

注:

建议为更高的 PPS 使用专用调度程序,以提高性能。

示例 5

在单个站点中拥有 10000 个具有小型工作负载(电子邮件、MS Office 应用程序和多个监控器)的用户。

用户数

每个用户的大致吞吐量

总吞吐量 =用户数 X 每个用户的吞吐量

活动/活动 HA

10000

600 Kbps

6 Gbps

2 核 SE X 2

单个站点的大小调整参考摘要如下所示:

每个用户的吞吐量

小型(每个用户最多 600 kbps)

中型(每个用户最多 2 Mbps)

大型(每个用户最多 20 Mbps)

100

1 核 X 2 个 SE

1 核 X 2 个 SE

1 核 X 2 个 SE

700

1 核 X 2 个 SE

1 核 X 2 个 SE

4 核 X 3 个 SE

1000

1 核 X 2 个 SE

1 核 X 2 个 SE

4 核 X 4 个 SE(建议进行 L3 扩展)

5000

2 核 X 2 个 SE

4 核 X 2 个 SE

4 核 X 16 个 SE(需要 L3 扩展)

10000

2 核 X 2 个 SE

4 核 X 4 个 SE(建议进行 L3 扩展)

4 核 X 32 个 SE(需要 L3 扩展)

n+1 VIP 的大小调整示例

用户数

SE 数

最多 1000 个用户

1 核 * 2 个 SE

1000 - 5000 个用户

2 核 * 2 个 SE

5000 - 10000 个用户

3 核 * 2 个 SE

连接服务器负载均衡的大小调整示例

用户数

SE 数

最多 1000 个用户

1 核 * 2 个 SE

1000 - 5000 个用户

2 核 * 2 个 SE

5000 - 10000 个用户

3 核 * 2 个 SE

使用 GSLB 调整大小

GSLB 要求每个站点具有 1 个 SE。对于 Horizon 的 GSLB,这可以是 1 核 SE。例如,在站点 1 中拥有 250 个具有小型工作负载(电子邮件、MS Office 应用程序和多个监控器)的用户。在站点 2 中拥有 250 个具有高工作负载(3D 建模、高清视频和 3D 图形)的用户。

站点

用户数

每个用户的大致吞吐量

总吞吐量 = 用户数 X 每个用户的吞吐量(每个用户的最大吞吐量为 20 Mbps)

活动/活动 HA 模式下的 SE 数

GSLB

站点 1

250

600 Kbps

150 Mbps

1 核 SE X 2

1 核 SE

站点 2

250

600 Kbps

150 Mbps

1 核 SE X 2

1 核 SE

总核数 = 6

4

2