keepalive 1
该参数指定两次 heartbeat 之间的秒数。在本实验中,每秒一次 heartbeat。
deadtime 5
该参数指定等待声明主机死机的时间。指定 10 表示 heartbeat 将在节点停止响应 10 秒之后启动故障转移。
initdead 30
该参数指定heartbeat首次启动时deadtime应该为多久。因为当heartbeat在引导时启动时,还需要给网络启动留出时间,所以这个时间要设得长一些。
udpport 694
该参数指定heartbeat发送UDP包时所使用的端口。
udp eth1
该参数指定在哪个接口上发送heartbeat。
node ha1.bogus.sh.cn与node ha2.bogus.sh.cn
该参数告诉 heartbeat 使用哪些主机。节点名的正确性是非常重要的。节点名应与命令uname -n所显示的名称一致。
serial /dev/ttyS0
该参数指定在心跳线接在哪一个串口上。
baud 19200
该参数串口通讯的波特率。
2.2. /etc/ha.d/haresources
这个文件指定同步的服务以及主机是什么。两台机器上的这个文件一定要一致。我们设定的是高可用服务是Apache,它对外的IP是192.168.2.3,所以haresources的内容应该如下:
ha1.bogus.sh.cn 192.168.2.3 httpd
其中httpd是启动脚本的名称。heartbeat会先从/etc/ha.d/resource.d和/etc/rc.d/init.d的目录中去寻找httpd这个启动脚本,这里因为我们采用的apache是Redhat自带的apache,在/etc/rc.d/下面就有一个httpd的启动脚本,所以heartbeat就可以利用httpd start/stop来启动或停止apache服务了。NextPage### 2.3. /etc/ha.d/authkeys
有三种认证方式:crc, md5, and sha1. sha1是最难破解的,md5其次,crc最次。
这个文件的格式如下:
auth <number>
<number> <authmethod> [<authkey>]
这里我们的authkeys文件内容如下:
auth 1
1 sha1 sha1 myAuthkey
然后将其权限设为600,以提高安全性。注意:如果不做这一步,heartbeat可能无法正常运作。
chmod 600 authkeys
2.4 另一台服务器的配置
对于另一台服务器就也重复做以上的设定,如:
vi /etc/ha.d/ha.cf
vi /etc/ha.d/haresources
vi /etc/ha.d/authkeys
chmod 600 authkeys
在两台机器上的haresources和authkeys应该完全相同。ha.cf也应该相同,除非你的心跳线是连接不同的串口的或者交叉网线连接的网卡不同。
关注此文的读者还看过: