搭建集群负载均衡系统.docx

上传人:b****2 文档编号:2249076 上传时间:2022-10-28 格式:DOCX 页数:13 大小:77.25KB
下载 相关 举报
搭建集群负载均衡系统.docx_第1页
第1页 / 共13页
搭建集群负载均衡系统.docx_第2页
第2页 / 共13页
搭建集群负载均衡系统.docx_第3页
第3页 / 共13页
搭建集群负载均衡系统.docx_第4页
第4页 / 共13页
搭建集群负载均衡系统.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

搭建集群负载均衡系统.docx

《搭建集群负载均衡系统.docx》由会员分享,可在线阅读,更多相关《搭建集群负载均衡系统.docx(13页珍藏版)》请在冰豆网上搜索。

搭建集群负载均衡系统.docx

搭建集群负载均衡系统

搭建集群负载均衡系统

作者:

jxinter(jxinter@)

RedHat9.0LVS安裝手冊:

1前言:

RedHat在9.0以后,就将ipvsadm这些套件去除,因此如果想使用LVS(LinuxVirtualServer),就得自已重新编译内核(Kernel)。

首先简单介绍一下LVS到底是什么东西,其实他是一种集群(Cluster)的技术,透过支援IPVS的IPVS的Kernel,来达到LVS/DirectRouting(DR),LVS/IPTunnel,LVS/NAT的功能。

详细内容请看LVS官方网站。

LVS详细参考资料。

http:

//linux.vbird.idv.tw/鳥哥的Linux私房菜(Linux基本常識)

http:

//www.adj.idv.tw/server/linux_lvs.php在RedHat7.3上架設LVS

http:

//www.linuxvirtualserver.org/LVS的官方網站

LinuxAid說明(上)

LinuxAid說明(下)

Alex的網站,重要的patch都從這兒抓取

负载均衡集群是在应用服务器高负载的情况下,由多台节点提供可伸缩的,高负载的服务器组以保证对外提供良好的服务响应;而LVS就是实现这一功能的技术.实际上LVS是一种Linux操作系统上基于IP层的负载均衡调度技术,它在操作系统核心层上,将来自IP层的TCP/UDP请求均衡地转移到不同的服务器,从而将一组服务器构成一个高性能、高可用的虚拟服务器。

图1LVS实现集群系统结构简图

图1显示一台名为Director的机器是前端负载均衡器,运行LVS,目前只能在Linux下运行.可以针对web、ftp、cache、mms甚至mysql等服务做loadbalance;后端机器称之为RealServer,是需要负载均衡的服务器,可以为各类系统,Linux、Solaris、Aix、BSD、Windows都可,甚至Director本身也可以作为RealServer.

∙集群技术主要分为三大类:

o高可用性(HighAvailableCluster),例:

Linux-HA

o负载均衡(LoadbalancingCluster),例:

LVS、MOSIX

o高性能计算(HighPerformanceComputing),例:

Beowulf

我们这里使用RedHat9.0,LVS,Linux-HA,Ldirectord,构造一个高可用的负载均衡集群系

∙各层的作用:

以WEB服务器为例

LoadBalancer(负载均衡器):

LoadBalancer是整个集群系统的前端,负责把客户请求转发到RealServer上。

Backup是备份LoadBalancer,当LoadBalancer不可用时接替它,成为实际的LoadBalancer。

LoadBalancer通过Ldirectord监测各RealServer的健康状况。

在RealServer不可用时把它从群中剔除,恢复时重新加入。

oServerArray(服务器群):

ServerArray是一组运行实际应用服务的机器,比如WEB,Mail,FTP,DNS,Media等等。

在实际应用中,LoadBalancer和Backup也可以兼任RealServer的角色。

oSharedStorage(共享存储):

SharedStorage为所有RealServer提供共享存储空间和一致的数据内容。

各服务器IP分配:

VirtualIP:

192.168.0.100

LoadBalancer:

192.168.0.200

Backup:

192.168.0.222

RealServer1:

192.168.0.224

∙IPVS

∙IPVS是LVS集群系统的核心软件,它的主要作用是:

o安装在LoadBalancer上,把发往VirtualIP的请求转发到RealServer上。

IPVS的负载均衡机制有三种,这里使用IPTunneling机制:

