当把一台服务器(包括Web服务器、FTP服务器或者流媒体服务器等等)放入网络中之后,随着客户端数量的不断增加,人们往往需要功能更强大、处理速度更快的服务器。为了解决这个问题,如果将原有的服务器替换成功能更强大、处理速度更快的服务器显然并不是值得称道的办法。但是如果能把新服务器添加到原有服务器的处理能力基础上而不是替换它,这种方案毫无疑问更容易被用户接受。网络负载平衡(Network Load Balancing,NLB)群集的出现正好实现了这一目的。
一、网络负载平衡介绍
NLB群集最早出现在Windows 2000 Server的Advanced Server系统中,在Windows Server 2003的各个版本中均提供了此项功能。NLB群集允许用户把两台或更多的服务器结合起来使用,在客户端看起来就像是一台服务器。进入NLB群集的连接请求可以分解传送给两个或更多的NLB群集成员,这样用户可以添加越来越多的服务器(最多32台),形成一个功能非常强大的FTP站点或Web站点。
在NLB群集中,每台服务器都会有一个属于自己的静态IP地址,但NLB群集中的所有服务器还有一个共同的IP地址—NLB群集地址。客户端可以通过这个IP地址连接到NLB群集,就像连接到其它IP地址一样。当有客户端请求连接到这个共享的IP地址时,NLB群集会将每个访问请求指派一个具体的群集成员。
尽管NLB群集是一种非常简洁的工具,但安装配置NLB群集必须满足很严格的要求,譬如首先要保证群集中服务器必须能够正常的单独运行。以安装配置两节点的NLB群集为例,这些条件简述如下:
(1)每个节点服务器必须拥有一个静态IP地址,另外还应该为NLB群集准备一个静态IP地址。
(2)NLB群集需要拥有一个DNS名称,且该DNS记录项应该与区群集IP地址建立了映射关系。
(3)每个节点服务器上应该安装完全相同的服务器软件(如IIS、终端服务器等网络服务),以构成一个两节点的NLB群集。
在接下来的内容中将介绍如何安装配置一个较为简单的NLB群集—拥有两个节点的Web服务器群集。所要安装配置的服务器群集环境为:两台运行Windows Server 2003 Enterprise Edition的服务器,可以将其称为节点1和节点2。由于所有的NLB群集成员必须使用属于相同子网的静态IP地址,因此准备为节点1分配的静态IP地址为“10.115.223.1”,准备为节点2分配的静态IP地址为“10.1115.223.2”,为NLB群集分配的IP地址是10.115.223.10。对NLB和配置环境了解之后,现在就可以进行详细的操作了。
二、设置静态IP地址与组件安装
NLB群集中的每一个节点拥有一个静态IP地址是安装配置NLB群集的首要且必要条件。我们首先为节点1进行配置。
在节点1服务器的桌面上右击“网上邻居”,打开“网络连接”窗口。然后右键单击“本地连接”图标,执行“属性”快捷命令,打开“本地连接 属性”对话框。
在“本地连接 属性”对话框中双击“Internet 协议(TCP/IP)”选项,打开“Internet 协议(TCP/IP) 属性”对话框。在常规选项卡中点选“使用下面的IP地址”单选框,并指定静态IP地址。本例使用IP地址为“10.115.223.1”,子网掩码为“255.255.254.0”,默认网关为“10.115.223.254”,DNS服务器地址为“10.115.223.1”(如图1)。
图1
在Windows Server 2003中安装部署Web服务需要IIS 6.0的支持,但是在默认情况下IIS 6.0组件并没有被安装,因此手动安装IIS 6.0组件。
在“控制面板”中双击“添加或删除程序”图标,在打开的“添加或删除程序”对话框中单击“添加/删除Windows组件”按钮,打开“Windows组件向导”对话框。
在“组件”列表中找到并双击“应用程序服务器”复选框,在打开的“应用程序服务器”对话框中双击“Internet信息服务(IIS)”选项,打开“Internet信息服务(IIS)”对话框。在子组件列表中找到并勾选“万维网服务”复选框,依次单击“确定/确定/下一步”按钮开始安装。最后单击“完成”按钮结束安装过程(如图2)。
图2
用同样的方法为节点2安装Web服务器组件。
三、创建群集主机记录
在安装NLB群集之前建议先把DNS准备好,在本例中节点1同时也是网络中的DNS服务器。可以在节点1上为群集指派一个DNS名称,依次单击“开始/所有程序/管理工具/DNS”,打开“dnsmagt”窗口。
在左窗格中依次展开“ServerName/正向查找区域”目录。然后右击域名“cpcw.com”区域,执行“新建主机”快捷命令(如图3)。
图3
在打开“新建主机”对话框 “名称”编辑框中键入一个自定义的群集名称(本例键入“Cluster”);在“IP地址”编辑框中键入准备该群集指派的静态IP地址(本例为“10.115.223.10”)。单击“添加主机”按钮,很快就会提示已经成功创建了主机记录(如图4)。
图4
四、在节点1上安装配置NLB
完成各项准备准备工作以后,就可以安装配置NLB群集了。对于两个节点而言,先在哪一个节点上安装配置NLB群集都是可以的。下面我们将在节点1上进行安装配置。
在节点1的桌面上右击“网上邻居”图标,打开“网络连接”窗口。然后右键单击“本地连接”图标,执行“属性”快捷命令,打开“本地连接 属性”对话框。
观察“此连接使用下列项目”列表可以发现,默认情况下并没有选中“网络负载平衡”复选框。勾选该复选框(如图5),然后单击“属性”按钮,打开“网络负载平衡 属性”对话框。在“群集IP地址”区域,设置NLB群集IP地址为“10.115.223.10”,该地址供群集所有成员共享;子网掩码为“255.255.254.0”,该掩码应当跟所有节点的子网掩码保持一致;“完整Internet名”键入完整的NLB群集名称,该名称已经事先跟群集IP地址建立DNS映射关系。另外对于“群集操作模式”中提供的“单播”和“多播”模式,建议保持“单播”模式的选中状态。因为根据实际经验,“多播”模式并没有多大的用处,而且该模式常常会使一些路由器出现问题。另外如果用户比较倾向于使用远程控制的方式管理NLB群集,还可以选取“允许远程控制”复选框(如图6)。
图5
图6
小提示:用户应当在每个群集节点的“网络负载平衡 属性”对话框中设置完全相同的参数。
单击“主机参数”标签,在“主机参数”选项卡中可以为群集中的每个成员配置相同的群集参数。在“专用IP配置”中,需要填写本地服务器拥有的IP地址和子网掩码,而不能填写群集IP地址。另外还需要调整优先级的设置(各个节点的优先级应当各不相同)。设置完毕后依次单击“确定/确定”按钮返回“本地连接 属性”对话框。
五、将群集IP地址添加到节点1
设置完成网络负载平衡的属性,还需要将群集IP地址添加到节点1。在“本地连接 属性”对话框中双击“Internet协议(TCP/IP)”选项,打开“Internet协议(TCP/IP) 属性”对话框。然后单击“高级”按钮,打开“高级TCP/IP设置”对话框。
“IP设置”选项卡中单击“添加”按钮,为节点1添加第二个IP地址,该地址应该是群集IP地址,子网掩码应该跟事先的设置保持一致,本例为“255.255.254.0”。设置完毕依次单击“确定”按钮,并关闭“本地连接 属性”对话框(如图7)。
图7
为了验证设置的正确性,建议执行“ipconfig /all”命令进行检查。在“命令提示符”窗口键入命令行“ipconfig /all”并回车,如果能够返回两组IP地址信息,则说明配置正确(如图8)。
图8
小提示:如果返回的信息包含诸如“0.0.0.0”之类的IP地址,则建议用户等待5分钟左右的时间再试一次,因为NLB群集需要大约5分钟左右的时间进行配置。
六、配置节点2
在节点1上完成安装配置NLB群集的操作后,接着需要配置节点2。对于节点2的配置步骤跟节点1上的操作基本相同,综合而言,主要包括如下几个方面:
(1)为节点2设置静态IP地址,本例中为节点2分配的静态IP地址为“10.115.223.2”,子网掩码为“255.255.254.0”,默认网关为“10.115.223.254”,DNS服务器地址为“10.115.223.1”。
(2)安装Web服务组件,并配置Web服务。
(3)选取“网络负载平衡”选项,在“群集参数”对话框中设置跟节点1完全相同的参数,然后在“主机参数”选项卡中设置IP地址为“10.115.223.2”,子网掩码为“255.255.254.0”(如图9)。
图9
(4)进入“高级TCP/IP设置”对话框,将群集IP地址作为第二个IP地址添加到节点2中。
小提示:关闭所有的对话框和属性页之后,NLB大约需要几分钟方可完成配置过程。通常情况下,在配置节点2的过程中可能会出现各种错误报告,譬如“TCP/IP配置错误”等信息,遇到这种情况不需要进行干预,系统会自行处理。
七、NLB群集验证管理及修复
现在可以在跟NLB群集处于同一个网段的任意计算机上进行群集的验证工作。打开IE浏览器,在地址栏分别键入每个节点的静态IP地址(也就是两个Web服务器的IP地址)并回车,这时用户会看到每台服务器的主页。键入群集IP地址并回车,用户会看到两台服务器的其中一份主页。这说明NLB群集配置成功,已经可以实现网络负载平衡了。
小提示:不要试图从一个NLB群集节点去ping另外的节点,因为NLB群集带来的负面效应就是虽然所有的群集成员都可以接受来自客户端的访问请求,但群集节点之间却不能彼此通信。
当NLB开始工作时,用户可以通过三个独立的工具对NLB进行管理,这三个工具分别是:“网络负载平衡 属性”对话框、“网络负载平衡管理器”和位于文件夹%SystemRoot%/System32中的NLB.exe命令行工具。
其中通过“网络负载平衡 属性”对话框对NLB群集进行配置管理的操作在前文中关于安装配置NLB的内容已有相关讨论。使用“网络负载平衡管理器”可以在同一个界面使用多个群集(通过在“群集”菜单中执行“连接到现存的”命令来添加),因此使用该工具进行管理是首选的方法。
依次单击“开始/所有程序/管理工具/网络负载平衡管理器”,可以打开“网络负载平衡管理器”窗口。遗憾的是,用户所连接到的群集和主机的名称不能在会话之间保留,因此每次启动“网络负载平衡管理器”时,左窗格中的群集列表均为空。不过用户可以将列表保存到一个文本文件中,并在以后启动该工具时加载这个文本文件。在“网络负载平衡管理器”窗口中依次执行“文件/保存主机列表/加载主机列表”命令来实现(如图10)。
图10
另外与NLB群集的操作有关的事件被记录在“系统事件日志”中,当NLB发生故障以后,用户应当首先检查“系统事件日志”以确定是哪一个环节发生了故障。
其实网络负载平衡是企业网络中非常普遍的一项应用,合理应用可以不仅可以拿企业的网络设备重新焕发活力,更能够通过组合使原本性能较低的产品达到更高的性能,从而为用户提供科学称职的服务。