CRM: Cluster Resources Manager
为那些非ha-ware的应用程序提供调用的基础平台
一般情况下,一个高可用服务包括多个资源,从属于同一个服务的多个资源必须运行于一个节点上,默认情况下是平列的(做完该实验相信你对集群资源节点的相关机制会有一定的认识)
配置过程:(这里我继续使用上节的环境)
# ssh node2 'service heartbeat stop'
# service heartbeat stop
# vim ha.cf
mcast eth0 225.0.100.1 694 1 0
crm respawn
#CRM与Resources并不兼容,如果ha.cf中定义了CRM,HA服务不会去读取/etc/ha.d/haresources配置文件。如果你执意要使用这种配置,也是行的,下面看一下他的配置方法:
# cd /usr/lib/heartbeat
# ./haresources2cib.py /etc/ha.d/haresources
当然了,我们这里主要介绍crm配置方法,下面继续
# /usr/lib/heartbeat/ha_propagate //heartbeat自带的复制本节点的ha.cf&authkeys文件到其它节点
查看日志:
# tail -f /var/log/messages
info: update_dc: Set DC to node2.neo.com (2.0)
# netstat -tnlp
tcp 0 0 0.0.0.0:5560 0.0.0.0:* LISTEN 4877/mgmtd
此时我们可以使用各种crm/cib的命令行工具
下面我们通过heartbeat-gui配置集群服务
由于使用GUI配置需要heartbeat包自带的帐号hacluster连接,所以需要为其设置密码
# passwd hacluster
# hb_gui
注意:这里配置过程我们先建立group,然后依先后顺序建立资源,并且需要连接到DC节点上进行配置,查看哪个节点是DC我们可以使用crm_mon进行查看
然后测试浏览器是否能访问node2,而后我们手动测试将node2设置为standby,看其是否能将服务转移到node1上来
添加NFS共享存储到该资源
注意:这里需要按次序新建资源节点,如果不能在GUI界面调整上下次序需要删除原有资源再新建(由于httpd与nfs不在同一台主机,我们肯定是先启动文件服务再启动httpd服务吧),并且要记得在删除资源时需要清除缓存数据,否则可能会影响后面启动
以上是通过组的方式创建的
推荐阅读:
Linux 高可用(HA)集群之heartbeat基于crm进行资源管理详解
Heartbeat+httpd+NFS 实现高可用的Web服务器
LVS+heartbeat+ldirectord高可用负载均衡集群解决方案