天天看點

十年CDP,專業治療伺服器“腦裂”問題

什麼是“腦裂”?

腦殘大家都知道,“腦裂”是個什麼鬼?肯定不是那本驚悚故事集啦。“腦裂”是高可用方案(ha)中出現的一種伺服器故障,在“雙機熱備”高可用(ha)系統中,當聯系2個節點的“心跳線”斷開時,本來為一整體、動作協調的ha系統,就分裂成為2個獨立的個體。由于互相失去了聯系,都以為是對方出了故障,2個節點上的ha軟體像“裂腦人”一樣,“本能”地争搶“共享資源”、争起“應用服務”,就會發生嚴重後果:或者共享資源被瓜分、2邊“服務”都起不來了;或者2邊“服務”都起來了,但同時讀寫“共享存儲”,導緻資料損壞(常見如資料庫輪詢着的聯機日志出錯)。

伺服器“腦裂”的危害

伺服器“腦裂”容易引起伺服器叢集邏輯關系混亂,導緻主、備伺服器誤認為對方當機而同時接管對方的業務,同時占用共享的檔案系統,造成資料庫争搶資源,引起資料庫表檔案的損壞,進而導緻資料庫服務的中斷,對外業務暫停。

據悉,2015年10月,某商業銀行核心系統曾因伺服器叢集的心跳通信異常,引發“腦裂”故障,導緻資料庫檔案損壞,資料庫發生邏輯錯誤而停止對外服務,造成該行櫃面和管道業務較長時間中斷。為了防止此類事件再次發生,銀監會特意下發(2015)175号辦公廳檔案提醒各銀監局和銀行注意風險防範。

出現“腦裂”怎麼辦?

腦裂可以防範,經驗豐富的運維工程師會建議采用下面的措施來防範“腦裂”的發生:1. 添加備援的心跳線,例如雙線條線。這樣能夠盡量減少“裂腦”發生的機會。2. 啟用磁盤鎖。3. 設定仲裁機制。

但是腦裂無法根除,發生腦裂時即使是所有的節點都可以工作,業務也會被迫中斷。既然無法根除,那麼我們就要面對。這就需要在腦裂之後可以有一種預案以最快的速度恢複業務!

有人會疑問:“都腦裂了,還咋最快的恢複業務?”,答案就四個字“任意回退”!ha系統正常時是同一個大腦在指揮,腦裂後的各自瞎指揮最終造成了資料的不可用。而業務的長時間中斷就是因為這種資料的不可用所造成的。

找到問題的原因,就基本上有了解決問題的辦法。既然腦裂所造成的業務停頓是因為資料的不可用,那麼要想恢複業務讓資料重新可用就行了。如何讓資料重新可用?讓時光回到腦裂前的那一刻,一切都會美好起來。那時候資料庫還起的起來,最後一筆業務資料還在。

但是任何人都無法預知腦裂的發生,而腦裂前的那一刻是哪一刻也沒有軟體預先知道後在那裡設定一個回退點。這就需要有一種保護機制将資料變化的所有點全部記錄下來,這些所有點必然包含了“腦裂前的那一刻”這個點。這種保護技術就是cdp,通過持續的資料保護,可以做到任意時間點回退。

和力記易十年磨一劍,采用基于主機嵌入式分析的方式對結構化資料進行cdp保護,在記錄所有回退點的同時還分析了資料庫的内部邏輯結構,保證了每個回退點都是資料庫的可用點。可謂居家旅行,專治腦裂,必備良品!

本文轉自d1net(轉載)