oVirtualServerviaNAT

oVirtualServerviaIPTunneling

oVirtualServerviaDirectRouting

IPVS的负载调度算法有十种:

o轮叫(RoundRobin)

o加权轮叫(WeightedRoundRobin)

o最少链接(LeastConnections)

o加权最少链接(WeightedLeastConnections)

o基于局部性的最少链接(Locality-BasedLeastConnections)

o带复制的基于局部性最少链接(Locality-BasedLeastConnectionswithReplication)

o目标地址散列(DestinationHashing)

o源地址散列(SourceHashing)

o最短期望延迟(ShortestExpectedDelay)

o无须队列等待(NeverQueue)

IPVS安装主要包括三方面:

o在LoadBanlancer上安装IPVS内核补丁

o在LoadBanlancer上安装IPVS管理软件

o在RealServer上安装ARPhidden内核补丁

(一)在LoadBanlancer和Backup上安装支持IPVS和ARPhidden内核补丁,所有文件都放在\\yip\linux\lvs目录中

把linux-2.4.20.tar.gz解压到/usr/src/目录中,解压后得到linux-2.4.20,把它连接ln–slinux-2.4.20linux。

因为IPVS-1。

0。

9中的makeflie文件中默认指定的kernelsource的路径为;KERNELSOURCE=/usr/src/linux

把ipvs补丁Patch和ARPhidden内核补丁到内核源码中

1把ipvs-1.0.9.tar.gz解压到某个目录,解压后得到ipvs-1.0.9,然后进入ipvs-1.0.9目录中,依次执行如下命令。

Makepatchkernel;makeinstallsource.将ipvs的patch加载到kernel的source中。

2再把下到内核相同的不版本的arphidden修正包。

hidden-2.4.20pre10-1.diff

把hidden-2.4.20pre10-1.diff放到/usr/src/linux目录下。

进入cd/usr/src/linux下执行命令;patch-p1

进入cd/usr/src/linux下依次执行,

1.makemrproper为创建新的内和配置做好准备

2.Makemenuconfig进行配置。

KernelCompileOptions:

Codematurityleveloptions--->

[*]Promptfordevelopmentand/orincompletecode/drivers

Networkingoptions--->

[*]Networkpacketfiltering(replacesipchains)

[]Networkpacketfilteringdebugging

...

IP:

NetfilterConfiguration--->

IP:

VirtualServerConfiguration--->

virtualserversupport(EXPERIMENTAL)

[*]IPvirtualserverdebugging

(12)IPVSconnectiontablesize(theNthpowerof2)

---IPVSscheduler

round-robinscheduling

weightedround-robinscheduling

least-connectionschedulingscheduling

weightedleast-connectionscheduling

locality-basedleast-connectionscheduling

locality-basedleast-connectionwithreplicationscheduling

destinationhashingscheduling

sourcehashingscheduling

---IPVSapplicationhelper

FTPprotocolhelper

Networkingoptions--->里IP:

NetfilterConfiguration--->最后二项ipchains和ipfwadm不选其它全选中

Filesystems里选中Ext3支持EXT3格式要不启动时会报EXT3错误

其它相关自行按需所配。

再依次执行

3.makedep;检测是否有相关的软件包被使用

4.makeclean;为新内核结构准备源目录树

5.makebzImage创建内核引导映像

6.makemodules;makemodules_install生成模块

7.makeinstall安装新的内核到指定位置并重新配置grub.conf

8.进入grub.conf中修改vi/boot/grub/menu.lst

#grub.confgeneratedbyanaconda

#Notethatyoudonothavetorerungrubaftermakingchangestothisfile

#NOTICE:

Youhavea/bootpartition.Thismeansthat

#allkernelandinitrdpathsarerelativeto/boot/,eg.

#root(hd0,0)

#kernel/vmlinuz-versionroroot=/dev/hda2

#initrd/initrd-version.img

#boot=/dev/hda

default=1

timeout=10

splashimage=(hd0,0)/grub/splash.xpm.gz

titleRedHatLinux(2.4.20)

root(hd0,0)

kernel/vmlinuz-2.4.20roroot=LABEL=/

initrd/initrd-2.4.20.img

#titleRedHat

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1