概述:本次测试Windows Server 2012 NLB,与08变化不大,步骤比较简单。
NLB算法特点:
在NLB群集中,每台服务器都会有一个属于自己的静态IP地址,同时NLB群集中的所有服务器还有一个共同的IP地址―NLB群集地址;
当客户向NLB群集(NLB的虚拟IP地址)发起请求时,其实客户的请求数据包是发送到所有的NLB节点(即:NLB算法需要NLB群集中的所有主机都能看到发往群集的每一个数据包。),然后运行在NLB节点上的NLB服务根据同样的NLB算法来确定是否应该由自己进行处理,如果不是则丢弃客户的请求数据包,如果是则进行处理。
网络负载平衡使得单个子网上的所有群集主机可以同时检测群集 IP 地址的传入网络通信。在每个群集主机上,网络负载平衡驱动程序充当群集适配器驱动程序和 TCP/IP 堆栈间的过滤器,以便在主机间分配通信。
NLB模式:单播、多播、IGMP,重点介绍前2种。
单播:在单播模式下,NLB重新对每个NLB节点中启用NLB的网络适配器分配MAC地址(此MAC地址称为群集MAC地址),并且所有的NLB节点均使用相同的MAC地址(均使用群集MAC地址),同时NLB修改所有发送的数据包中的源MAC地址,确保使交换机不能将此群集MAC地址绑定在某个端口上。配置单播模式,在“群集IP配置”中的“网络地址”是以“02 - BF”开头,后面紧跟IP地址的十六进制表示,该网络地址与实际主机的MAC地址相同,后续加入的主机也将修改为此MAC地址。
工作在单播模式下的NLB可以在所有网络环境下正常运行,但是由于它的工作特性,具有以下两个限制:
由于NLB所使用的群集MAC地址没有绑定在某个具体的交换机端口上,所以所有的NLB通讯均通过在交换机的所有端口上广播进行,而不管此端口是否连接了NLB节点,这造成了额外的网络流量负担;
由于所有的NLB节点具有相同的MAC地址,NLB节点之间不能通过自己原有的专用IP地址进行通讯。
单播模式的优点也很明显:它可以无缝地与大多数路由器和交换机协同工作。
如下图所示:
多播:在多播模式下,NLB不会修改NLB节点启用NLB的网络适配器的MAC地址,而是为它再分配一个二层多播MAC地址专用于NLB的通讯(此MAC地址称为群集MAC地址),这样NLB节点之间可以通过自己原有的专用IP地址进行通讯。
但是在多播模式中,NLB节点发送的针对群集IP地址MAC地址ARP(Address Resolution Protocol,地址解析协议)请求的ARP回复会将群集IP地址映射到多播MAC地址,而许多路由器或者交换机(包括CISCO的产品)会拒绝这一行为。当出现这种情况时,你必须在路由器和交换机上手动添加静态映射,将群集IP地址映射到群集的多播MAC地址。
这种模式的优点是可以通过在交换机的“内容可寻址存储器”(CAM) 表中创建静态项,从而使得入站流量仅到达群集中的主机。
还有一个缺点就是很多路由器不会自动将单播 IP 地址(群集的虚拟 IP 地址)与多播 MAC 地址关联起来。如果进行静态配置的话,一些路由器可以存在这种关联。若我们在NLB创建时选择多播的模式,在“群集IP配置”中的“网络地址”是以“03 -BF”开头,后面紧跟IP地址的十六进制表示。
如下图所示:
实验环境:
3台服务器都为Windows Server 2012 DataCenter操作系统
两台NLB节点服务器安装网络负载均衡和IIS功能。
操作步骤:
1. 系统准备
域环境沿用之前的测试环境
按拓扑图配置好两台节点服务器的网卡IP,调整网卡的优先顺序为:LAN>Heart
将群集节点服务器加入contoso.com域,关闭系统防火墙。
关闭心跳网卡的DNS注册和NETBIOS。
重点:本次测试使用的是Windows Server 2012的Hyper-V环境,使用Hyper-V虚机部署NLB时,需启用虚机NLB通讯网卡的MAC欺骗。如图:
NLB节点服务器安装网络负载均衡和IIS功能:
分别登录NLB01和NLB02两台节点服务器,打开服务器管理器―添加角色和功能
点击“下一步”
选择网络负载均衡和IIS,点击添加功能,点击下一步。
勾选“自动重启”选项,点击“安装”
安装完成
2. 配置NLB
打开网络负载均衡管理器,点击群集―新建。
输入第一台节点服务器的主机名,点击连接,选择LAN网卡,点击下一步。
配置优先级,按默认参数,点击下一步。
配置群集IP,点击下一步。
配置群集名称,选择单播模式,点击下一步。
配置安全参数,包括端口、协议等,生产环境可以考虑做严格的控制,本次测试按默认配置,点击完成。
配置完成:
继续将NLB02添加到群集中来,点击群集―添加主机。
输入NLB02,点击连接,选择LAN网卡,点击下一步。
配置优先级,按默认参数,点击下一步。
配置安全参数,包括端口、协议等,生产环境可以考虑做严格的控制,本次测试按默认配置,点击完成。
添加完成:
3. 测试NLB
两台节点服务器之前都已经安装好了IIS,在DNS上面创建一条A记录:nlb.contoso.com―192.168.1.23。
在NLB01上面打开IE,输入nlb.contoso.com,如下图:
在DC上面打开IE,输入nlb.contoso.com,如下图:
测试完毕!