heartbeat(高可用)+LVS(负载均衡+健康检查)服务配置(apache测试)

来源:互联网 发布:泸州大数据产业园 编辑:程序博客网 时间:2024/06/09 11:56

heartbeat+LVS搭建

1.环境准备

四台服务器:
1.server1:172.25.13.1/24
2.server2:172.25.13.2/24
3.server4:172.25.13.4/24
4.server5:172.25.13.5/24
四台服务器都要关闭ipatbles和selinux
#/etc/init.d/iptables stop
#setenforce 0
cat /etc/hosts
172.25.254.1 server1
172.25.254.2 server2
172.25.254.3 server3
172.25.254.4 server4
172.25.254.5 server5
172.25.254.6 server6
172.25.254.65 server0

heartbeat软件包:
1.heartbeat-3.0.4-2.el6.x86_64.rpm
2.heartbeat-libs-3.0.4-2.el6.x86_64.rpm
3.ldirectord-3.9.5-3.1.x86_64.rpm ##LVS模块

下载地址:
http://www.linux-ha.org/wiki/Downloads

2.安装配置软件并启动服务
1) 安装heartbeat及相关软件
[server1][server2]

yum install -y heartbeat-3.0.4-2.el6.x86_64.rpm  yum install -y heartbeat-libs-3.0.4-2.el6.x86_64.rpmyum install -y ldirectord-3.9.5-3.1.x86_64.rpm yum install -y httpd

[server4][server5]

yum install arptables_jf -yyum install httpd -y

如果安装出错,尝试将yum源修改为如下(172.25.254.65为镜像服务器):

name=Serverbaseurl=http://172.25.254.65/rhel6.5/Servergpgcheck=0[ScalableFileSystem]name=ScalableFileSystembaseurl=http://172.25.254.65/rhel6.5/ScalableFileSystemgpgcheck=0[HighAvailability]name=HighAvailabilitybaseurl=http://172.25.254.65/rhel6.5/HighAvailabilitygpgcheck=0[LoadBalancer]name=LoadBalancerbaseurl=http://172.25.254.65/rhel6.5/LoadBalancergpgcheck=0[ResilientStorage]name=ResilientStoragebaseurl=http://172.25.254.65/rhel6.5/ResilientStoragegpgcheck=0

2) 修改配置文件并启动服务
–>[server1]

cd /usr/share/doc/heartbeat-3.0.4/      ##在这个目录下有示例文件cp ha.cf haresources authkeys /etc/ha.d/    ##复制过来cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/vim /etc/ha.d/ldirectord.cfvim /etc/ha.d/ha.cfvim /etc/ha.d/authkeyschmod 600 /etc/ha.d/authkeys            ##认证文件权限必须是600vim /etc/ha.d/haresourcesscp /etc/ha.d/authkeys root@server2:/etc/ha.dscp /etc/ha.d/authkeys root@server2:/etc/ha.dscp /etc/ha.d/haresources root@server2:/etc/ha.dscp /etc/ha.d/ldirectord.cf root@server2:/etc/ha.decho 'server1:waiting master server...'>/var/www/html/index.html/etc/init.d/heartbeat start

–>[server2]

echo 'server2:waiting master server...'>/var/www/html/index.html/etc/init.d/heartbeat start

cat /etc/ha.d/ldirectord.cf|grep -v ‘#’

checktimeout=3checkinterval=1autoreload=yesquiescent=novirtual=172.25.254.88:80    real=172.25.254.4:80 gate    real=172.25.254.5:80 gate    fallback=127.0.0.1:80 gate    service=http    scheduler=rr    protocol=tcp    checktype=negotiate    checkport=80    request="index.html"

cat /etc/ha.d/ha.cf |grep -v ‘#’

logfacility local0keepalive 2     ##2s一次心跳deadtime 30     ##30s认定丢失warntime 10     ##10s为回应则警告initdead 120        ##120s初始启动的时间udpport 1996        ##udp端口auto_failback on    ##主服务修复后回切node    server4     ##两个节点node    server5ping 172.25.13.250  ##ping网关验证网络正常respawn hacluster /usr/lib64/heartbeat/ipfail   ##主lib与lib64apiauth ipfail gid=haclient uid=hacluster   ##用户

cat /etc/ha.d/haresources |grep -v ‘#’

server4 IPaddr::172.25.13.100/24/eth0 httpd ldirectord  ##脚本执行,VIP,httpd服务,ldirectord服务

cat authkeys |grep -v ‘#’

auth 1      #加密方式为11 crc       #明文认证

–>[server4]

arptables -A OUT -s 172.25.254.88 -j mangle --mangle-ip-s 172.25.254.4/etc/init.d/httpd startecho 'server4'>/var/www/html/index.html

–>[server5]

arptables -A OUT -s 172.25.254.88 -j mangle --mangle-ip-s 172.25.254.5/etc/init.d/httpd startecho 'server5'>/var/www/html/index.html

3.测试
至此,我们的高可用服务已经搭建完成,在浏览器或curl中打开连接172.25.254.88刷新就可以看到server4和server5切换,当停止server4和server5上的httpd时,就会发现访问的时‘server1:waiting master server…‘,再停止server1上的heartbeat时,页面就会变成‘server2:waiting master server…‘。
[server1][server2]

#ipvsadm -ln            #查看两个真实服务器的状态IP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags  -> RemoteAddress:Port           Forward Weight ActiveConn InActConnTCP  172.25.254.88:80 rr  -> 172.25.254.4:80              Route   1      0          0           -> 172.25.254.5:80              Route   1      0          0       
阅读全文
0 0
原创粉丝点击