




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
RedhatAS4.4 集群(LVS+heartbeat)双虚拟IP针对我们自己的项目环境,采用集群方案有很好的可行性,不牵涉共享存储这一块,现在是realserver通过程序访问自己的存储设备。下面就详细介绍通过直接路由实现虚拟服务器(VS/DR)的配置方案。各层的作用: Load Balancer(负载均衡器):Load Balancer是整个集群系统的前端,负责把客户请求转发到Real Server上。Backup是备份Load Balancer,当Load Balancer不可用时接替它,成为实际的Load Balancer。Load Balancer通过Ldirectord监测各Real Server的健康状况。在Real Server不可用时把它从群中剔除,恢复时重新加入。Shared Storage(共享存储):Shared Storage为所有Real Server提供共享存储空间和一致的数据内容。这一部分在这里不涉及,因为我们的数据访问不存在冲突。各服务器IP分配:公网环境采用双线双IP,单ip就更好配置了。Virtual IP: 9(电信) 4(网通)Load Balancer: 2 Backup: 0 Real Server 1: 7(电信) 5(网通)Real Server 2: 8(电信) 6(网通)IPVS是LVS集群系统的核心软件,它的主要作用是: 安装在Load Balancer上,把发往Virtual IP的请求转发到Real Server上。 IPVS安装主要包括三方面: 在Load Banlancer上安装IPVS内核补丁 在Load Banlancer上安装IPVS管理软件 在Real Server上安装ARP hidden内核补丁注意事项: 1. Kernel,IPVS,IPVSadm,ARP hidden之间的版本必须对应。 2. Kernel 2.4.28和2.6.10及以上版本已内置IPVS,Redhat AS4 UP4 Linux 发行版也在其内核里编译了IPVS, 3. ARP hidden可以用arp_ignore/arp_announce或者arptables_jf代替HeartBeat是Linux-HA的高可用性集群软件,它的主要作用是: 安装在Load Balancer和Backup上,运行于active/standby模式。 当Load Balancer失效时,Backup自动激活,成为实际的Load Balancer。 切换到active模式时,按顺序启动Virtual IP、IPVS和Ldirectord。 切换到standby模式时,按顺序关闭Ldirectord、IPVS和Virtual IP。所需软件列表: ipvsadm-1.24.tar.gzlibnet-.tar.gz e2fsprogs 可以用rpm 安装光盘heartbeat-2.0.2.tar.gz配置基于DR模式Lvs集群:ln -s /usr/src/kernels/2.6.9-42.ELsmp-i686/ /usr/src/linuxtar zxvf ipvsadm-1.24.tar.gzcd ipvsadm-1.24make & make install1、配置VIP脚本:rootnsbak # more /etc/init.d/lvsdr #!/bin/sh#chkconfig: 2345 20 80# description: start LVS ofDirectorserverVIP1=9VIP2=4RIP1=7RIP2=5 RIP3=8 RIP4=6. /etc/rc.d/init.d/functionscase $1 in start) echo start LVSof DirectorServer # set the VirtualIP Address /sbin/ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 55 up 双ip /sbin/ifconfig eth0:2 $VIP2 broadcast $VIP2 netmask 55 up 双线双ip /sbin/ifconfig eth0:2 $VIP2 broadcast $VIP2 netmask 55 up以上命令二选一 /sbin/route add -host $VIP1 dev eth0:0 双ip/sbin/route add -host $VIP2 dev eth0:2双线双ip/sbin/route add -host $VIP2 dev eth1:0 #Clear IPVS table /sbin/ipvsadm -C #set LVS /sbin/ipvsadm -A -t $VIP1:80 -s lc /sbin/ipvsadm -A -t $VIP2:80 -s lc /sbin/ipvsadm -a -t $VIP1:80 -r $RIP1:80 -g /sbin/ipvsadm -a -t $VIP1:80 -r $RIP3:80 -g /sbin/ipvsadm -a -t $VIP2:80 -r $RIP2:80 -g /sbin/ipvsadm -a -t $VIP2:80 -r $RIP4:80 -g #Run LVS /sbin/ipvsadm #end ; stop) echo close LVS Directorserver /sbin/ipvsadm -C ; *) echo Usage: $0 start|stop exit 1esac(-s lc 是使用了最少连接算法,可以自行选择相应的算法,更改lc就可以了,ipvsadm -h查看帮助。-g 是使用lvs工作DR直接路由模式),如果有多realserver直接添加就可以了,之后启动此脚本就可以了.2、配置realserver脚本:sysadminlocalhost $ more /etc/init.d/lvs #!/bin/bash# lvsdrrs init script to hide loopback interfaces on LVS-DR # Real servers. Modify this script to suit# your needs. You at least need to set the correct VIP address(es).# Script to start LVS DR real server.# chkconfig: 2345 20 80# description: LVS DR real server# You must set the VIP address to use here:VIP1=9VIP2=4case $1 instart) # Start LVS-DR real server on this machine. /sbin/ifconfig lo down /sbin/ifconfig lo up echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignore echo 2 /proc/sys/net/ipv4/conf/lo/arp_announce echo 1 /proc/sys/net/ipv4/conf/all/arp_ignore echo 2 /proc/sys/net/ipv4/conf/all/arp_announce sysctl -p /sbin/ifconfig lo:0 $VIP1 netmask 55 up /sbin/ifconfig lo:1 $VIP2 netmask 55 up /sbin/route add -host $VIP1 dev lo:0 /sbin/route add -host $VIP2 dev lo:1;stop) # Stop LVS-DR real server loopback device(s). /sbin/ifconfig lo:0 down /sbin/ifconfig lo:1 down;status) # Status of LVS-DR real server. islothere=/sbin/ifconfig lo:0 | grep $VIP1 isrothere=netstat -rn | grep $VIP1 if $islothere = -a $isrothere = ;then # Either the route or the lo:0 device # not found. echo LVS-DR real server Stopped. else echo LVS-DR Running. fi;*) # Invalid entry. echo $0: Usage: $0 start|status|stop exit 1;esac此脚本使realserver不响应arp请求,将此脚本分别在realserver上执行就可以了。测试:分别启动realserver上的httpd服务在realserver1 执行echo This is realserver1/var/www/html/index.html在realserver2 执行echo This is realserver2/var/www/html/index.html打开IE浏览器输入9应该可以分别看到:This is realserver1 和 This is realserver1.3、配置基于高可用Lvs+heartbeat1.1安装tar -zxvf libnet.tar.gz cd libnet./configuremake make installtar zxvf heartbeat-2.0.2.tar.gzcd heartbeat-2.0.2./ConfigureMe configure -disable-swig -disable-snmp-subagentmakemake installcp doc/ha.cf doc/haresources doc/authkeys /etc/ha.d/cp ldirectord/ldirectord.cf /etc/ha.d/groupadd -g 694 haclientuseradd -u 694 -g haclient hacluster这里需要配置文件有三个:ha.cf、haresources、authkeys。Ha.cf配置文件:logfacility local0 日志等级keepalive 2 设定心跳(监测)时间时间为2秒deadtime 20 节点死亡时间阀值,就是从节点在过了20后还没有收到心跳就认为主节点死亡warntime 10 发出警告时间initdead 120 网络启动的时间udpport 694 使用udp端口694 进行心跳监测mcast eth0 694 1 0 监听地址auto_failback on当主节点恢复后,是否自动切回node node ping 5respawn root /usr/lib/heartbeat/ipfailapiauth ipfail gid=root uid=root资源文件(/etc/ha.d/haresources): 9 lvsdr ldirectord认证文件(/etc/ha.d/authkeys):auth 11 crc选取一种认证方式,这个文件的权限必须是600配置/etc/hosts文件:vi /etc/hosts添加两台机器的名字,做好名字到IP的对应。: 2 : 0 使用同样的方法配置节点0备份节点0 上的heartbeat配置与节点1要完全相同,lvs配置也要相同。上面的安装配置仅是对于heartbeat的,还并没有与LVS整合。完装完毕进行测试,关闭主节点机器,另一台自动接管,主节点恢复后自动接管回服务。如果以上测试没有问题,那么开始和lvs整合。配置LdirectordLdirectord的作用是监测Real Server,当Real Server失效时,把它从Load Balancer列表中删除,恢复时重新添加,在安装heartbeat时已经安装了Ldirectord。配置(/etc/ha.d/ldirectord.cf):# Global Directiveschecktimeout=30checkinterval=10fallback=:80autoreload=yeslogfile=/var/log/ldirectord.logquiescent=no# A sample virual with a fallback that will override the gobal settingvirtual=9:80 real=7:80gate real=8:80gate fallback=:80 gate service=http request=test.html receive=Test Page virtualhost= scheduler=lc protocol=tcp# A sample virual with a fallback that will override the gobal settingvirtual=4:80 real=5:80 gate real=6:80 gate fallback=:80 gate service=http request=test.html receive=Test Page virtualhost= scheduler=lc protocol=tcp在每个Real Server的中添加监控页:echo Test Page /var/www/html/index.html现在可以在主节点2上启动heartbeat /etc/init.d/heartbeat start在备份节点0也启动heartbeat/etc/init.d/heartbeat start测试:关闭主节点,备份节点将自动接管directorserver服务,当realserver挂机或者apache死掉,directorserver将不在将请求发给该realserver。几个常用命令 : ipvsadm -ln, ipvsadm -lcn/sbin/ipvsadm -A -t $VIP1:80 -s lc/sbin/ipvsadm -a -t $VIP1:80 -r $RIP1:80 -g/sbin/ipvsadm -a -t 54:80 -r 2 -g -w 1 -p 100-A 增加一个虚拟服务,该服务由协议、IP地址和端口号组成-a 表示往一个服务内增加一个real server-r 指定real server的IP地址-w 表示权重-g 表示使用DR方式,-m表示NAT方式,-i表示tunneling方式。LVS算法介绍基础知识目前LVS主要有三种请求转发方式和八种调度算法。根据 请求转发方式的不同,所构架集群的网络拓扑、安装方式、性能表现也各不相同。用LVS主要可以架构三种形式的集群,分别是LVS/NAT、LVS/TUN 和LVS/DR,可以根据需要选择其中一种。在选定转发方式的情况下,采用哪种调度算法将决定整个负载均衡的性能表现,不同的算法适用于不同的应用场合, 有时可能需要针对特殊场合,自行设计调度算法。LVS的算法是逐渐丰富起来的,最初LVS只提供4 种调度算法,后来发展到以下八种:1.轮叫调度(Round Robin)调度器通过“轮叫”调度算法将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载。2.加权轮叫(Weighted Round Robin)调度器通过“加权轮叫”调度算法根据真实服务器的不同处理能力来调度访问请求。这样可以保证处理能力强的服务器能处理更多的访问流量。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。3.最少链接(Least Connections)调度器通过“最少连接”调度算法动态地将网络请求调度到已建立的链接数最少的服务器上。如果集群系统的真实服务器具有相近的系统性能,采用“最小连接”调度算法可以较好地均衡负载。4.加权最少链接(Weighted Least Connections)在集群系统中的服务器性能差异较大的情况下,调度器采用“加权最少链接”调度算法优化负载均衡性能,具有较高权值的服务器将承受较大比例的活动连接负载。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。5.基于局部性的最少链接(Locality-Based Least Connections)“基 于局部性的最少链接”调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。该算法根据请求的目标IP地址找出该目标IP地址最近使用 的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年维修电工兼职合同范本
- 2025年网站托管及维护服务协议
- 2025原料采购合同范本
- 2025水产品买卖合同范本
- 2025年驾考技巧总结范本
- 2025社会车辆抵押借款合同范本
- 2025年新能源充电桩机电安装工程合同
- 安全培训日活动班会课件
- 大学生心理健康教育(微课版)课件 第四章人格发展潜能开发:大学生人格完善与心理成长
- 安全培训新颖标题通知课件
- 6.2 人大代表为人民 第二课时 课件 2025-2026学年六年级道德与法治 上册 统编版
- 2025年甘肃省金川集团股份有限公司技能操作人员社会招聘400人考试参考试题及答案解析
- 4.2 遵守规则 课件 2025-2026学年 统编版道德与法治八年级上册
- T/CIE 189-2023硫化物全固态锂电池
- 2025年北京市单位劳动合同样本
- 借游戏账号合同5篇
- 广播稿的写法课件
- 2025年中职政治专业资格证面试技巧与答案解析大全
- 保密法课件教学课件
- 十八项核心医疗制度试题(附答案)
- 计生政策培训课件
评论
0/150
提交评论