linux-HA 節點 故障: node xxx UNCLEAN (offline) 一例

babyyellow發表於2012-09-10
上週在測試HA 的時候,需要臨時增加硬碟空間,請硬體同事重新規劃了虛擬機器的配置。

測試過程中出現了一個奇怪的問題

兩邊node 啟動了HA 系統後,相互認為對方是損壞的。

crm_mon 命令顯示  

node95   UNCLEAN  (offline)
node96   online
另一個節點  node95 則相反,認為node96 offline unclean

沒有辦法解決,即便是重灌了HA 系統也是如此。從現有的執行正常的ha系統,copy整個配置檔案過來也是如此。


最後放棄,今天將問題提交到網路組,看看是不是兩邊的通訊有問題,tcpdump 觀察兩邊的5405 埠是有通訊的。

但是系統還是有問題,整鬱悶的時候,兩邊自動好了,認為對方是正常的節點了。


莫名其妙。
看了下時間,兩邊的時間都是utc 時間, 於是手工date 修改了主機時間到現在時間。

修改完了,手工重啟下node95 ,看看ha的反應,奇怪的事情又發生了。兩邊又相互不認識了。

整鬱悶的時候, 突然兩邊node又都認識了。奇怪的事情發生了。兩個vm的時間都又回到了utc時間。

這回想明白是怎麼回事了。
初步確定問題原因了:

應該是重新載入硬碟以後,調整了虛擬機器的物理機器,導致虛擬機器的時間會同步物理機的時間,物理機的 時間是用utc時間的,我這邊改了時間後,重啟一臺,導致兩個節點的時間序列不一致了,叢集系統認為出錯了,不能在兩臺機器之間清理狀態,兩臺機器都認為 對方壞掉了,發生了腦裂了。各人自己維護自己的系統狀態了。碰巧兩臺機器在損壞的過程中發生了一次時間同步,兩臺機器都回到了utc 時間,兩邊的時間序列應該在同一個時間上了。兩邊的PE(策論引擎) 認為系統node 對等了,然後叢集的狀態同步恢復到了正常狀態。


HA 的節點間應該有嚴格的時間同步機制!!。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/133735/viewspace-743067/,如需轉載,請註明出處,否則將追究法律責任。

相關文章