heartbeat狀態判斷諮詢
各位達人們,
請問在heartbeat雙節點環境中,如果出現如下情況:
[*]兩節點系統均正常狀態
[*]每個節點均只有一個網卡
[*]其中一個節點的網卡出現故障,導致網路無法通訊
我的問題是
[*]這樣的架構合理么,有錯么
[*]如果這個架構可用,那麼heartbeat的判斷是什麼,那台機器給判斷出事,行為又是如何?
heartbeat新手,多諒解。
配置如下:# grep -v "^#" /etc/ha.d/haresources
vs1 192.168.117.100 httpd
# grep -v "^#" /etc/ha.d/ha.cf | grep -v "^$"
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 30
warntime 10
initdead 60
bcast eth0 # Linux
mcast eth0 225.0.0.1 694 1 0
auto_failback on
node vs1
node vs2
#
《解決方案》
讓LZ見笑了,不是什麼大師,heartbeat也就多玩了點時間而已
1 stonith設備
http://en.wikipedia.org/wiki/STONITH
http://www.linux-ha.org/wiki/STONITH
2 腳本監控
針對兩台sever 的服務做監控
3 其他方式,等待大俠們補充
《解決方案》
本帖最後由 zhujinzz 於 2011-05-05 18:48 編輯
回復 1# cst05001
架構肯定是不合理的,但可用,可能會被折騰
1 心跳和業務都走一條線路是不合理的,一般採用雙網卡,心跳和業務分開
2 單網卡-網路故障,造成心跳失效,master/slave爭用resource,發生split-brain(沒有stonith情況下,會一直下去,當然可用腳本監控到,需要人工處理)
下面是我在現跑的機器上對LZ的情況做的測試
1 關掉stonith
<nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="false"/>
2 crm_mon情況
node1
Online: [ node1 ]
OFFLINE: [ node2 ]
Resource Group: mysqld
fs_mysql_0 (ocf::heartbeat:Filesystem): Started node1
fs_mysql_1 (ocf::heartbeat:Filesystem): Started node1
ip_mysql (ocf::heartbeat:IPaddr2): Started node1
node2
Online: [ node2 ]
OFFLINE: [ node1 ]
Resource Group: mysqld
fs_mysql_0 (ocf::heartbeat:Filesystem): Started node2
fs_mysql_1 (ocf::heartbeat:Filesystem): Started node2
ip_mysql (ocf::heartbeat:IPaddr2): Started node2
《解決方案》
回復 2# zhujinzz
這位大師,能不能簡單介紹下雙節點heartbeat中一般是怎麼防止brain split的?