NLB群集的操作模式

最近很多学员都在问我NLB群集两种操作模式的区别,所以今天特地写一篇关于NLB群集操作模式的一篇博文,供大家参考,也希望论坛中各位高手给予指点。
 
Windows NLB群集有两种操作模式:单播模式、多播模式。
单播模式(交换机不允许两个port注册相同的MAC地址):二层交换机的每一个端口(PORT)所注册的MAC地址必须是唯一的,也就是说,每个端口的MAC不能重复,当两台服务器成为群集的时候,那么也就意味着,这两台服务器的网卡启用了NLB群集的功能,那么这两个网卡就有一个相同的MAC地址:00-ab-11-22-33-44即群集MAC。由于两台服务器直接连接在二层交换机的端口上,所以这两个交换机的端口都会被注册成为00-ab-11-22-33-44,以此,交换机的端口MAC产生了冲突,这是不允许的。如图:

NLB群集的两种操作模式-1_第1张图片

既然出现了问题,那么,我们就要利用MaskSourceMAC的解决这个问题,也就是将群集MAC地址的最高第2组设为主机ID。那么第一台主机是01,第二台主机是02.如图:

NLB群集的两种操作模式-1_第2张图片

单播模式(Switch Flooding——交换机泛红):我们已经知道,交换机的每一个端口都是唯一的,路由器接收到群集IP的数据包时,它会通过ARP地址来查询群集MAC地址,不过,交换机端口(port)没有群集MAC地址,因为我们已经通过MaskSourceMAC功能解决交换机端口MAC相同的问题,当然交换机端口也没有所谓的群集MAC地址,这个时候,交换机就会进行泛红,其实说白了,就是向每个端口除接收端口进行广播,这样会造成额外的网络负担,说的通俗点就是,会造成大大的占用网络带宽。如图:

NLB群集的两种操作模式-1_第3张图片

虽然泛红现象可以造成额外的网络负担,不过,群集中的主机都能接收到发来的数据包。那么我们如何解决交换机泛红问题呢?我们可以先将两台群集主机连接在一台HUB(集线器)上,然后再禁用MaskSourceMAC功能,这样,只有HUB连接的交换机端口注册群集MAC,这样就不会产生泛红问题了。如图:

NLB群集的两种操作模式-1_第4张图片

禁用MaskSourceMAC功能的方法:开始——运行——regedit——HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WLBS\Parameters\Interface\Adapter-GUID,将Adapter-GUID值改为0即可。
单播模式(群集服务器之间无法相互通信的问题):既然是NLB群集,并且支持着WEB服务,也就意味着,每一台群集主机上的web内容都是一样的,我们可以利用DFS复制技术将两台群集里的web内容进行同步,那么就必须让两台主机进行通信。如果我们选择单播模式,并且选择一块网卡,那么就会产生两台群集主机不通信的问题。如图:

NLB群集的两种操作模式-1_第5张图片

上图所示,当左边的主机要与右边的主机进行通信的时候,它会通过ARP请求数据包来询问其主机的MAC地址,而右边主机回复的MAC地址是群集MAC,也就是和左边的MAC是一样的,所以这个时候,无法进行通信。那么解决方法就是,将每台群集主机安装两块网卡,并且安装的两块网卡不启用群集服务,这样通信就不会出现问题了。如图:

NLB群集的两种操作模式-1_第6张图片 

昨天睡觉肩膀睡的直疼,今天先写到这了哈,多播的过两天就写!