您好,登錄后才能下訂單哦!
本篇文章為大家展示了RAC重構(gòu)類型是怎么樣的,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
RAC隔離體系可分為3層:DB層,clusterware層和OS層
每一層都提供了機(jī)制用于保證RAC正常工作,每一層也都可引發(fā)RAC重構(gòu);
DB層
由LMON進(jìn)程維護(hù),其提供了CGS和NM兩個服務(wù),CGS位于NM之上
NM:每個instance的所有進(jìn)程被看作一個組注冊到clusterware,其中LMON為主進(jìn)程;其為DB和clusterware的通信通道,同時負(fù)責(zé)和其他節(jié)點(diǎn)NM定期通信;
Instance正常啟動或關(guān)閉時,其NM向clusterware進(jìn)行注冊或取消注冊,同時通知其他節(jié)點(diǎn)的NM,然后由NM通知CGS負(fù)責(zé)重構(gòu);
Startup/shutdown normal --〉 local NM--〉 remote NM --〉 remote CGS --〉GCS/GES reconfiguration
如果instance異常關(guān)閉或LMON/LMS/LMD通信超時,則需要由CGS進(jìn)行IMR,將重構(gòu)的結(jié)果記錄到控制文件的CFVRR字段(control file vote result record),由各instance讀取該字段以獲悉自己是否被驅(qū)逐
Shutdown abort/ipc timeout --〉 IMR --〉 control file
由上所述,DB層由于timeout引發(fā)重構(gòu)可分為兩種:
LMON通信超時:默認(rèn)300秒,因LMON/LMS/LMD通信異常導(dǎo)致
NAME VALUE ISDEFAULT ISMOD ISADJ
-------------------------------------------------- ------------------------- --------- ---------- -----
_cgs_send_timeout 300 TRUE FALSE FALSE
控制文件超時:默認(rèn)900秒,ckpt每3秒更新一次控制文件,如果超過規(guī)定時間仍無相應(yīng)則會觸發(fā)IMR
NAME VALUE ISDEFAULT ISMOD ISADJ
-------------------------------------------------- ------------------------- --------- ---------- -----
_controlfile_enqueue_timeout 900 TRUE FALSE FALSE
另據(jù)What is Split Brain in Oracle Clusterware and Real Application Cluster [ID 1425586.1]記載
Controlfile is used similarly to voting disk in clusterware layer to determine which instances survive and which instances evict. The voting result is similar to clusterware voting result
控制文件在RAC層充當(dāng)voting disk的角色
Clusterware層
由OCSSD負(fù)責(zé),其提供兩種心跳機(jī)制,分別為network heartbeat和disk heartbeat,其參數(shù)值分別如下
[oracle@ ~]$ crsctl get css disktimeout
CRS-4678: Successful get disktimeout 200 for Cluster Synchronization Services.
[oracle@ ~]$ crsctl get css misscount
CRS-4678: Successful get misscount 30 for Cluster Synchronization Services.
網(wǎng)絡(luò)心跳超時會導(dǎo)致集群被分隔成n個子集群,擁有節(jié)點(diǎn)數(shù)最多的子集群最終獲取控制權(quán),其余節(jié)點(diǎn)會被剔出重啟(11R2引入新機(jī)制取代了fast reboot);
The group with lower node member in case of same number of node(s) available in each group
如果兩個子集群節(jié)點(diǎn)數(shù)一樣多,用于較低節(jié)點(diǎn)號的子集群會最終存活
磁盤心跳超時:如果ocssd沒有在規(guī)定時間內(nèi)更新voting disk則oracle認(rèn)定其offline,如果offline數(shù)量大于online數(shù)量該節(jié)點(diǎn)則會被驅(qū)逐;
OS層
Hangcheck-Timer:用于檢測linux是否hang
Oprocd:10204起linux引入此進(jìn)程,每1秒執(zhí)行一次檢查,如果失敗則sleep 500毫秒后繼續(xù)嘗試;11R2起被cssdagent替代;
上述內(nèi)容就是RAC重構(gòu)類型是怎么樣的,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。