客户的web服务器是2003系统,为了保证业务的正常运行,一直有另一台相同的web服务器做冷备。然而冷备的缺点就是假如生产机宕掉或者服务停掉,就需要手工的将冷备的机器切换上线;这样便造成了业务正常运行的断点。

   为保证业务的正常连续运行,需要做负载均衡同时也是双机热备,此次先在非生产环境做好实验。

一、环境描述:

VMware Workstation版本:10.0.0 build-1295980

   操作系统:win2003企业版

每台虚机需要两块网卡,一块网卡用于绑定群集ip,实验中称为公网网卡;另一块用于节点间相互通讯,试验中称为内网网卡。

计算机a:公网地址:192.168.137.19

内网地址:100.0.0.1

计算机b:公网地址:192.168.137.29

内网地址:100.0.0.2

集群ip地址:192.168.137.39

两台虚机的管理员 Administrator密码需一致,不能为空,否则会在添加主机到群集时需添加用户名/密码,出现未知错误。

二、具体实施

  1、先做好一台win2003的虚拟机,需要注意的是网卡设置成桥接模式,存放虚机的文件夹命名为cp1

      2、复制做好的虚机


快速实验win2003NLB负载均衡_操作系统 负载均衡


3、打开虚机1,需再添加一块网卡,同样是桥接模式。

快速实验win2003NLB负载均衡_操作系统 负载均衡_02

4、打开虚机2(即复制过的虚机),需先添加两块网卡,同样是桥接模式。然后再把原先的网卡删掉。

5、开机,提示如下选项时,选择复制

快速实验win2003NLB负载均衡_操作系统 负载均衡_03

6配置管理员密码并安装IIS,记得选择asp.net,否则容易出错误。

快速实验win2003NLB负载均衡_操作系统 负载均衡_04

7、配置网卡地址,不要选择网络负载平衡



快速实验win2003NLB负载均衡_操作系统 负载均衡_05

计算机a的地址


快速实验win2003NLB负载均衡_操作系统 负载均衡_06


计算机b的地址

快速实验win2003NLB负载均衡_操作系统 负载均衡_07



8、打开网络负载平衡管理器

快速实验win2003NLB负载均衡_操作系统 负载均衡_08


9、选择新建

快速实验win2003NLB负载均衡_操作系统 负载均衡_09

10、注意群集参数选择多播

快速实验win2003NLB负载均衡_操作系统 负载均衡_10


11、默认下一步


快速实验win2003NLB负载均衡_操作系统 负载均衡_11


12、将默认的这条规则去掉

快速实验win2003NLB负载均衡_操作系统 负载均衡_12


13、输入本机的内网网卡地址,选择公网网卡作为群集的网卡。


快速实验win2003NLB负载均衡_操作系统 负载均衡_13


14、优先表示符的意思是机器的优先替代顺序,1号机宕掉的话2号机会替代上来,以此类推。


快速实验win2003NLB负载均衡_操作系统 负载均衡_14


15、点击“完成”后,等待配置结果。

快速实验win2003NLB负载均衡_操作系统 负载均衡_15

显示绿色配置成功。


16、添加另外一台主机,进入另外一台计算机b上,打开网络负载平衡管理器,选择连接到现存的集群。(一定是进入另一台计算机b添加,如果还在a上添加会报通讯借口错误)


快速实验win2003NLB负载均衡_操作系统 负载均衡_16


17.输入计算机a的地址,添加集群

快速实验win2003NLB负载均衡_操作系统 负载均衡_17


18、然后选择添加主机到集群

快速实验win2003NLB负载均衡_操作系统 负载均衡_18


19、选择计算机b的公网网卡地址并连接,在可用接口中选择公网地址:


快速实验win2003NLB负载均衡_操作系统 负载均衡_19


20、等待时间比较长,结束

快速实验win2003NLB负载均衡_操作系统 负载均衡_20


21、测试

分别在两台计算机建立网站,网站文件夹新建文本文档,重名为“index.html”,aindex.html内容为a的公网地址:192.168.137.19bindex.html内容为b的公网地址:192.168.137.29。浏览器输入192.168.137.39,显示内容为a的公网地址:192.168.137.19


快速实验win2003NLB负载均衡_操作系统 负载均衡_21

22、禁用a的公网网卡,再次刷新页面,显示内容为b的公网地址:192.168.137.29


快速实验win2003NLB负载均衡_操作系统 负载均衡_22


三、总结

       当然,以上只是测试的时候,为了验证网络负载平衡的效果,两个网站的内容不一致,而在正式应用的时候,网络负载平衡群集的每个节点计算机的内容将是一致的,这样,不管使用那一个节点响应,都保证访问的内容是一致的。

      第十步中的几个选项解释

      单播

      在单播模式下,NLB服务会重新对每个节点中启用NLB的网卡分配MAC地址(此MAC地址称为群集MAC地址),并且所有的NLB节点均使用相同的MAC地址(均使用群集MAC地址),同时NLB会修改所有发送的数据包中的源MAC地址,这样就导致交换机不能将此群集MAC地址绑定在某个端口上。

      工作在单播模式下的NLB可以在所有网络环境下正常运行(兼容性最好),但是由于它的工作特性,具有以下两个限制:

      1.由于NLB所使用的群集MAC地址没有绑定在某个具体的交换机端口上,所以所有的NLB通讯均通过在交换机的所有端口上广播进行,而不管此端口是否连接了NLB节点,这造成了额外的网络流量负担;

      2.由于所有的NLB节点具有相同的MAC地址,NLB节点之间不能通过自己原有的专用IP地址进行通讯。 (例如我们见得最多的就是节点之间就无法ping通)


      多播

      在多播模式下,NLB不会修改NLB节点启用NLB的网络适配器的MAC地址,而是为它再分配一个二层多播MAC地址专用于NLB的通讯(此MAC地址称为群集MAC地址),这样NLB节点之间可以通过自己原有的专用IP地址进行通讯。但是在多播模式中,NLB节点发送的针对群集IP地址/MAC地址ARP请求的ARP回复会将群集IP地址映射到多播MAC地址,而许多路由器或者交换机(例如,港湾和思科的某些产品)会拒绝这一行为。如何解决呢?方法是手工在路由器或交换机上添加静态映射,将群集IP地址映射到群集的多播MAC地址。

      此外,Windows Server 2003提供了一个新的特性,称为IGMP 多播,它可以通过使用IGMP协议支持来使交换机只将NLB通讯发送到连接NLB节点的端口,而不是所有交换机端口。但是此特性必须要求交换机支持IGMP侦听,并且要求群集工作在多播模式下。