RHCS遇到的問題
Hi, ALL;
我有個RHCS的問題希望能得到大家的指點;
我已經配置好了仲裁盤並配置了3個HEURISTIC,心跳線,我有個案例想不清楚,如果我的磁碟陣列壞了,我的兩個節點都應該無法寫入QUORUM DISK,但是,此時我的心跳是好的,我想知道,在這種情況下,我的集群會發生什麼變化?我查閱了相關資料,也沒得出所以然,希望能得到大家的指點,謝謝
《解決方案》
拿配置文件來看看再說。
《解決方案》
<?xml version="1.0"?>
<cluster alias="gtc_test" config_version="12" name="gtc_test">
<quorumd interval="1" label="rhcs_voting" min_score="2" tko="15" votes="1">
<heuristic program="ping -c4 -t2 192.168.100.4" score="1" interval="2" tko="3"/>
<heuristic program="ping -c4 -t2 192.168.100.1" score="1" interval="2" tko="3"/>
<heuristic program="ping -c4 -t2 192.168.100.2" score="1" interval="2" tko="3"/>
</quorumd>
<fence_daemon post_fail_delay="0" post_join_delay="10"/>
<clusternodes>
<clusternode name="fsommfe01pri1" nodeid="1" votes="1">
<multicast addr="239.0.0.1" interface="eth2"/>
<fence>
<method name="1">
<device lanplus="1" name="fence01"/>
</method>
</fence>
</clusternode>
<clusternode name="fsommfe02pri1" nodeid="2" votes="1">
<multicast addr="239.0.0.1" interface="eth2"/>
<fence>
<method name="1">
<device lanplus="1" name="fence02"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman expected_votes="3" quorum_dev_poll="20000" two_node="0">
<multicast addr="239.0.0.1"/>
</cman>
<fencedevices>
<fencedevice agent="fence_ipmilan_new" auth="password" ipaddr="139.122.10.201" login="fence01" name="fence01" passwd="ericsson" method="cycle"/>
<fencedevice agent="fence_ipmilan_new" auth="password" ipaddr="139.122.10.202" login="fence02" name="fence02" passwd="ericsson" method="cycle"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="dccfailover" ordered="0" restricted="1">
<failoverdomainnode name="fsommfe01pri1" priority="1"/>
<failoverdomainnode name="fsommfe02pri1" priority="1"/>
</failoverdomain>
</failoverdomains>
<resources>
<ip address="139.122.10.206" monitor_link="1"/>
<clusterfs device="/dev/vgdcc/lvdcc" force_unmount="1" fsid="63851" fstype="gfs" mountpoint="/mnt/lvdcc" name="lvdcc" options=""/>
</resources>
<service autostart="0" domain="dccfailover" name="dcc" recovery="relocate">
<ip ref="139.122.10.206"/>
<clusterfs ref="lvdcc"/>
</service>
</rm>
<totem token="26000"/>
</cluster>
《解決方案》
上面是配置文件,大家看看啊,幫幫忙啊
《解決方案》
這個配置應該是用conga生成的吧?
在這個配置當中,如果你的qdisk壞掉,集群將直接進入inquorate狀態。說白了,整個集群會崩掉。
《解決方案》
我手動配置的
沒用conga
如果我的存儲壞掉,也就是我的共享盤壞掉,我的集群就掛了。那心跳線+心跳盤沒什麼意義啊
《解決方案》
再牛的集群也是把仲裁數據存放在共享磁碟上啊,如果你的磁碟陣列趴下了就好比3個人同時抬個伺服器的時候地震了,那3個人還能平穩嘛。。。。。。集群的目的是為了解決一個人沒辦法跟另外兩個人按照約定好的步調去走路,喊口號的就立刻把不和諧的那個人踢出去,保證另外兩個步調一致的繼續抬著伺服器。
《解決方案》
我手動配置的
沒用conga
如果我的存儲壞掉,也就是我的共享盤壞掉,我的集群就掛了。那心跳線+心跳盤沒什 ...
sugargg 發表於 2010-11-05 22:55 http://linux.chinaunix.net/bbs/images/common/back.gif
首先,仲裁盤和心跳信號都是CMAN作出判斷的重要依據,他們之間的聯動機制不是一兩句話能說清楚的,我也沒法在這裡說清楚。
但是簡而言之,仲裁是輔助心跳的一種手段,仲裁盤出錯的話會將這個信息傳遞給CMAN,那麼CMAN將以此為依據控制整個集群的下一步動作。
第二,兩個節點做集群,我一直主張不要用仲裁盤,如果是多個節點那又不同。因為兩節點+qdisk不光沒有任何意義,而且會增加集群運行的不穩定因素。尤其是在你這個配置當中,只要三個小程序中壞兩個,這個節點就可能被判定出局。說不好聽點,恐怕任何一點風吹草動都會導致集群產生fence或者inquorate的現象。所以把配置改了吧!
《解決方案》
如果兩個節點不用仲裁盤的話,心跳線斷了,我兩台機器互相FENCE,如何解決這個問題?bonding心跳網口可能也算是一個好方法。但RHCS集群的仲裁盤只為解決腦裂而存在?
另外,集群應該是個QUORATE機制,我每個節點各1票,QUORUM DISK 1票,如果心跳線完好,而只仲裁盤壞掉,集群還有兩票,會不會還維持我的集群狀態?這個是比較困擾我的問題
《解決方案》
本帖最後由 jerrywjl 於 2010-11-08 12:43 編輯
樓上,如果心跳斷了兩台機器互相fence證明你的網路存在問題。所以你應該確保你的網路環境不會對心跳造成影響,而且心跳不要直連,而是通過交換機連接。
第二個問題是,如果你只丟了qdisk的這一票而心跳完好,按道理說集群還是會繼續quorate,不過實際情況看,恐怕這種情況就不會quorate了,因為兩台機器都無法更新qdisk,qdiskd必然認為兩台機器都出現問題,那麼這種情況下丟掉的就不是一票了。