今天部署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