Evidian Logo

Eviden > SafeKit:全合一 SANless 高可用性与应用程序集群软件 > 微软 NLB VMware 替代方案:解决组播和单播问题

微软 NLB VMware 替代方案:解决组播和单播问题

SafeKit提出了一种基于虚拟IP的无SAN集群负载均衡方案

Microsoft NLB负载网络负载均衡多播模式

VMware的基础知识所介绍的,处于Microsoft负载 NLB网络负载均衡多播模式时,你需要手动设置每个连接到集群的端口的开关和路由器上的地址解析协议。在像云那种未知网络环境中安装Microsoft网络负载均衡多点发送模式会被证明为是一项复杂和艰苦的任务。

Microsoft负载网络负载均衡单播模式

使用Microsoft负载网络负载均衡单点发送模式,当任何一台虚拟机打开时,您必须设置ESXi/ESX主机不要发送反向地址解析协议包。这就是为什么VMware建议使用NLB多播模式配置集群

使用的SafeKit替代产品

SafeKit负载将网络负载均衡作为它的高可用软件提议(负载网络负载均衡,自动应用重启和实时复制)融入进来。如同Microsoft网络负载均衡一样,该网络负载均衡也通过滤装在网络堆栈的数据包来实现。该方案可用在Windows and Linux 上面使用。在SafeKit farm集群中,虚拟IP地址被作为一个化名IP地址设置在物理机或虚拟机的网络信息中心卡上。一个简单的网络就可以安装负载均衡,无需Microsoft网络负载均衡要求的两个网络卡和两个IP网络作为先决条件。

SafeKit virtual IP/vmac结构不需要特殊的网络配置,并且网络负载均衡可以在任何环境下运行。当方案必须在未知交换机或路由器:物理服务器或虚拟服务器,和云这类的未知的基础架构上配置时,这是一个非常重要的特点。

SafeKit 集群在场(Farm)模式下是如何与 协同工作的?

场(Farm)模式集群中的虚拟 IP 地址

SafeKit 集群在场(Farm)模式下如何实现  网络负载均衡和故障转移

在上图中, 应用程序正在 3 台服务器上运行(3 仅为一个示例,实际可以是 2 台或更多)。用户连接到一个虚拟 IP 地址。

虚拟 IP 地址配置在场模式集群中每台服务器的本地。
发送到虚拟 IP 地址 holiday 的输入流量会被所有服务器接收,并通过每台服务器内核中的网络过滤器在它们之间进行分流。

SafeKit 能够检测硬件和软件故障,在发生故障时重新配置网络过滤器,并提供可配置的应用程序检查器及恢复脚本。

网络过滤器中的负载均衡

网络过滤器内部的网络负载均衡算法是基于客户端数据包的身份(客户端 IP 地址、客户端 TCP 端口)来实现的。根据输入的客户端数据包身份,集群中只有一台服务器上的过滤器会接收该数据包,而其他服务器上的过滤器则会将其拒绝。

一旦数据包被某台服务器上的过滤器接收,响应客户端请求的 应用程序就只会占用该服务器的 CPU 和内存。输出的消息会直接从该应用服务器发送给客户端。

如果某台服务器发生故障,场(Farm)心跳协议会重新配置网络负载均衡集群中的过滤器,从而将流量重新均衡到其余可用的服务器上。

有状态或无状态应用程序

对于有状态的 应用程序,存在会话亲和性(Session Affinity)。同一个客户端在进行多个 TCP 会话时必须连接到同一台服务器,以便在服务器上检索其上下文。在这种情况下,SafeKit 负载均衡规则是基于客户端 IP 地址进行配置的。因此,同一个客户端在多个 TCP 会话中始终会连接到同一台服务器。而不同的客户端则会分布在场(Farm)中的不同服务器上。

对于无状态的 应用程序,不存在会话亲和性。同一个客户端在进行多个 TCP 会话时,可以连接到场中的不同服务器。服务器本地不会跨会话存储任何上下文。在这种情况下,SafeKit 负载均衡规则是基于 TCP 客户端会话身份进行配置的。这种配置最适合在服务器之间分配会话,但它需要一个不需要会话亲和性的 TCP 服务。

