lvs负载均衡及ha高可用集群
作者 佚名技术
来源 Linux系统
浏览
发布时间 2012-07-04
目录 一 应用背景 二 应用环境 三 安装配置 四 FAQ 一 应用背景 随着互联网应用的普及以及人们对互联网的要求也越来越高,在流量增加的同时,要求速度快,在线时间长或出故障的时间短或故障后能及时恢复等等.为了解决这些问题,各种负载均衡及集群技术应运而生 其中,LVS便是一个解决大流量分流很好的解决方案 详细请参考 http://www.linuxvirtualserver.org/zh/lvs1.html HA(High Availability),则是高可用的意思,也可以说是双机热备双机等的应用.如在一些在线时间有特别的要求或是在故障后要在很短的时间内恢复,就有必要应用到这个ha了 本文的应用,由两台机组成的一个LVS及HA,主要是解决分流及单点故障. 如A,B机,正常情况下,A机为LVS转分机,同时又是提供web的服务机,当A机有问题时,B机接管A机的服务,同时自己也是一个web服务机.本文的应用中,机器数量有限,,将ha,lvs,realserver都放在一起了.在机器允许的情况下,最好分开,如: LVS转发为独立一台机,再在这转发机上配置HA避免转发机故障,再用一台机来做转发及HA的备机,当主转发机故障时就可接管服务 二 应用环境 机器两台 系统为由本人基于CentOS 5.4 x86_64的定制版 可以看 http://www.wdlinux.cn/centos5.4_x86_64 heartbeat ldirectord lvs 结构如下: VIP:192.168.1.90 Wd1 192.168.1.91 Wd2 192.168.1.92 三 安装 1 可以用源码安装,也可以用yum安装,用源码安装,定制性强一点,但用yum安装,很方便,如: yum install -y heartbeat yum install -y heartbeat-ldirectord 即可完成 2 配置(本例的配置文件沿用1.X的风格,2.X以上的功能很强大,也较复杂) 主要的配置文件有以下几个: Authkeys ha.cf ldirectord.cf haresources 文件内容 # cat authkeys auth 1 1 crc # cat ha.cf #wdlinux.cn conf debugfile /var/log/ha-debug logfile /var/log/ha-log logfacility local0 keepalive 8 deadtime 60 warntime 60 initdead 120 udpport 694 ucast eth0 192.168.1.92 auto_failback on node wd1 node wd2 respawn hacluster /usr/lib/heartbeat/ipfail apiauth ipfail gid=haclient uid=hacluster # cat ldirectord.cf #wdlinux.cn conf checktimeout=10 checkinterval=8 fallback=127.0.0.1:80 autoreload=yes logfile="/var/log/ldirectord.log" logfile="local0" quiescent=no virtual=192.168.1.90:80 real=192.168.1.91:80 gate real=192.168.1.92:80 gate fallback=127.0.0.1:80 gate service=http request="lt.html" receive="Test Page" scheduler=wrr persistent=30 protocol=tcp checktype=negotiate checkport=80 # cat haresources Wd1 lvs IPaddr::192.168.1.90/24/eth0:0 ldirectord wd2上的lvs脚本文件 # cat /etc/rc.d/init.d/lvs #!/bin/bash /sbin/ipvsadm --set 10 10 10 Wd2上的lvs脚本文件 # cat /etc/rc.d/init.d/lvs #!/bin/bash # wdlinux.cn VIP=192.168.1.90 /etc/rc.d/init.d/functions /sbin/ipvsadm --set 10 10 10 case "$1" in start) /sbin/ifconfig lo:0 down /sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up /sbin/route add -host $VIP dev eth0:0 ;; stop) /sbin/ifconfig eth0:0 down /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up /sbin/route add -host $VIP dev lo:0 ;; *) echo "Usage: $0 {start|stop}" exit 1 esac #cat /etc/hosts 192.168.1.91 wd1 192.168.1.92 wd2 cat /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv4.conf.lo.arp_ign |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: linux 开机自启动挂载windows下一篇: linux usage basics
关于lvs负载均衡及ha高可用集群的所有评论