50元打造双网卡负载均衡服务器(Network Load Balancing)

2015/02/09 23:14
阅读数 129

50元打造双网卡负载均衡服务器(Network Load Balancing)

前言:市面上现在天生支持绑定功能的网卡不多,而且多是出身名门的高档服务器网卡,身价不菲,设置过程也比较专业,使用和维护都不简便。难道我等平头百 姓,攥着几十元的廉价 8139 的兄弟们就无缘领略双网卡绑定的快感了吗?非也,今天我就教大家一招,只需一款小小的软件,就可以用普通的 8139 之类的网 卡体验一把双网卡绑定的愉悦,这个软件就叫做 “NICExpress” ,可能行家们已经捂着嘴乐了,呵呵,笔者的出发点是给菜鸟兄弟们排难解惑,穷办法自 娱自乐,说得过火的地方,大家不要见笑, DIY 的乐趣就在于此啊。
  朋友或许会问了,为什么要用双网卡呢?用双网卡有什么好处?所谓双网卡,就是通过软件将双网卡绑定为一个 IP 地址,这个技术对于许多朋友来说并不陌 生,许多高档服务器网卡(例如 intel8255x 系列、 3COM 服务器网卡等)都具有多网卡绑定功能,可以通过软硬件设置将两块或者多块网卡绑定在同一 IP 地址上,使用起来就好象在使用一块网卡。

  多网卡绑定的优点不少,首先,可以增大带宽,假如一个网卡的带宽是 100M ,理论上两块网卡就是 200M ,三块就是 300M ,当然实际上的效果是不会 是这样简单的增加的,不过经实际测试使用多个网卡对于增加带宽,保持带宽的稳定性肯定是有裨益的,如果交换机等相关条件不错的话,这个效果还是很能令人满 意;其次,可以形成网卡冗余阵列、分担负载,双网卡被绑定成 一块网卡 之后,同步一起工作,对服务器的访问流量被均衡分担到两块网卡上,这样每块网卡的 负载压力就小多了,抗并发访问的能力提高,保证了服务器访问的稳定和畅快,当其中一块发生故障的时候,另一块立刻接管全部负载,过程是无缝的,服务不会中 断,直到维修人员到来。

   OK ,现在就手把手的教大家如何用 50 元来打造出双网卡的效果!

  先下载软件(点击这里下载),这是最新版本 4.0 ,只有 2.15M ,软件的兼容性已经做得很好,支持 win98/Me/2000/XP/2003 。基 本上支持目前市场上常见的各种网卡,百兆和千兆网卡都可以用来绑定,但是千万注意,最好用于绑定的网卡是完全相同的,至少也是基于同一芯片的,这样多块网 卡才能合作得比较好。切记不要把 10M 网卡和 100M 网卡绑定在一起,那样根本起不到提升作用。

  下载完软件,先不忙安装,咱们还是先准备好硬件。
第一部分:硬件安装

  虽然,理论上讲绑定越多网卡在一起,最终效果提升就越明显,但是考虑到复杂程度,这里就以绑定双网卡为例进行说明,如果读者觉得好玩,兴致很高的话, 按照下面方法愿意绑定多少就绑定多少个网卡,其实一般同一台服务器,绑定 2 3 块网卡也就够了,太多了,据说因为链路聚合的先天缺点,会过多占用服务器资 源,反过来会影响服务器速度(关于这个我没实验,不过我觉得凡事都离不开物极必反的道理,适度最好)。

  我取出 珍藏 的一对市场上随处可见的 8139D 10M / 100M 自适应网卡,市场价格 25 元一个,北京某厂的产品,做工还算精细,总成本 50 元人民币。


然后,抱出笔者的一台私有服务器,呵呵,虽然破旧一点,不过可是立功不小啊,上面现在运行着 FTP MAIL 等服务,几百个朋友的 EMAIL 都是通过它来 传递的啊。配置情况为 intel810 主板(集成显卡)+ 256MSD 内存+ 10GIDE 硬盘(系统盘)+ 120GIDE 硬盘(存放互联网垃圾)。系统软 件是 windows2000 高级服务器版。

  废话少说,开干,打开服务器机箱,把两块网卡拧在主板 PCI 插槽上,拧好了,看看还不错。

 拿出珍藏的 10M 8 口集线器,哈哈,别笑话,我手头只有这个,能说清楚方法就可以了,如果是读者自己 DIY ,请务必选一台好的交换机,至少要 10/ 100M 自适应的,这是网络通畅的关键,别象我把 100M 网卡连在 10M 集线器上,那速度怎么也好不了啊。做几条网线,把集线器、网卡连接起来,集 线器连入上级交换机,因为是在家里实验,所以,我就把集线器的 Uplink 口连入家用路由器的任意一个网口里,路由器则连入我家 ADSL“ 大猫

至此,硬件部分安装完毕。就这么简单。

