双网卡服务器的网络负载平衡如何设置?

双网卡服务器的网络负载平衡如何设置?,第1张

网卡负载均衡服务器
前言:市面上现在天生支持绑定功能的网卡不多,而且多是出身名门的高档服务器网卡,身价不菲,设置过程也比较专业,使用和维护都不简便。难道我等平头百姓,攥着几十元的廉价8139的兄弟们就无缘领略双网卡绑定的快感了吗?非也,今天我就教大家一招,只需一款小小的软件,就可以用普通的8139之类的网卡体验一把双网卡绑定的愉悦,这个软件就叫做“NICExpress”,可能行家们已经捂着嘴乐了,呵呵,笔者的出发点是给菜鸟兄弟们排难解惑,穷办法自娱自乐,说得过火的地方,大家不要见笑,DIY的乐趣就在于此啊。
朋友或许会问了,为什么要用双网卡呢?用双网卡有什么好处?所谓双网卡,就是通过软件将双网卡绑定为一个IP地址,这个技术对于许多朋友来说并不陌生,许多高档服务器网卡(例如intel8255x系列、3COM服务器网卡等)都具有多网卡绑定功能,可以通过软硬件设置将两块或者多块网卡绑定在同一个IP地址上,使用起来就好象在使用一块网卡。
多网卡绑定的优点不少,首先,可以增大带宽,假如一个网卡的带宽是100M,理论上两块网卡就是200M,三块就是300M,当然实际上的效果是不会是这样简单的增加的,不过经实际测试使用多个网卡对于增加带宽,保持带宽的稳定性肯定是有裨益的,如果交换机等相关条件不错的话,这个效果还是很能令人满意;其次,可以形成网卡冗余阵列、分担负载,双网卡被绑定成“一块网卡”之后,同步一起工作,对服务器的访问流量被均衡分担到两块网卡上,这样每块网卡的负载压力就小多了,抗并发访问的能力提高,保证了服务器访问的稳定和畅快,当其中一块发生故障的时候,另一块立刻接管全部负载,过程是无缝的,服务不会中断,直到维修人员到来。
OK,现在就手把手的教大家如何用50元来打造出双网卡的效果!
先下载软件(点击这里下载),这是最新版本40,只有215M,软件的兼容性已经做得很好,支持win98/Me/2000/XP/2003。基本上支持目前市场上常见的各种网卡,百兆和千兆网卡都可以用来绑定,但是千万注意,最好用于绑定的网卡是完全相同的,至少也是基于同一芯片的,这样多块网卡才能合作得比较好。切记不要把10M网卡和100M网卡绑定在一起,那样根本起不到提升作用。
下载完软件,先不忙安装,咱们还是先准备好硬件。
第一部分:硬件安装
虽然,理论上讲绑定越多网卡在一起,最终效果提升就越明显,但是考虑到复杂程度,这里就以绑定双网卡为例进行说明,如果读者觉得好玩,兴致很高的话,按照下面方法愿意绑定多少就绑定多少个网卡,其实一般同一台服务器,绑定2-3块网卡也就够了,太多了,据说因为链路聚合的先天缺点,会过多占用服务器资源,反过来会影响服务器速度(关于这个我没实验,不过我觉得凡事都离不开物极必反的道理,适度最好)。
然后,抱出笔者的一台私有服务器,呵呵,虽然破旧一点,不过可是立功不小啊,上面现在运行着FTP、MAIL等服务,几百个朋友的EMAIL都是通过它来传递的啊。配置情况为intel810主板(集成显卡)+256MSD内存+10GIDE硬盘(系统盘)+120GIDE硬盘(存放互联网垃圾)。系统软件是windows2000高级服务器版。
废话少说,开干,打开服务器机箱,把两块网卡拧在主板PCI插槽上,拧好了,看看还不错
拿出珍藏的10M-8口集线器,哈哈,别笑话,我手头只有这个,能说清楚方法就可以了,如果是读者自己DIY,请务必选一台好的交换机,至少要10/100M自适应的,这是网络通畅的关键,别象我把100M网卡连在10M集线器上,那速度怎么也好不了啊。做几条网线,把集线器、网卡连接起来,集线器连入上级交换机,因为是在家里实验,所以,我就把集线器的Uplink口连入家用路由器的任意一个网口里,路由器则连入我家ADSL“大猫”。
第二部分:设置调试
下面要进行设置及调试了,也就是要将这两块8139D廉价网卡,如同高档服务器网卡那样绑定在一起,使用同一个IP地址,同时同步工作。其过程并不复杂,估计20分钟足够了。
将刚刚下载的NIC Express软件的安装包NIC4rar解压缩得到安装文件“NICExpressW2KEEexe”,双击它启动安装程序,一路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的组合是运行在“8023ad”工作模式下的,这一模式在NIC Express中也可以选择,但是多数使用者在实际使用后都认为“NIC Express ELB”模式的效果优于“8023ad”模式,大家今后可以自己实践测试比较一下。如果你也使用默认的“NIC Express ELB”模式,那么“Advanced”选项里也就不用改什么,一切默认即可。至此NIC Express的设置结束。
第三部分:“虚拟网卡”设定
最后还要看看网卡的设置,用鼠标在桌面“网上邻居”上点击右键d出“网络和拨号连接”窗口,可以看到原来的两个网卡连接图标已经变成了三个,多出来的一个图标就是“NIC Express Virtual Adapter”,这个就是绑定后的网卡组,这个网卡组的使用和使用单一网卡完全一样,相当于一个单一的“虚拟网卡”。
用鼠标在这个图标上点击右键选择属性,可以为这个“虚拟网卡”设定IP地址、子网掩码、网关等等,其实在安装“NIC Express”过程中,如果服务器原来的单一网卡已经设置了这些,那么“虚拟网卡”就会自动设定和原来的网卡一样。在这里选择“NIC Express Transport for Ethernet”还可以自由对网卡绑定组进行调整,例如,减少或者加入一块网卡,这个较之Intel PROSET要方便许多,Intel PROSET在增加或者减少绑定组里的网卡之前必须删除原来的绑定组然后重新创建。
好了,好了,至此一切都已经做好,我们的服务器已经成为一台地地道道的“双网卡冗余服务器”了,我们来运行一下,看看表现。
第四部分:测试双网卡绑定后的效果
检查一下线路,前面说过两块网卡已经用网线连入10M集线器(这就相当于机房机柜里的百兆交换机),集线器的Uplink口连入了家用路由器的任意一个网口,路由器通过ADSL大猫接入互联网(北京512K包月ADSL),这样服务器就已经和互联网连通了,按下Power键启动服务器,由于服务器里面已经安装了动态域名软件,服务器启动之后,很快与国际域名>我使用下面的Debian服务器,它们都在同一个网段(本例如:1921680x):
sql1testcom: 1921680101 MySQL 群集节点 1
sql2testcom: 1921680102 MySQL 群集节点 2
loadb1testcom: 1921680103 负载均衡 1 / MySQL 群集管理服务器
loadb2testcom: 1921680104 负载均衡 2
另外我们需要一个虚拟IP地址:1921680105。它会安排给这个MySQL群集的负载均衡,以便于
应用程序通过统一单独的IP地址来访问群集。
尽管我们想在MySQL群集中使用两个节点,但是我们仍然需要第三个节点,MySQL群集管理服务器
,主要的一个原因是:如果其中一个MySQL群集节点坏了,而MySQL群集管理服务器没有运行,那
么两个群集节点上的数据将会不一致(“split brain”)。我们需要它来配置MySQL群集
因此我们的安装一般需要五台机器:
2个MySQL群集节点 + 1个群集管理服务器 + 2个负载均衡 = 5
因为群集管理服务器没有使用多少资源,系统将会空着什么都不做,所以我们可以把我们的第一
个负载均衡和它一起放在同一台机器上,这样可以节约我们一台服务器,所以最好我们只需要四台
机器。
二 配置MySQL群集管理服务器
首先我们要下载MySQL 5019,并安装群集管理服务器(ndb_mgmd)和群集管理客户端 (ndb_mgm - 它
可以用来监控群集的运行情况) 下面的步骤是在loadb1testcom (1921680103)上进行的:
loadb1testcom:
mkdir /usr/src/mysql-mgm
cd /usr/src/mysql-mgm
wget devmysqlcom/get/Downloads/MySQL-50/mysql-max-5019-linux-i686-\
glibc23targz/from/mirrorserviceorg/sites/ftpmysqlcom/
tar xvfz mysql-max-5019-linux-i686-glibc23targz
cd mysql-max-5019-linux-i686-glibc23
mv bin/ndb_mgm /usr/bin
mv bin/ndb_mgmd /usr/bin
chmod 755 /usr/bin/ndb_mg
cd /usr/src
rm -rf /usr/src/mysql-mgm
下一步,我们必须创建群集的配置文件,/var/lib/mysql-cluster/configini:
loadb1testcom:
mkdir /var/lib/mysql-cluster
cd /var/lib/mysql-cluster
vi configini
———-
[NDBD DEFAULT]
NoOfReplicas=2
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
# Section for the cluster management node
[NDB_MGMD]
# IP address of the management node (this system)
HostName=1921680103
# Section for the storage nodes
[NDBD]
# IP address of the first storage node
HostName=1921680101
DataDir= /var/lib/mysql-cluster
[NDBD]
# IP address of the second storage node
HostName=1921680102
DataDir=/var/lib/mysql-cluster
# one [MYSQLD] per storage node
[MYSQLD]
[MYSQLD]

