heartbeat3.0安裝和配置

heartbeat簡介

heartbeat 項目是 Linux-HA 工程的一個組成部分,它實現了一個高可用集羣系統。例如,節點間的內部通信方式、集羣合作管理機制、監控工具和失效切換功能等。但是heartbeat僅僅是個HA軟件,它僅能完成心跳監控和資源接管,不會監視它控制的資源或應用程序。要檢測資源和應用程序是否正常,必須通過第三方插件實現,例如:ipfail、Mon和Ldirector等。

heartbeat3.0組成

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調用從而實現各種資源啓動、停止、監控等等。

 heartbeat3.0安裝

下面介紹兩種安裝方法:源碼安裝和rpm包安裝
1、源碼安裝

a、安裝Reusable-Cluster-Components-glue--glue-1.0.7

  1. #groupadd haclient 
  2. #useradd -g haclient hacluster 
  3. #wget http://hg.linux-ha.org/glue/archive/glue-1.0.7.tar.bz2 
  4. #tar jxvf glue-1.0.7.tar.bz2 
  5. #cd Reusable-Cluster-Components-glue--glue-1.0.7/ 
  6. #./autogen.sh 
  7. #./configure 
  8. #make 
  9. #make install 

b、安裝 Cluster-Resource-Agents-agents-1.0.3

  1. #wget https://download.github.com/ClusterLabs-resource-agents-agents-1.0.4-0-gc06b6f3.tar.gz 
  2. #tar -jvxf ClusterLabs-resource-agents-agents-1.0.4-0-gc06b6f3.tar.gz 
  3. #cd Cluster-Resource-Agents-agents-1.0.4 
  4. #./autogen.sh 
  5. #./configure 
  6. #make 
  7. #make install 

c、安裝 Heartbeat-3-0-STABLE-3.0.4.tar.bz2

  1. #wget http://hg.linux-ha.org/heartbeat-STABLE_3_0/archive/STABLE-3.0.4.tar.bz2 
  2. #tar jxvf STABLE-3.0.4.tar.bz2 
  3. #cd Heartbeat-3-0-STABLE-3.0.4/ 
  4. #./bootstrap 
  5. #./ConfigureMe configure 
  6. #make 
  7. #make install 

 注:在使用源碼安裝時候在線校驗一些xml文件,會耗費大量的時間。我整個安裝用了2個小時以上。

2、rpm包安裝

下載相關的rpm包,並採用本地yum源方式安裝。具體請參考該文:http://www.linuxfly.org/post/531/

heartbeat3.0配置

1、配置ha.cf

  1. vim /etc/ha.d/ha.cf  

debugfile /var/log/ha-debug  #用於記錄heartbeat的調試信息
logfile /var/log/ha-log           #用於記錄heartbeat的日誌信息
logfacility     local0           
keepalive 2                              #發送心跳報文的間隔,默認單位爲秒,如果你毫秒爲單位,那麼需要在後面跟ms單位,如1500ms即代表1.5s
deadtime 30                           #用於配置認爲對方節點菪掉的間隔
initdead 30                             #網絡啓動的時間
udpport 694                           #廣播/單播通訊使用的udp端口
mcast eth1 239.0.0.1 694 1 0 # 使用多播方式進行相互通信
auto_failback on                   #用於決定,當擁有該資源的屬主恢復之後,資源是否變遷:是遷移到屬主上,還是在當前節點上繼續運行,直到當前節點出現故障。
node space142                     #設置集羣中的節點,注意:節點名必須與uname –n相匹配
node space143
compression     bz2              #當消息大於compression_threshold定義的大小時,使用bz2壓縮消息
compression_threshold 2   #定義大於閾值爲2k
crm respawn                       #啓用Pacemaker cluster manager
# 以下兩行是pacemaker-mgmt提供的hb_gui 連接所必須的,2.1.4時沒有
apiauth         mgmtd   uid=root
respawn         root    /usr/lib64/heartbeat/mgmtd -v

2、配置authkeys

  1. #vim /etc/ha.d/authkeys 
auth 1
1 sha1 0366577bdaed36f08b5f1c29431812dc

  該文件主要是用於集羣中節點之間的認證,採用的算法和密鑰(如果有的話)在集羣中節點上必須相同,目前提供了3種算法:md5,sha1和crc。其中crc不能夠提供認證,它只能夠用於校驗數據包是否損壞,而sha1,md5需要一個密鑰來進行認證,從資源消耗的角度來講,md5消耗的比較多,sha1次之,因此建議一般使用sha1算法。
注:該文件必須改爲600權限

 

heartbeat啓動和資源管理
1、啓動heartbeat

  1. #service heartbeat start 

2、集羣資源管理

集羣資源管理工具有以下幾種:pacemaker提供crm shell 工具,而pacemaker-mgmt和pacemaker-mgmt-client則提供了hb_gui 圖形工具,還有基於Ajax web方式的管理工具。關於pacemaker相關資料可參考:http://www.clusterlabs.org/doc/zh-CN/Pacemaker/1.1/pdf/Clusters_from_Scratch/Pacemaker-1.1-Clusters_from_Scratch-zh-CN.pdf

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章