快速业务通道

在linux系统用heartbeat实现双机热备

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-06

一:安装两个linux(rh4.5-32位)系统并关闭防火墙,selinux设置为disable,每台电脑需要配置两块网卡.两台电脑分别为node1和node2

node1的ip地址分别为:
eth0:192.168.0.65
eth1:10.0.0.3 (心跳地址)
node2的ip地址分别为:
eth0:192.168.0.66
eth1:10.0.0.4 (心跳地址)
192.168.0.30(虚拟ip地址)
注意:保证两台电脑每块网卡能够ping通.

二:保证两台电脑以下文件相同
/etc/hosts
/etc/host.conf
/etc/resolv.conf
#vi /etc/hosts

node1的hosts内容如下:
ip地址 域名 机器名
192.168.0.65 node1.example.com node1
10.0.0.3 node1
192.168.0.66 node2.example.com node2
10.0.0.4 node2
(保证机器名和参数uname -n输出一致)
#vi /etc/host.conf
order hosts,bind
#vi /etc/resolv.conf
nameserver 202.96.209.133(DNS地址如果为空可以根据当地dns输入)

node2的hosts内容如下:
ip地址 域名 机器名
192.168.0.65 node1.example.com node1
10.0.0.3 node1
192.168.0.66 node2.example.com node2
10.0.0.4 node2
(保证机器名和参数uname -n输出一致)
#vi /etc/host.conf
order hosts,bind
#vi /etc/resolv.conf
nameserver 202.96.209.133(DNS地址如果为空可以根据当地dns输入)

三:在两台电脑上分别安装heartbeat软件包.
按如下顺序
1:heartbeat-gui-2.1.2-2.el4.centos.i386.rpm
2:heartbeat-pils-2.1.2-2.el4.centos.i386.rpm
3:heartbeat-stonith-2.1.2-2.el4.centos.i386.rpm
4:heartbeat-2.1.2-2.el4.centos.i386.rpm

四:配置文件.
进入目录/usr/share/doc/heartbeat-2.1.2/目录,复制authkeys、ha.cf 和 haresources到/etc/ha.d/目录进行配置.
(这三个文件在两台电脑里一致.)配置如下:

配置心跳的加密方式:authkeys
#vi /etc/ha.d/authkeys

使用双机对联线(网线为交叉线),配置如下:
#vi /etc/hc.d/authkeys
auth 1
1 crc
存盘退出,然后
#chmod 600 authkeys
修改文件权限(

配置心跳的配置文件:ha.cf
#vi /etc/ha.d/ha.cf
logfile /var/log/ha-log (ha的日志文件记录位置.如没有该目录,则需要手动添加)

bcast eth1

keepalive 2 (设定心跳(监测)时间为2秒)

warntime 10 (超出该时间间隔未收到对方节点的心跳,则发出警告并记录到日志中.)

deadtime 30 (超出该时间间隔未收到对方节点的心跳,则认为对方已经死亡)

initdead 120
(在某些系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔.取值至少为deadtime的两倍.)

udpport 694 (使用udp端口694 进行心跳监测)

auto_failback off
nice_failback on

(nice_failback 这一选项在此版本的heartbeat里没有,如果没有可以根据需要手工添加.heartbeat的两台主机分别为主节点和从节点,主节点在正常情况下占用资源并运行所有的服务,遇到故障时把资源交给从节点并由从节点运行服务.一个参数auto_failback off再加上1:当auto_failback选项为on时,一旦主节点恢复运行,则自动恢复资源.2:当auto_failback选项为off,一旦主节点恢复运行,则不会自动恢复资源.此设置为第二种情况.

node node1 (节点1,要与 uname -n 指令得到的结果一致.)
node node2 (节点2)

配置心跳的资源:haresources
#vi /etc/ha.d/haresources

node1 192.168.0.30 httpd mysql(先启动httpd再启动mysql,关闭时先关闭mysql再关闭httpd)指定node1启动httpd和mysql服务,系统附加一个虚拟IP 192.168.0.30给eth0:0.这里如果node1宕机后,node2可以自动启动httpd和mysql服务,并新分配IP 192.168.0.30给node2的eth0:0.web服务的监听地址要设置为虚拟ip地址.

五:设置heartbeat自动启动(启动系统时启动)
cd /etc/rc.d/rc0.d
ln -s /etc/init.d/heartbeat K05heartbeat

cd /etc/rc.d/rc3.d
ln -s /etc/init.d/heartbeat S75heartbeat

cd /etc/rc.d/rc5.d
ln -s /etc/init.d/heartbeat S75heartbeat

cd /etc/rc.d/rc6.d
ln -s /etc/init.d/heartbeat K05heartbeat
(字母S和K为大写)

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号