你上面说到的这些服务器只有Web服务器需要做负载均衡,而且一般都是前置机才做负载均衡,做百服务器负载均衡的条件是:
1
你要有提供相同应用的多台Web服务器。
2
要有负载均衡的设备(可以是软件也度可以是硬件)。
3
要为这个服务分配一个虚拟地址(作为服务访问的统一入口)和若干真实地址(有几台Web服务器需要几个真实地址)。
注:一般建问议采用硬件设备,通常需要做负载答均衡的应用说明他的负载很大,专用的硬件比较可靠。
具备以上条件后将Web服务器连接到负载均衡设备上,在负载均衡设备上配置虚拟地址和真实地址、配置负载均衡算法,配置负载均衡策略,将负载均衡设备接入网络。
这样,外面的用户只需要访问这个虚拟地址就可以了,负载均衡设备收到请求后会按照负版载均衡策略和算法把请求分配到真实地址上,实现负载功能。
以上所说只是负载均衡的一种部署方式,根据实际需要选择单臂、双臂接入网络;根据应用的权特点选择健康检查的方式;根据应用选择是否使用回话保持算法等。

Session信息的复制试集群的重要的环节,如果你使用tomcat的性能不满足需要,需要设置的集群了,我建议你使用weblogic(9以上),它的集群功能很强大,会话复制功能很安全,而且配置起来很简单。
一般情况下weblogic的性能要远远大于tomcat,
由于oracle收购了bea,对weblogic采取了销售原则,就是免费试用,收费服务。现在weblogic10以上的版本不要任何费用。

选择GPU服务器时首先要考虑业务需求来选择适合的GPU型号。在HPC高性能计算中还需要根据精度来选择,比如有的高性能计算需要双精度,这时如果使用P40或者P4就不合适,只能使用V100或者P100;同时也会对显存容量有要求,比如石油或石化勘探类的计算应用对显存要求比较高;还有些对总线标准有要求,因此选择GPU型号要先看业务需求。

GPU服务器人工智能领域的应用也比较多。在教学场景中,对GPU虚拟化的要求比较高。根据课堂人数,一个老师可能需要将GPU服务器虚拟出30甚至60个虚拟GPU,因此批量Training对GPU要求比较高,通常用V100做GPU的训练。模型训练完之后需要进行推理,因此推理一般会使用P4或者T4,少部分情况也会用V100。

综上所述,选择服务器时不仅需要考虑业务需求,还要考虑性能指标,比如精度、显存类型、显存容量以及功耗等,同时也会有一些服务器是需要水冷、降噪或者对温度、移动性等等方面有特殊的要求,就需要特殊定制的服务器。

欢迎了解更多:网页链接


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13508510.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-21
下一篇 2023-08-21

发表评论

登录后才能评论

评论列表(0条)

保存