如何为 配置场(Farm)模式的 SafeKit 集群?

SafeKit Web 控制台:用于  网络负载均衡和虚拟 IP 管理的场(Farm)模式集群配置。

场(Farm)模式的 SafeKit 集群专为服务的高可用性和可扩展性而设计。其配置重点在于将传入的流量同时分配到两个节点上:

  • 负载均衡服务(Macros 标签页):定义要在所有节点上保持活动状态的特定应用程序服务(例如 Apache、IIS、Nginx)。
  • 心跳网络:用于检测节点是否已离开集群(场)的通信路径,一旦离开将立即触发流量的重新分配。
  • 虚拟 IP(场 VIP):与镜像(Mirror)集群不同,场 VIP 是通过内核过滤算法在节点之间共享的,以此来分发网络流量。
  • 负载均衡规则:根据源 IP 地址或端口定义流量分配策略。
  • 检查器(Checkers):监控应用程序的健康状态,并在检测到进程故障时触发自动重启。

如何为 监控场(Farm)模式的 SafeKit 集群?

SafeKit 控制台:监控 2 节点场(Farm)模式集群,显示两个  节点均处于 UP 状态且负载均衡处于活动状态。

监控场模式的集群可以直观地了解其双活(Active-Active)架构的运行状态,在此架构中所有节点都会为应用程序的性能做出贡献(本例中显示为 2 个节点):

  • UP 状态(2 个节点各占 50%):在健康的场中,两个节点都处于“UP”(50%)状态,这意味着它们都在通过共享的虚拟 IP 主动接收并处理客户端请求。
  • 自动重新均衡:如果某一个节点发生故障,控制台会直观地显示剩余节点接管 100% 的流量。这里不存在“故障转移”延迟,因为存活的节点本身就已经处于活动状态(仅需几秒钟的检测时间)。
  • 节点并入:当修复后的节点重新启动时,它会从“STOP”状态转换为“UP”状态,并自动开始接收其分担的负载,无需管理员的人工干预。
  • 无数据同步:请注意,在场模式集群中,不存在“橙色”的数据重新同步状态,因为各节点通常是无状态的,或者共享同一个后端数据库(该数据库可以在镜像集群中单独受到保护)。

除了简单的状态图标外,该界面还提供了一键式节点 management 功能,允许您在计划维护时手动停止或启动某个节点,而共享的虚拟 IP 会自动重新分配流量,绝不中断用户的业务活动。

🔍 SafeKit 高可用性导航中心

探索 SafeKit:功能特性、技术视频、文档资料及免费试用
资源类型 描述 直接链接
关键特性 为什么选择 SafeKit 实现简单且经济高效的高可用性? 查看为何选择 SafeKit 实现高可用性
使用案例 探索 SafeKit 如何确保关键基础设施的高可用性 查看所有使用案例
部署模式 全合一 SANless HA:无共享软件集群 查看 SafeKit 全合一 SANless HA
HA 策略 SafeKit:基础设施(VM)级 vs. 应用程序级高可用性 查看 SafeKit HA 与冗余:VM 级 vs. 应用级
技术规格 SafeKit 集群的技术限制 查看 SafeKit 高可用性限制条件
概念验证 SafeKit:高可用性配置与故障转移演示 查看 SafeKit 故障转移教程
架构 SafeKit 镜像集群(Mirror Cluster)工作原理(实时复制与故障转移) 查看 SafeKit 镜像集群:实时复制与故障转移
架构 SafeKit 场集群(Farm Cluster)工作原理(网络负载均衡与故障转移) 查看 SafeKit 场集群:网络负载均衡与故障转移
竞争优势 对比:SafeKit vs. 传统高可用性(HA)集群 查看 SafeKit vs. 传统 HA 集群对比
技术资源 SafeKit 高可用性:文档、下载与试用 查看 SafeKit HA 免费试用与技术文档
预配置解决方案 SafeKit 应用模块库:开箱即用的 HA 解决方案 查看 SafeKit 高可用性应用模块