Centos7 安裝部署 heartbeat 3.0.6

一、 下載源碼包
http://www.linux-ha.org/wiki/Downloads 下載三個源碼包

Heartbeat 3.0.6    	      Cluster Glue 1.0.12       Resource Agents 3.9.6
958e11be8686.tar.bz2   	  0a7add1d9996.tar.bz2      resource-agents-3.9.6.tar.gz

二、配置基礎依賴

yum install -y bzip2 autoconf automake libtool glib2-devel libxml2-devel   bzip2-devel libtool-ltdl-devel asciidoc libuuid-devel

三、 安裝編譯

  1. 安裝Cluster Glue
# tar  -jxvf  0a7add1d9996.tar.bz2
# cd Reusable-Cluster-Components-glue–0a7add1d9996/
# groupadd haclient
# useradd -g haclient hacluster
# ./autogen.sh
# ./configure --prefix=/usr/local/heartbeat/
# make && make install
  1. 安裝Resource Agents
# tar xf v3.9.6.tar.gz
# cd resource-agents-3.9.6/
# ./autogen.sh
# export CFLAGS="$CFLAGS -I/usr/local/heartbeat/include -L/usr/local/heartbeat/lib"
# ./configure --prefix=/usr/local/heartbeat/
 ln -s  /usr/local/heartbeat/lib/* /lib/ 將生成的動態庫 添加快捷方式到/lib下 
  ln -s  /usr/local/heartbeat/lib/* /lib64/  在make過程中需要在lib下找到Cluster Glue的so文件
# make && make install
  1. 安裝heartbeat
```
# tar xf 958e11be8686.tar.bz2
# cd Heartbeat-3-0-958e11be8686
# ./bootstrap
# export CFLAGS="$CFLAGS -I/usr/local/heartbeat/include -L/usr/local/heartbeat/lib"
# ./configure --prefix=/usr/local/heartbeat/
# vi /usr/local/heartbeat/include/heartbeat/glue_config.h
 /*define HA_HBCONF_DIR “/usr/local/heartbeat/etc/ha.d/”*/ #把這一行用/**/註釋掉    未註釋的錯誤信息/usr/local/heartbeat/include/heartbeat/glue_config.h:105:0: error: "HA_HBCONF_DIR" redefined [-Werror]
# make && make install

重複以上步驟安裝備機
建立軟連接 主備機都需要

ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/
ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/

四、配置heartbeat
1. heartbeat中有三個配置文件需要修改 路徑爲 /usr/local/heartbeat/etc/ha.d/ ,該目錄下有 authkeys ha.cf haresources
這三個文件需要修改 。首先 修改主機 備機的hostname
例: 主機 ha1 備機 ha2
修改authkeys
auth 3
#1 crc
#2 sha1 HI!
3 md5 Hello!
或者自定義一個密碼 ,主機備機 這個文件內容必須一致 ,
# chmod 600 authkeys 修改權限否則啓動報錯。
2. 修改 ha.cf

debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 30
warntime 10
initdead 60
udpport 694
ucast eth0 172.16.10.111    #此處需要修改 設置另一臺機器的ip 網卡 0 或者 1 的ip 
auto_failback on
node ha1       #此處默認爲master機器的hostname  需要自己手動修改
node ha2     #此處默認爲slave機器的hostname
ping 172.16.10.1   # 此處設置自己的網關
ping 172.16.10.1
respawn hacluster /usr/local/heartbeat/libexec/heartbeat/ipfail   #此處我就寫了一行  看別的資料有寫兩行、三行的 ,我在日誌看到有報錯就寫了一行。

把需要修改的地方自己處理下可以直接放進去
該文件 主備機 唯一一處不同的就是 ucast 後面的ip 分別爲對方的ip

  1. 修改 haresources
ha1 IPaddr::172.16.10.99/24/eth0:0

master主機名 IPaddr ::虛擬浮動ip/掩碼/網卡0或者1 :0

五、啓動heartbeat
service heartbeat start
service heartbeat status
或者
systemctl start heartbeat
systemctl status heartbeat
查看日誌
tail -f /var/log/message
或者
tail -f /var/log/ha-log
或者
tail -f /var/log/ha-debug
六、問題解決
1. 啓動報錯 沒有找到某些文件 是沒有建立軟連接
ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/
ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/
2. 無法操作authkeys 原因 沒有對該文件進行權限設定
chmod 600 authkeys
3. 常見的 [ping] [ucast] 這樣的錯誤關鍵字
一般是 ha.cf 文件中配置問題 1.確保ping網關沒問題 2.確保兩個node 主機名 沒有問題 3. 確保 ucast 。。。。這一長串書寫沒問題。
七、參考鏈接
https://blog.csdn.net/liaomin416100569/article/details/76087448
八、有什麼錯誤可以留言 一塊討論
筆芯

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