如何配置heartbeat v2.1以及遇到的问题
在网上讲解如何配置的文章很多,但是在自己动手的过程中,还是遇到很多问题以及一些困惑,所以想总结一下。1、两台HREL5机器,分别为master和backup,这里的hostname,需要对网络进行配置,或者直接修改/etc/hosts文件。
2、一开始自己安装的是官方网站http://linux-ha.org下载的3.0rmp包,但是并未安装成功,需要依赖的东西太多,最后只好选择安装比较简单的2.1版本。2.1的rmp可以到http://www.rpmfind.net或者http://rpm.pbone.net这两个网站上下载。安装顺序:
3、开始配置,主要是3个文件,authkeys、haresources、ha.cf。这三个文件默认在/etc/ha.d/目录下并没有,需要拷贝过来,然后再修改。
authkeys:
三种模式,根据自己对网络安全的需要选择一种即可。修改后,需要改变该文件的权限
#chmod 600 /etc/ha.d/authkeys
haresources:
HA1.0的时候,是直接使用haresources文件,但是到2.0以后,就开始支cib.xml文件了。所以我们采用这种更好的模式。
设置内容master 192.168.6.110/24/eth0 mysqld
其中24是指子网掩码24位(11111111.11111111.11111111.00000000)
可以使用HA自带的程序生成cib.xml文件。
#cd /usr/lib/heartbeat/crm
#/usr/local/lib64/heartbeat/haresources2cib.py -stout -c /ect/ha.d/ha.cf /etc/ha.d/haresource2
打开该cib.xml文件可以看到对于mysqld的配置。
ha.cf:
具体各种配置选择,该文件有具体的说明。
自己是使用CRM模式启动的,所以需做如下设置:
crm yes
# respawn hacluster /usr/lib/heartbeat/cibmon -d
# apiauth cibmon uid=hacluster
这里需要建立对应用户组和用户
#groupadd haclient
#useradd -g haclient hacluster
发送心跳包有4种模式,串口、广播、多播、单播模式,自己一开始选择的广播模式,但是结果是两台机器无法加入到同一资源组中,查看日志显示WARN:get_uuid,Could not calculate uuid for backup。很是奇怪,最后才发现RHEL5无法发送出广播(一开始以为可以相互ping通,网络应该不存在问题,结果花了很长时间才意识这点)。之后修改为单播模式,心跳线建立成功。
4、运行heartbeat
#service heartbeat start或者#/etc/init.d/heartbeat start都可以。然后执行#crm_mon i3以及#crm_resource -L等查看运行结果。还可以使用ifconfig查看建立的virtual IP是否只在其中的一台机器上。
配置过程可以参考
http://www.ibm.com/developerworks/cn/linux/l-halinux/index.html
http://www.javaeye.com/topic/191076
页:
[1]