HEARTBEAT

系统环境:rhel6 x86_64 selinux and iptables disabled

heartbeat-3.0.4-2.el6.x86_64.rpm              100%  161KB 161.4KB/s   00:00    

heartbeat-devel-3.0.4-2.el6.x86_64.rpm        100%  123KB 123.0KB/s   00:00    

heartbeat-libs-3.0.4-2.el6.x86_64.rpm         100%  263KB 263.2KB/s   00:00    

ldirectord-3.9.5-3.1.x86_64.rpm               100%   88KB  88.0KB/s   00:00  

rpm -ivh heartbeat-*

yum install   PyXML cluster-glue libltdl.so.7 resource-agents -y(依赖包,不一定需要下载)

Cd /etc/ha.d/

Less ./README

Rpm -q heartbeat -d

cp /usr/share/doc/heartbeat-3.0.4/{ha.cf,haresources}

Vim ha.cf(以下为需要修改或需要使用到的选项)

logfile /var/log/ha-log

系统运行日志文件,取默认值

logfacility local0

日志等级,取默认值

keepalive 2

心跳频率,自己设定。1:表示 ;200ms:表示 200 毫秒

deadtime 30

节点死亡时间阀值,就是从节点在过了 30 后还没有收到心跳就认为主节点死亡,自己   设定

warntime 10

发出警告时间,自己设定

initdead 120

守护进程首次启动后应该等待 120 秒后再启动主服务器上的资源

udpport 694

心跳信息传递的 udp 端口,使用端口 694 进行 bcast 和 ucast 通信,取默认值

serial /dev/ttyS0

采用串口来传递心跳信息

bcast eth1(eth*根据自己ip所在的设备选择)

采用 udp 广播播来通知心跳

auto_failback on

当主节点恢复后,是否自动切回

node    server3.example.com (主节点)

node    server4.example.com (副节点)

ping 172.25.33.250

respawn hacluster /usr/lib/heartbeat/ipfaillib可能为lib64,根据实际情况添加)

apiauth ipfail gid=haclient uid=hacluster

默认 heartbeat 并不检测除本身之外的其他任何服务,也不检测网络状况。

所以当网络中断时,并不会进行 Load Balancer 和 Backup 之间的切换。

可以通过 ipfail 插件,设置'ping nodes'来解决这一问题,但不能使用一个集群节点作为

ping 的节点。

 

Vim haresources

server3.example.com IPaddr::172.25.33.100/24/eth1 httpd(使用同网段且未被占用的IP

Vim authkeys

auth 1

1 crc

#2 sha1 HI!

#3 md5 Hello!

chmod 600 authkeys

另一台副机配置也应与主机相同

/etc/init.d/heartbeat start

检测

浏览器登陆  172.25.33.100  查看页面信息

此时关掉 主机的 HTTPD 然后刷新看是否有变动

再连接 主机的HTTPD 查看信息是否还原由主机接管

寻找之间存在的区别以及其功能特性