歡迎您光臨本站 註冊首頁

求助關於heartbeat v2模式的資源切換問題

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

求助關於heartbeat v2模式的資源切換問題

使用lvs + heartbeat v2模式 + ldirectord實現負載均衡加高可用性。
master,slave上管理的資源相同,是realserver,ldirectord兩個lsb腳本。
realserver功能是啟動ipvs,ldirectord是監控多個mysql資料庫,當出現資料庫出問題的時候及時從lvs中刪除。
基本master,slave故障切換都正常。
有個問題,當kill掉master上資源,heartbeat可以正常重啟這個資源。
如個重啟不了這個資源那麼應該切換到slave上,我測試的結果是沒有切換到slave機。
(上面說的kill掉的資源是ldirectord,通過ps aux|grep ldirectord找到的。)

cib.xml文件內容如下:
<resources>
       <group id="group_1">
         <primitive class="lsb" id="realserver_1" provider="heartbeat" type="realserver">
           <operations>
             <op id="realserver_1_mon" interval="30s" name="monitor" timeout="10s"/>
           </operations>
         </primitive>
         <primitive class="lsb" id="ldirectord_2" provider="heartbeat" type="ldirectord">
           <operations>
             <op id="ldirectord_2_mon" interval="30s" name="monitor" timeout="10s"/>
           </operations>
         </primitive>
       </group>
     </resources>
     <constraints>
       <rsc_location id="rsc_location_group_1" rsc="group_1">
         <rule id="prefered_location_group_1" score="100">
           <expression attribute="#uname" id="prefered_location_group_1_expr" operation="eq" value="oracle110"/>
         </rule>
       </rsc_location>
     </constraints>
《解決方案》

回復 #1 yunfei8888_ 的帖子

描述的不是很清晰,
應該理解是將ldirecord和mysqld都作為資源加入到cib.xml中
《解決方案》

個人理解有2點:
1. heartbeat對資源的監控可能不準確, 就是說,資源提供的monitor介面可能不是很準確,這樣會導致在資源down后(比如手工的down掉某個資源),heartbeat可能沒有檢測到,那麼就更談不上切換了。
2. heartbeat對資源down掉的處理方案的配置,記得有幾種:比如重啟3次還是切換,不太記得了。

說明:
有些資源類型和heartbeat集成的不是很好,手工處理該資源后,heartbeat不能檢測到,尤其是一些LSB類型的資源。

[火星人 ] 求助關於heartbeat v2模式的資源切換問題已經有539次圍觀

http://coctec.com/docs/service/show-post-6632.html