windows 2000 网络载量平衡服务增强了 web 服务器、ftp 服务器和其他关键任务服务器之类的 internet 服务器程序的可用性和可伸缩性。运行 windows 2000 的单个计算机可提供有限的服务器可靠性和可伸缩性能。但是,通过将两个或多个运行 windows 2000 advanced server 的计算机的资源组合为单个群集,网络载量平衡可以提供 web 服务器和其他关键任务服务器所需的性能和可靠性。启用网络载量平衡服务的方法如图1所示,在要启用网络载量平衡的网卡的属性页中选取"网络载量平衡"。

图1
windows 2000 advanced server网络载量平衡群集最多可以支持32个群集主机。
每个主机运行所需服务器程序(如 web、ftp、telnet 和电子邮件服务器)的独立副本。对于某些服务,如使用 web 服务器的服务,群集中的所有主机上都运行程序的一个副本,并且在这些服务之间进行网络载量平衡。对于其他服务,例如电子邮件,只有服务的一个副本处理群集中的工作负载。除了为这些服务提供载量平衡外,网络载量平衡允许网络通信流向一台主机,只有当发生故障时才把通信转移到另一主机。
网络载量平衡将一些运行服务器程序的计算机会合在一起,而这些服务器程序必须使用 tcp/ip 网络协议。网络载量平衡允许群集中的所有计算机通过一组相同的群集地址来寻址(同时保持其现有的使用唯一的专用 ip 地址寻址的特性)。网络载量平衡以在主机之间平衡 tcp/ip 通信量的形式来分发接收的客户请求。
网络载量平衡工作原理
组件:
网络载量平衡服务的组件包括:网络载量平衡网络设备驱动wlbs.sys和网络载量平衡控制程序wlbs.exe。网络载量平衡作为 windows 2000 联网驱动程序运行。它的操作对 tcp/ip 联网协议栈是透明的。下图表明了在网络载量平衡主机的典型配置中网络载量平衡软件和其他软件组件之间的关系。

图2
虚拟mac地址与群集主ip地址:
配置完网络载量平衡后,网络载量平衡服务(wlbs)虚拟出一个mac地址,该mac地址与各群集主机的mac地址无关,且为群集中的各主机所共用。同时,网络载量平衡服务将指定的群集的主ip地址指派给该mac地址。所有的客户端请求被发往群集主 ip 地址,传入该ip地址的客户请求被群集中的所有主机接收,网络载量平衡在传入指定 tcp 和 udp 端口的数据报到达 tcp/ip 协议软件之前对其进行筛选,根据在"端口规则"中配置的值将客户请求在群集中进行分配,只有被分配为处理该客户请求的群集主机才处理它,其余的群集主机则丢弃该请求。
多播(multicast)支持:
网络载量平衡可以运行于两种模式下:单播和多播。默认情况下启用的是单播支持。
如果禁用多播支持(导致主机还原为单播模式),网络载量平衡将自动命令属于群集适配器的驱动程序代替该适配器的唯一内置网络地址,并将其 mac 地址改为群集的 mac 地址。这是用于所有群集主机的地址。不需要手工配置网卡即可识别该地址。(注意有些网卡不支持修改它们的 mac 地址。如果遇到此问题,则必须安装有效的网卡。)
如果启用该选项,网络载量平衡将把属于群集适配器的群集 mac 地址转换为多播地址。该选项还同时确保将该群集的主 ip 地址解析为 arp 协议部分的多播地址。同时,该适配器现在可以使用在单播模式中被禁止的最初的内置 mac 地址。
如果没有启用多播支持,应该考虑安装专用网卡以得到优化的性能和全部网络功能。尽管成功的群集可以只安装一个网卡并且无需激活多播支持,但是对这种方法仍有两个限制:
1.群集主机间的普通网络通信是不可能的。
2.群集内单独计算机的网络通信将对该群集内的所有计算机产生附加的网络开销。
heartbeat包和网络载量平衡群集的会聚过程:
网路负载平衡群集主机间通过交换heartbeat消息来维护群集的成员关系信息。当群集状态改变时(例如主机失败,离开或加入群集),网络载量平衡调用一个叫做会聚的过程,在此过程中主机交换消息来确定群集新的一致状态,并选出拥有最高主机优先级的主机作为默认主机,同时将发往原失败主机的客户端请求在当前群集成员中重新进行分配。。当所有群集主机对群集的新状态达成一致后,它们将在 windows 2000 事件日志中记录会合的完成情况。会聚过程通常小于10秒钟,所以该过程对客户端操作所造成的影响是很小的。
统计映射算法:
发送到网络载量平衡群集的客户端请求需要在群集内进行分配,这是通过执行统计映射算法来实现的。该算法在群集中的所有主机上执行,客户端请求在群集主机间的分配主要受到以下参数的影响:
1.主机优先级
2.端口规则
主机优先级用来在群集中的主机脱机的情况下,决定在需要处理通信时由该群集中的哪一台主机接管这项工作。主机优先级的允许值范围是从 1 到主机的最大数目。较小的值表示具有较高的优先级(这里 1 是最高优先级)。群集中的每台主机必须指定唯一的主机优先级。
端口规则中参数的设置用于控制群集的运行方式。其中用于处理端口网络通信的方法叫做"筛选模式"。有三种筛选模式:多主机、单主机和禁用模式。多主机模式是缺省设置,只有在这种模式下才可以将客户端的请求在群集中进行分配,也就是实现网络载量平衡。单主机模式只有在缺省主机出错的情况下才将客户端请求转到别的主机上,其实质是实现了多主机容错体系。"负荷量分配"参数用于确定在多主机模式下网络载量平衡群集各主机所要承担的负荷量,以百分比的形式设置。另外,可以为客户关系选择下面的三个选项之一:无、单一和 c 类。"单一"和"c 类"用来确保来自特定客户机或特定网段的所有网络通信信息可以送到同一个群集主机上处理。而"无"选项则设置不需要将来自同一客户机的请求送到同一群集主机上处理。该选项对于需要维持会话状态的应用作用很大,如asp会话等。
配置网络载量平衡
了解了网络载量平衡的工作原理,我们再来看看网络载量平衡的配置方法。首先启用网络载量平衡是在网卡的属性页中设置,参见图1。而网络载量平衡的配置又分为群集配置和tcp/ip配置两部分,其中群集配置又分为群集参数配置、主机参数配置和端口规则配置三项,如下图所示:



图5
下面我们结合实例来介绍网络载量平衡的配置。
场景:
两台主机a和b,想做成网络载量平衡群集,其从专有的ip分别为172.16.1.21和172.16.1.22,群集主ip为172.16.1.1。
网络载量平衡群集的配置在单网卡和多网卡主机上均可实现,但其配置方法有一定的区别。
单网卡群集主机的配置方法:
其网络连接如下图所示:

图6
分页:[1] [2]