免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1321 | 回复: 0
打印 上一主题 下一主题

centos5.4下的heartbeat双机实现 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-28 11:54 |只看该作者 |倒序浏览
系统:centos5.4
软件:apache, heartbeat
主机名:ha1 ha2
主机ha1 IP:192.168.1.101 心跳IP:10.0.0.101
主机ha2 IP:192.168.1.102 心跳IP:10.0.0.102
浮动IP:192.168.1.200
一、环境搭建
centos5.4 最小化安装
#yum update
#vi /etc/sysconfig/selinux
SELINUX=disabled
关闭iptables防火墙
#chkconfig --level 3 iptables off
#chkconfig --level 3 ip6tables off
安装heartbeat以及相关软件
#yum install heartbeat* which httpd
重启
#reboot
修改主机1的hosts文件
#vi /etc/hosts
127.0.0.1       localhost.localdomain localhost
192.168.1.101   ha1 h1
192.168.1.102   ha2
10.0.0.101      h1
10.0.0.102      h2
修改主机2的hosts文件
#vi /etc/hosts
127.0.0.1       localhost.localdomain localhost
192.168.1.101   ha1
192.168.1.102   ha2 h2
10.0.0.101      h1
10.0.0.102      h2
二、配置heartbeat
#cp /usr/share/doc/heartbeat-2.1.3/ha.cf /etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/haresources /etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/authkeys /etc/ha.d/
#cd /etc/ha.d/
#vi authkeys
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!  #1,2,3表示认证算法选择,这里选择了crc算法
必须将authkeys文件权限设置为600
#chmod 600 authkeys

#vi haresources
ha1 IPaddr::192.168.1.200 httpd
#第一列为默认主机,第二列为配置的浮动ip,第三列为需要实现高可用性的服务(启动脚本在/etc/init.d内),如果没有服务则默认全部已运行服务,ha指定服务在备机接管之前是不会启动的

#vi ha.cf
debugfile /var/log/ha-debug
logfile /var/log/ha-log    #两个日志文件
logfacility     local0    #登陆/调试日志同时记录给syslog
keepalive 2     #每2秒检测一次
deadtime 30     #30秒后切换
warntime 10     #警告时间10秒
initdead 120    #重启网络时间(deadtime两倍以上)
udpport 694     #心跳端口
#bcast eth1     #采用eth1的udp广播用来发送心跳信息,建议在副节点不只一台时使用
ucast eth1 10.0.0.102      #采用网卡eth1的udp单播来通知心跳,ip应为对方IP,在主机2上设置为ucast eth1 10.0.0.101
#mcast eth0 225.0.0.1 694 1 0       #采用udp多播播来通知心跳,建议在副节点不只一台时使用,广播,单播,多播,以上三种任选其一即可
auto_failback on  #on=主备机模式,off=非切换模式(就是谁接手谁是主机直到他自己故障)
node    ha1
node    ha2      #节点名(一定要和uname -n的结果一致)
ping 192.168.1.1  #用来验证外网线连通的ip(推荐上级路由器,还有ping_group,hbaping等类似配置可选)
respawn hacluster /usr/lib/heartbeat/ipfail
apiauth ipfail gid=haclient uid=hacluster      #网络检测补救插件,用来实现auto_failback功能的
三、测试
1、分别在两台主机的apache中设置不同的页面
2、启动主机1的apache服务
3、启动主机1的heartbeat服务,并查看是否配置上了浮动IP
4、启动主机2的heartbeat服务
5、在ie中访问192.168.1.200(也就是前面设置的浮动ip),关闭主机的heartbeat服务,刷新页面确认访问的是主机2的页面,在重新把主机的heartbeat服务启动,确实是否切换回主机1的页面。
6、将heartbeat服务添加到服务器开机启动,并将主机1的httpd服务设置为开机启动
chkconfig --add heartbeat
chkconfig --level 3 httpd on
chkconfig –list
7、重启后在从1到5步测试下

参考文档:http://blog.chinaunix.net/u1/51878/showart_1171351.html


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/75896/showart_2162959.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP