今天部署Linux-HA ,习惯性的选择了最新版的Heartbeat-3-0-STABLE-3.0.4.tar.bz2,这要命的玩意儿...这个版本后官方貌似分包安装处理,没有原来的易用性可言,简单描述一下遇到的问题和解决方案:
先说明一下新版heartbeat3.0版本有三部分组成:Heartbeat、Cluster Glue、Resource Agents
1、hearbeat是集群基础(cluster messaging layer),负责维护集群各节点的信息以及它们之前通信;
2、cluster-glue中间层,可以将heartbeat和crm(pacemaker)联系起来,主要包含2个部分,LRM和STONITH;
3、resource-agent,就是各种的资源的ocf脚本,这些脚本将被LRM调用从而实现各种资源启动、停止、监控等等。
问题1:编译heartbeat时报错:
configure: error: Core development headers were not found
See `config.log' for more details.
./bootstrap exiting due to error (sorry!).
解决:这需要中间层包glue,安装方法:
#groupadd haclient
#useradd -g haclient hacluster
#wget http://hg.linux-ha.org/glue/archive/glue-1.0.7.tar.bz2
#tar jxvf glue-1.0.7.tar.bz2
#cd Reusable-Cluster-Components-glue--glue-1.0.7/
#./autogen.sh
#./configure
#make
#make install
在make install Heartbeat碰到这个问题:
gmake[1]: Entering directory `/root/Heartbeat-3-0-STABLE-3.0.3/doc'
\
--xinclude \
http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl heartbeat.xml
gmake[1]: --xinclude: Command not found
gmake[1]: *** [heartbeat.8] Error 127
gmake[1]: Leaving directory `/root/Heartbeat-3-0-STABLE-3.0.3/doc'
make: *** [all-recursive] Error 1
需要安装libxslt-devel包了。安装好之后就可以。
顺便把其他几个包的安装也写出来:
安装 Cluster-Resource-Agents-agents-1.0.3
#tar -jvxf ClusterLabs-resource-agents-agents-1.0.4-0-gc06b6f3.tar.gz
#cd Cluster-Resource-Agents-agents-1.0.4
#./autogen.sh
#./configure
#make
#make install
安装 Heartbeat-3-0-STABLE-3.0.4.tar.bz2
#tar jxvf STABLE-3.0.4.tar.bz2
#cd Heartbeat-3-0-STABLE-3.0.4/
#./bootstrap
#./ConfigureMe configure
#make
#make install