在集群中膏秫,節(jié)點間通過心跳來了解彼此的健康狀態(tài)右遭,以確保各節(jié)點協(xié)調(diào)工作。假設(shè)只有“心跳”出現(xiàn)問題缤削,但各個節(jié)點還在正常運行窘哈,這時,每個節(jié)點都認(rèn)為其它的節(jié)點宕機了亭敢,自己才是整個集群環(huán)境中的“唯一健在者”滚婉,自己應(yīng)該獲得整個集群的“控制權(quán)”。在集群環(huán)境中帅刀,存儲設(shè)備都是共享的让腹,這就意味著數(shù)據(jù)災(zāi)難。簡單點說扣溺,就是如果由于私有網(wǎng)絡(luò)硬件或軟件的故障骇窍,導(dǎo)致集群節(jié)點間的私有網(wǎng)絡(luò)在一定時間內(nèi)無法進(jìn)行正常的通信,這種現(xiàn)像稱為腦裂娇妓。在發(fā)生腦裂情況后像鸡,集群的某些節(jié)點間的網(wǎng)絡(luò)心跳丟失,但磁盤心跳依然正常哈恰,集群根據(jù)投票算法(Quorum Algorithm)將不正確的節(jié)點踢出集群。磁盤心跳的主要目的是當(dāng)集群發(fā)生腦裂時可以幫助指定腦裂的解決方案志群。
私網(wǎng)網(wǎng)絡(luò)不能正常通信有一個超時時間着绷,稱為MC(Misscount),默認(rèn)為30s(通過命令“crsctl get css misscount”查詢)锌云。該時間允計集群節(jié)點間不能正常通信的最大時間為30s荠医,如果超過30s,那么Oracle認(rèn)為節(jié)點間發(fā)生了腦裂。在出現(xiàn)腦裂后彬向,集群的重要任務(wù)就是保證錯誤節(jié)點與正確節(jié)點間的I/O是隔離的兼贡,這樣才能避免對數(shù)據(jù)造成不一致的損壞。處理這個問題的方法就是:踢出錯誤節(jié)點執(zhí)行修復(fù)過程娃胆。