> Linux教程 >

CentOS下Yum安装 heartbeat

一、环境 
(应该有200M左右,建议耐心等待安装完) 
yum install e2fsprogs-devel libuuid-devel Libnet libtool-ltdl-devel libxslt-devel bzip2-devel glib2-devel perl* glib* 
yum install autoconf automake libtool glib2-devel bzip2-devel glib-devel libxml2 libxml2-devel docbook-style-xsl libtool-ltdl-devel 
yum install libxml2-dev libbz2-dev uuid-dev asciidoc libxslt1-dev 
yum install net-snmp* perl-Compress* perl-HTML* perl-libwww* perl-MailTools* perl-TimeDate* perl-URI* 
yum install perl-IO-Socket* perl-Socket6* perl-Pod* perl-Test-Pod* libnet*

二、安装heartbeat 
在centos下如果直接yum 安装的话 
提示找不到包。原因是针对centos6.2的heartbeat尚未发布,解决办法可以到第三方资源为库中找,这里使用epel

先下载安装epel

wget http://mirrors.sohu.com/fedora-epel/6/i386/epel-release-6-6.noarch.rpm 
rpm -ivh epel-release-6-6.noarch.rpm 
或者 
http://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

之后安装heartbeat

yum -y install heartbeat-stonith heartbeat-pils heartbeat heartbeat-devel heartbeat-gui libnet

三、测试

网络环境:

主节点: 主机名:114.localdomain ( NodeA )
eth0:  192.168.4.114  255.255.255.0   //HA心跳使用地址
eth1:  192.168.2.114  255.255.255.0   //对外IP地址
备节点: 主机名:235.localdomain ( NodeB )
eth0:  192.168.4.235  255.255.255.0   //HA心跳使用地址
eth1:  192.168.2.235  255.255.255.0   //对外IP地址
vip: 192.168.2.17

两台机器的/etc/hosts文件中需要加入如下的配置

192.168.2.114     114.localdomain        
192.168.2.235     235.localdomain

主节点的/etc/sysconfig/network文件的HOSTNAME如下

HOSTNAME=114.localdomain

从节点的/etc/sysconfig/network文件的HOSTNAME如下

HOSTNAME=235.localdomain

配置:  Heartbeat的主要配置文件有ha.cf、haresources、authkeys,需要放在/etc/ha.d目录下,  在通过yum安装Heartbeat后,默认并没有这三个文件,  yum 安装后可以从/usr/share/doc/heartbeat-2.1.3找到,拷贝到/etc/ha.d并编辑(直接新建也行)

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/

主节点配置文件:ha.cf  内容设置如下:

debugfile /var/log/ha-debug  #用于记录heartbeat的调试信息  
logfile /var/log/ha-log  #用于记录heartbeat的日志信息  
logfacility local0  #系统日志级别  
keepalive 2  #设定心跳(监测)间隔时间,默认单位为秒  
warntime 10  ##警告时间,通常为deadtime时间的一半  
deadtime 30  # 超出30秒未收到对方节点的心跳,则认为对方已经死亡  
initdead 120  #网络启动时间,至少为deadtime的两倍。  
udpport 694  #使用udp端口694 进行心跳监测  
bcast eth0 
auto_failback on  #on表示当拥有该资源的属主恢复之后,资源迁移到属主上  
node 114.localdomain  #设置集群中的节点,节点名须与uname –n相匹配  
node 235.localdomain  #节点2  

主节点资源文件:haresources  cat /etc/ha.d/haresources

114.localdomain  IPaddr::192.168.2.17/24 
  • 1

主节点认证文件authkeys  cat /etc/ha.d/authkeys

auth 1
1 crc

注:需要更改该文件的属性为600,否则heartbeat启动将失败

chmod 600 authkeys

备节点配置与主节点一致

启动heartbeat  主节点:/etc/init.d/heartbeat start  备节点:/etc/init.d/heartbeat start

查看日志:  tail -f /var/log/ha-log

注:  主节点启动heartbeat后,过120s后,才会创建虚拟IP  关闭主节点的heartbeat后,114上回关闭虚拟IP,备节点会启动虚拟IP。这是资源交接完成。

参考:  http://blog.csdn.net/libinbin_1014/article/details/50342405

(责任编辑:IT)