NSX Advanced Load Balancer Controller 和服务引擎可部署在启用了 VMware vSphere High Availability (HA) 和 Distributed Resource Scheduler (DRS) 功能的环境中。本主题详细介绍了执行 HA-DRS 或实时 vMotion 时的高可用性相关注意事项。

关于 VMware vSphere High Availability

不论使用哪种操作系统及其中运行的应用程序有哪些,VMware vSphere High Availability 都可以提供在虚拟机中运行的大多数应用程序所需的高可用性。High Availability 可针对虚拟化 IT 环境中的硬件和操作系统中断提供统一、经济高效的故障切换保护。

有关 High Availability 的更多信息,请参阅高可用性选项

VMware vSphere Distributed Resource Scheduler

VMware DRS 允许将主机分组到资源集群中,以分离不同业务部门的计算需求。VMware vSphere 集群允许您:

  • 为工作负载提供高度可用的资源

  • 均衡工作负载以实现最佳性能

  • 在不中断服务的情况下扩展和管理计算资源

有关 Distributed Resource Scheduler (DRS) 和 Distributed Power Management (DPM) 的更多详细信息,请参阅 DRS-DPM

关于 VMware vSphere vMotion

VMware vSphere vMotion 是在服务器之间对工作负载进行零停机实时迁移的过程。在工作负载迁移期间,应用程序仍可保持运行,且您可以继续访问所需的系统。有关 vMotion 的更多详细信息,请参阅 vSphere vMotion

注:

部署时,必须遵循 VMware 提供的相应建议来配置 VMware HA、DRS 和 vSAN 功能。

在已启用 VMware HA 的主机上部署 NSX Advanced Load Balancer

在已启用 VMware HA 的主机上进行部署时,NSX Advanced Load Balancer 支持控制器集群和服务引擎。

部署必备条件

如果 VMware 集群配置了 vSphere HA 并启用了专用故障切换主机,则必须在服务引擎组属性的主机排除列表字段中配置同一组主机。

服务引擎因主机故障被标记为关闭时的观察结果

下面列出了在与 vCenter 集成期间,服务引擎因主机故障被标记为关闭时的观察结果和注意事项:

  • 服务引擎组中的现有服务引擎可用,并且具有容量 (Existing Service Engines are available in the Service Engine Group and have capacity)。

    • 当现有的服务引擎可用于放置虚拟服务时,如果发生 SE 故障,控制器会立即对 SE 上的虚拟服务进行编程处理。这是一项标准功能,与 VMware HA 配置无关。

  • 服务引擎组中的服务引擎没有容量 (Service Engines in the Service Engine Group do not have capacity)。

    • 如果因为 SE 组已达到最大 SE 容量,且所有现有 SE 都没有额外容量,而导致控制器无法再部署其他服务引擎,vSphere HA 将在其他 ESXi 主机上重新启动出现故障的服务引擎虚拟机。根据 NSX Advanced Load Balancer 测试鉴定,此操作需要 2-3 分钟时间。

当控制器因现有 SE 没有容量而需要部署其他服务引擎(在写入访问模式下)时,控制器将启动新服务引擎虚拟机的部署。根据 NSX Advanced Load Balancer 测试鉴定,此操作需要 4-5 分钟时间。

  • 服务引擎工作负载正在已启用 VMware DRS 的集群上运行 (Service Engine workloads running on VMware DRS enabled cluster)。

    • vCenter 管理员需要确保,已启用 VMware DRS 的集群内将托管服务引擎工作负载的所有 ESXi 主机都具有以下配置:

      • 已创建未连接物理适配器的 vSwtich0(仅内部交换机)。

      • vSwitch0 必须为标准交换机 PG 创建虚拟机端口组,并将名称设置为 Avi Internal

实时 vMotion 迁移

通过 vMotion 主动迁移控制器和服务引擎的行为,与下述“在已启用 vSphere DRS 的情况下部署 NSX Advanced Load Balancer”部分中列出的行为相同。

用于 SE 的 vSphere HA

在对 SE 进行 vSphere HA 故障切换时,虚拟服务在运行方面的可用性以及切换所需的时间如下所示:

虚拟服务插槽可用性

虚拟服务放置/切换时间

虚拟服务恢复(通过控制器或 vSphere HA)

其他 SE 中有可用的虚拟服务插槽(虚拟服务已扩展)

虚拟服务切换到可用的 SE;有关切换所需的时间,请参阅《VMware NSX Advanced Load Balancer 配置指南》中的“SE 到 SE 故障检测方法”主题。

虚拟服务在 vSphere HA 启动 SE 之前恢复。

其他 SE 中有可用的虚拟服务插槽(虚拟服务未扩展)

根据默认控制器 - SE 检测时间,虚拟服务切换到其他 SE 大约需要一分钟。

虚拟服务在 vSphere HA 启动 SE 之前恢复。

SE 组的其他 SE 中没有可用的虚拟服务插槽。

检测时间与第 1 种情况相同。控制器根据 SE 组容量启动新 SE。虚拟服务将被放置到新 SE 上。

虚拟服务将被放置到新 SE 上,所需时间大约为 3 到 5 分钟。

在已启用 vSphere DRS 的情况下部署 NSX Advanced Load Balancer

  • 控制器集群:

    在已启用 vSphere DRS 的主机上进行部署时,NSX Advanced Load Balancer 支持控制器集群。

    vSphere DRS 可确保在通过 vMotion 迁移控制器虚拟机节点期间,控制器虚拟机可用。

    注:

    在实时 vMotion 迁移时段内对控制器进行 API 调用期间,可能会短暂丢失实时衡量指标数据,并发生延迟。

  • 服务引擎:

    在已启用 vSphere DRS 的主机上进行部署时,NSX Advanced Load Balancer 支持服务引擎。

    • 部署必备条件:不建议使用“5 级(激进)”迁移级别,因为在正常运行过程中可能会由于高 CPU 警报而对服务引擎执行 vMotion 迁移。有关 Hypervisor 报告的服务引擎 CPU 占用率高的更多信息,请参阅《VMware NSX Advanced Load Balancer 监控和运行指南》中的“CPU 占用率差异”主题。

  • 对应用程序(数据平面)流量的影响:

    以下数据基于 NSX Advanced Load Balancer 在代表性测试拓扑中的鉴定结果:

    • vMotion 迁移会导致在 Hypervisor 级别重新配置数据平面。下面列出了在使用不同应用程序协议时,对 NSX Advanced Load Balancer 的观察结果:

      • 对于基于 TCP 的应用程序,TCP 协议的重试机制可解决任何数据包丢失问题,而不影响应用程序。因此,未观察到流量丢失。

      • 对于基于 UDP 或 ICMP 的应用程序,可能会在短时间段内出现流量故障。观察到 15-30 毫秒的流量丢失。

    • 在 vMotion 迁移期间,控制器和其他服务引擎可以向正在执行 vMotion 迁移的服务引擎注册数据平面检测信号的短暂丢失。当以下事件按顺序在控制器上生成并显示时,即表示发生此情况:

      • SE_DP_HB_FAILED,后跟

      • SE_DP_HB_RECOVERED

    如果此系列事件在 vMotion 迁移期间发生并随后恢复,则可以将其忽略。