当把一台服务器(包括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发生故障以后,用户应当首先检查“系统事件日志”以确定是哪一个环节发生了故障。

  其实网络负载平衡是企业网络中非常普遍的一项应用,合理应用可以不仅可以拿企业的网络设备重新焕发活力,更能够通过组合使原本性能较低的产品达到更高的性能,从而为用户提供科学称职的服务。

轻松构建网络负载平衡群集(组图)相关推荐

  1. WINDOWS2008网络负载平衡群集(NLB)完全攻略

    2019独角兽企业重金招聘Python工程师标准>>> 这段时间公司的ERP系统正在开发当中,由于该系统并发连接用户比较多,要求必须使用windows2008中的NLB群集完成服务器 ...

  2. NLB(网络负载平衡)+ADFS场高可用性安装

    准备工作 1. 两台ADFS服务器(我的是Dynamics-ADFS01和Dynamics-ADFS02). 2. Ip3个(两台ADFS服务器IP:192.168.1.115.192.168.1.1 ...

  3. Windows Server 2008 R2/2012 网络负载平衡NLB相关内容

    使用网络负载均衡技术可以实现一些应用程序的可用性和可伸缩性,常用的应用程序有:IIS.防火墙.***以及一些关键业务.每一个节点运行应用程序的一个副本.NLB在群集中的多个主机中分发传入的客户端请求. ...

  4. 网络负载平衡(Network Load Balancing)的工作原理

    NLB算法的特点: 在NLB群集中,每台服务器都会有一个属于自己的静态IP地址,同时NLB群集中的所有服务器还有一个共同的IP地址-NLB群集地址: 当客户向NLB群集(NLB的虚拟IP地址)发起请求 ...

  5. windows2003服务之网络负载平衡(NLB)

    一:NLB试验环境   按如图1所示搭建NLB实验环境,其中计算机Server是域控制器和DNS服务器,client和client2是成员服务器,域名为ittongluren.com.所有计算机网关I ...

  6. windows网络负载平衡

    网络负载平衡的优点 1.网络负载平衡允许你将传入的请求传播到多台服务器上,即可以使用多台服务器共同分担对外的网络请求服务.网络负载平衡技术保证即使是在负载很重的情况下它们也能作出快速响应. 2.网络负 ...

  7. [引]Windows Server 2003 : 网络负载平衡

    本文来源于如下位置: 安装了Microsoft Windows Server 2003 Enterprise Edition 操作系统的电脑 开始菜单->所有程序->网络负载平衡管理器-& ...

  8. Windows server2022 网络负载平衡(NLB)

    一.资源规划 主机 IP地址 操作系统 应用服务 NLB节点1 192.168.16.162(群集对外服务) windows server2022 IIS服务 10.128.0.1(群集内部通信) N ...

  9. 第7章 性能和可靠性模式 Load-Balanced Cluster(负载平衡群集)

    上下文 您已经决定在设计或修改基础结构层时使用群集,以便在能够适应不断变化的要求的同时保持良好的性能. 问题 在保持可接受的性能级别的同时,如何设计一个可适应负载变化的.可伸缩的基础结构层? 影响因素 ...

最新文章

  1. Aps.Net WebApi依赖注入
  2. java raw_GitHub - Braw115/JavaWEB: JavaWEB学习之中的一些Demo
  3. Android 自定义ListView单击事件失效
  4. 实习就参与“服务过亿用户的项目”,是什么体验?
  5. Java--Servlet,@ServletSecurity,role,username,password
  6. 【Linux】一步一步学Linux——jobs命令(129)
  7. CodeIgniter模型
  8. 反射(类的加载概述和加载时机)
  9. 使用PHPCS+GIT钩子保障团队开发中代码风格一致性实践
  10. 人月神话阅读笔记(二)
  11. Redis:ERR operation not permitted
  12. Keil5 MDK版 下载与安装教程(STM32单片机编程软件)
  13. AKKA文档(java)——术语,概念
  14. 阿里云商标注册服务及常见问题
  15. c#中一般处理程序中使用session
  16. 文言文代码算什么?跟着九章算术学Python编程才厉害
  17. 微软为什么总招人黑?
  18. 抓取中央气象台-台风报文数据
  19. 把sql中的image数据在网页中显示成图片
  20. python下载收费视频_用Python下载知乎视频,非常实用

热门文章

  1. 【考研经验】英语如何拿高分?听听英语一92大神的经验谈!
  2. tfidf+java+权重,使用scikit-learn tfidf计算词语权重
  3. SpringBoot实现第三方QQ登录
  4. 接口测试常用工具及测试方法(入门篇)
  5. 原生微信小程序实现tab切换效果demo
  6. [进来复制]springboot项目代码混淆,帮你安排的明白的混淆代码!
  7. JAVA如何分割出字符串中的数字?
  8. 虚拟机下的Linux网络连接方法(NAT)
  9. 2015年5月产品设计学习与思考
  10. 怎么计算byte,short,int等数据类型的取值范围