第二部分:设置调试

  下面要进行设置及调试了,也就是要将这两块 8139D 廉价网卡,如同高档服务器网卡那样绑定在一起,使用同一个 IP 地址,同时同步工作。其过程并不复杂,估计 20 分钟足够了。

  将刚刚下载的 NIC Express 软件的安装包 NIC4.rar 解压缩得到安装文件 “NICExpressW2KEE.exe” ,双击它启动安装程序,一路 NEXT ,软件提 示输入 unlock key (注册码),如果没有注册码,就只好点击 Demo ,选择试用,这样可以获得 30 天的免费试用期,在这 30 天里如果觉得不错,你可以想办法去弄一个注 册码

到下图所示界面,软件提示选择是否开启 LOAD Balancing 功能?什么是 LOAD Balancing 功能呢? LOAD Balancing 的中文意思可以翻译为负载均衡,在这里就是网络负载均衡。 也就是当多块网卡被绑定合一之后,当数据流量很大的时候,软件会自动调整,将 数据流量负载均衡地分配到各个网卡上,以减轻单块网卡的压力,达到畅快的访问效果。我们绑定双网卡,其中目的之一就是为了实现负载均衡,我们自然要开启这 个功能,所以,在这里一定要选择 “Enabled” 。当然,如果你在这里选择错了也没关系,今后也可以通过 NIC Express 软件管理界面开启。

继续一路 NEXT ,在 Windows XP 里安装时如果遇到提示 “NIC Express Virtual Miniport” 没有通过 Windows 测试,无法验证它同 Windows XP
相容性,不要理会,选择
仍然继续 就行了。



到了下图所示界面,就到了真正绑定网卡的时候了:

大家看到这个界面一共分为上、中、下,三个窗口,上面的是空白,中间的写着 8139-2 ,这个 8139-2 是我自己起的绑定之后的网卡组的名称,原来这里 默认写的是 New array ,也可以不修改,你也可以根据自己喜好,写成别的名字。在最下面的窗口里列出了目前服务器上安装的两块网卡的名字。我们下一步就是要用鼠标选中 下面的两块网卡名字,然后点击界面中间的 Add 键,把两块网卡加入上面的窗口里,这样两块网卡就这样被加入了网卡组里,初步绑定成一块 网卡 了,今后可 以使用同一个 IP 地址了。

点击 OK 继续, NIC Express 出现一个配置界面,选项很多,但是不必太操心,因为这些配置都不必修改,使用默认值就可以了,直接点击 OK 、点击 Finish 完成安装进程。至此软件安装基本结束,剩下就需要对软件和网卡进行一些必要的设置工作。


点击桌面 开始 菜单,选择执行菜单里的 “NIC Express Enterprise Edition” 选项,这是 NIC Express 软件自带的一个监控程序,首先点击 “setting” 选项,在这里可以设置网卡流量计量单位,可以按照 Packets/Sec Mbits /Sec Kbits/Sec 三种单位来计算,一般都是使用默认的 Mbits/Sec 来计算,也就是兆 / 每秒,其实在这里只需要修改一下 “Graph Detail (图形显示) 即可,将默认的 “By Protocol” 改成 “By Incoming/Outgoing” ,别的不需要改。


如果你想分别观察绑定组中每块网卡的流量或者整个组的流量,只需在 “Select Device” 选项中选择一下设备即可。最后点击 “Advanced” 选项,设定网卡绑定的工作模式,在这里也可以点击 “Load Balancing Disable” 来关闭网卡负载均衡功能。使用 NIC Express 绑定的双网卡组默认工作于 “NIC Express ELB” 模式下,这是 NIC Express 所特有的一种工作模式,实际效果很好。我们都知道利用昂贵的 Intel PROSET 绑定的 Intel 8255x 的组合是运行在 “802.3ad” 工作模式下的,这一模式在 NIC Express 中也可以选择,但是多数使用者在实际使用后都认为 “NIC Express ELB” 模式的效果优于 “802.3ad” 模式,大家今后可以自己实践测试比较一下。如果你也使用默认的 “NIC Express ELB” 模式,那么 “Advanced” 选项里也就不用改什么,一切默认即可。至此 NIC Express 的设置结束。

最后还要看看网卡的设置,用鼠标在桌面 网上邻居 上点击右键弹出 网络和拨号连接 窗口,可以看到原来的两个网卡连接图标已经变成了三个,多 出来的一个图标就是 “NIC Express Virtual Adapter” ,这个就是绑定后的网卡组,这个网卡组的使用和使用单一网卡完全一样,相当于一个单一的 虚拟网卡


用鼠标在这个图标上点击右键选择属性,可以为这个 虚拟网卡 设定 IP 地址、子网掩码、网关等等,其实在安装 “NIC Express” 过程中,如果服务器原来的单一网卡已经设置了这些,那么 虚拟网卡 就会自动设定和原来的网卡一样。在这里选择 “NIC Express Transport for Ethernet” 还可以自由对网卡绑定组进行调整,例如,减少或者加入一块网卡,这个较之 Intel PROSET 要方便许多, Intel PROSET 在增加或者减少绑定组里的网卡之前必须删除原来的绑定组然后重新创建。

好了,好了,至此一切都已经做好,我们的服务器已经成为一台地地道道的 双网卡冗余服务器 了,我们来运行一下,看看表现。

第四部分:测试双网卡绑定后的效果
检查一下线路,前面说过两块网卡已经用网线连入
10M 集线器(这就相当于机房机柜里的百兆交换机),集线器的 Uplink 口连入了家用路由器的任意一 个网口,路由器通过 ADSL 大猫接入互联网,这样服务器就已经和互联网连通了,按下 Power 键启动服务器,由于服务器里面已经安装了动态域名软件,服务 器启动之后,可以很快与你的国际域名连接到一起,这时只要访问你的域名,即可从世界各地访问到我的服务器了,我让上海的一个朋友用 FTP 软件登陆这台 网卡冗余服务器 ,下载一个 50M 的压缩文件包。嚯,只见服务器上的两块 8139D 网卡的指示灯同时闪烁起来,闪烁的频率完全同步,煞是好看!

再看那台古董级 10M 集线器,两个接上网卡的接口指示灯也是飞快同步闪烁,说明两块网卡在同步工作,同时分担访问的流量。朋友说感觉速度不错,毕竟只是 512K ADSL ,也仅能看看网卡同步闪烁的美丽效果了



然后,我又在局域网里进行了传输实验,因为有那个 10M 集线器的瓶颈,所以效果不是很好,但是也能看出一些明显改善。从局域网另一台使用单个杂牌 10M 8029 网卡的电脑上通过网上邻居访问已经用 NIC Express 绑定了双 8139D 网卡的服务器,传输 200M 文件,通过 “NIC Express Enterprise Edition” 中的曲线监控图观察到,双网卡绑定组的传输速率从 8M /s 起步,最高达到 8.2M /s ,两机之间平均传输速率比较稳定,偶尔有大幅度的波 动,是软件正在调整两块网卡的负载均衡,只有零点几秒就恢复正常,基本稳定在 7.5 8M /s 左右,已经接近那个 10M 集线器的最大传输极限。之后,从服 务器上删除一块网卡,再进行两机传输实验,发现传输最高速率已经骤然减少到 5M /s ,而且传输过程中速率上下波动很大,平均传输速率也就 3M /s 左右,可 见前后差异还是很明显的。
现在这台绑定了双网卡的服务器正在白天黑夜不停机地运行着,大家可以通过自己的域名访问体验一下双网卡冗余服务器的性能(嘿嘿,其实你也感觉不出什么)。
最后说几句,作为本文的总结和补充:
1 、经过实际使用,我发现使用 NIC Express 绑定的双网卡组运行的稳定性很好,没有出现过什么软件的冲突,我的一个朋友已经把它应用到自己的电信托管服务器上,运行了半年多了,也很稳定;   
2
、理论上讲 NIC Express 绑定的网卡越多,效果提升应该越明显,如果可能大家可以自己动手绑定 3 块、 4 块网卡试试,不过切记使用的网卡最好是一个品牌一个型号;
3 NIC Express 最初被老鸟们拿来玩的时候,并没有想到应用在服务器上做网卡冗余阵列,大家多是把局域网内的几台电脑同时都绑定双网卡,这样各个电脑之间的 传输速率和传输稳定性获得了明显的提升,后来大家发现只要其中一台电脑使用 NIC Express 绑定了双网卡组,其他使用单网卡的电脑访问这台有网卡绑定组的电脑,也能获得传输速率和稳定性的改善,于是我才想到将这个技术应用到服务器 上。
4、我个人认为使用NIC Express绑定多网卡,在当今这个数据时代具有一定的实际意义,无论是对于互联网服务器还是局域网服务器的用户都有启发,当我们为服务器绑定多网卡形 成阵列之后,不仅可以扩大服务器的网络带宽,而且可以有效均衡负载和提高容错能力,避免服务器出现传输瓶颈或者因某块网卡故障而停止服务。

5、也许你会说,在当今千兆网卡早已普及的时代,还费劲绑定几块百兆网卡做什么?其实绑定多网卡的目的并不是仅仅为了提高带宽,这样做还有一个最大的 优点就是多块网卡可以有效增强服务器的负载承受能力和冗余容错能力。也许你也经历过,当使用单块10M/100M网卡在局域网里拷贝1G以上大文件的时 候,经常会出现电脑停止响应,或者速度奇慢接近死机的情况,当多网卡绑定之后,这种情况会得到明显改善。

6、大家再想想,如果绑定的不是几块百兆网卡,而是几块千兆网卡,会是什么局面?想不想试试?让我们一起来DIY迎接万兆时代的到来吧(呵呵,豪言壮语是DIY一族的痼疾,请大家不要见笑)。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部