自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解什么是 Oracle RAC 腦裂

數(shù)據(jù)庫 Oracle
裂腦通常用于描述集群中的兩個(gè)或多個(gè)節(jié)點(diǎn)彼此失去連接但隨后繼續(xù)彼此獨(dú)立運(yùn)行(包括獲取邏輯或物理資源)的場景。

什么是腦裂?

裂腦通常用于描述集群中的兩個(gè)或多個(gè)節(jié)點(diǎn)彼此失去連接但隨后繼續(xù)彼此獨(dú)立運(yùn)行(包括獲取邏輯或物理資源)的場景,錯(cuò)誤假設(shè)其他進(jìn)程(es ) 不再運(yùn)作或使用上述資源。簡單來說,“大腦分裂”意味著有 2 個(gè)或更多不同的節(jié)點(diǎn)集或“隊(duì)列”,兩個(gè)隊(duì)列之間沒有通信。

例如:假設(shè)在以下情況下有 3 個(gè)節(jié)點(diǎn)。1. 節(jié)點(diǎn) 1,2 可以相互通信。2. 但是 1 和 2 不能和 3 對(duì)話,反之亦然。然后有兩個(gè)同類群組:{1, 2} 和 {3}。

詳解Oracle RAC 腦裂

腦裂發(fā)生的原因

腦裂事件后的最大風(fēng)險(xiǎn)是破壞系統(tǒng)狀態(tài)的可能性。損壞的三個(gè)典型原因:1. 在發(fā)生裂腦事件之前曾經(jīng)合作的進(jìn)程獨(dú)立地修改相同的邏輯共享狀態(tài),從而導(dǎo)致系統(tǒng)狀態(tài)視圖發(fā)生沖突。這通常被稱為“多主機(jī)問題”。2. 在Split-Brain 事件之后接受新請(qǐng)求,然后在可能損壞的系統(tǒng)狀態(tài)上執(zhí)行(因此可能進(jìn)一步損壞系統(tǒng)狀態(tài))。3. 當(dāng)分布式系統(tǒng)的進(jìn)程“重新加入”在一起時(shí),它們可能對(duì)系統(tǒng)狀態(tài)或資源所有權(quán)有沖突的看法。在解決沖突的過程中,信息可能會(huì)丟失或損壞。

簡單來說,在腦裂的情況下,從某種意義上說,有兩個(gè)(或更多)獨(dú)立的集群在同一個(gè)共享存儲(chǔ)上工作。這有可能導(dǎo)致數(shù)據(jù)損壞。

集群件如何解決“腦裂”的情況?

在腦裂的情況下,投票磁盤將用于確定哪些節(jié)點(diǎn)存活以及哪些節(jié)點(diǎn)將被驅(qū)逐。共同投票結(jié)果將是:

  • 具有更多集群節(jié)點(diǎn)的組(隊(duì)列)存活
  • 如果每個(gè)組中可用的節(jié)點(diǎn)數(shù)量相同,則具有較低節(jié)點(diǎn)成員的組(隊(duì)列)將存活。
  • 已經(jīng)進(jìn)行了一些改進(jìn),以確保負(fù)載較低的節(jié)點(diǎn)在系統(tǒng)負(fù)載高引起驅(qū)逐的情況下仍然存在。

通常,當(dāng)發(fā)生裂腦時(shí),會(huì)在 ocssd.log 中看到類似以下的消息:

[ CSSD]2011-01-12 23:23:08.090 [1262557536] >TRACE: clssnmCheckDskInfo: Checking disk info...
[ CSSD]2015-01-12 23:23:08.090 [1262557536] >ERROR: clssnmCheckDskInfo: Aborting local node to avoid splitbrain.
[ CSSD]2015-01-12 23:23:08.090 [1262557536] >ERROR: : my node(2), Leader(2), Size(1) VS Node(1), Leader(1), Size(2)
[ CSSD]2015-01-12 23:23:08.090 [1262557536] >ERROR:
###################################
[ CSSD]2015-01-12 23:23:08.090 [1262557536] >ERROR: clssscExit: CSSD aborting
###################################

以上消息表明從節(jié)點(diǎn) 2 到節(jié)點(diǎn) 1 的通信不工作,因此節(jié)點(diǎn) 2 只能看到 1 個(gè)節(jié)點(diǎn),但節(jié)點(diǎn) 1 工作正常,它可以看到集群中的兩個(gè)節(jié)點(diǎn)。為避免腦裂,節(jié)點(diǎn) 2 自行中止。

為確保數(shù)據(jù)一致性,RAC 數(shù)據(jù)庫的每個(gè)實(shí)例都需要與其他實(shí)例保持心跳。心跳由 LMON、LMD、LMS 和 LCK 等后臺(tái)進(jìn)程維護(hù)。這些進(jìn)程中的任何一個(gè)遇到 IPC 發(fā)送超時(shí)都會(huì)導(dǎo)致通信重新配置和實(shí)例驅(qū)逐以避免腦裂??刂莆募c集群件層中的投票磁盤類似,用于確定哪些實(shí)例存活以及哪些實(shí)例驅(qū)逐。投票結(jié)果類似于集群件投票結(jié)果。結(jié)果,將驅(qū)逐 1 個(gè)或多個(gè)實(shí)例。

實(shí)例警報(bào)日志中的常見消息類似于:

alert log of instance 1:
---------
Mon Dec 07 19:43:05 2011
IPC Send timeout detected.Sender: ospid 26318
Receiver: inst 2 binc 554466600 ospid 29940
IPC Send timeout to 2.0 inc 8 for msg type 65521 from opid 20
Mon Dec 07 19:43:07 2011
Communications reconfiguration: instance_number 2
Mon Dec 07 19:43:07 2011
Trace dumping is performing id=[cdmp_20091207194307]
Waiting for clusterware split-brain resolution
Mon Dec 07 19:53:07 2011
Evicting instance 2 from cluster
Waiting for instances to leave:
2
...
alert log of instance 2:
---------
Mon Dec 07 19:42:18 2011
IPC Send timeout detected. Receiver ospid 29940
Mon Dec 07 19:42:18 2011
Errors in file
/u01/app/oracle/diag/rdbms/bd/BD2/trace/BD2_lmd0_29940.trc:
Trace dumping is performing id=[cdmp_20091207194307]
Mon Dec 07 19:42:20 2011
Waiting for clusterware split-brain resolution
Mon Dec 07 19:44:45 2011
ERROR: LMS0 (ospid: 29942) detects an idle connection to instance 1
Mon Dec 07 19:44:51 2011
ERROR: LMD0 (ospid: 29940) detects an idle connection to instance 1
Mon Dec 07 19:45:38 2011
ERROR: LMS1 (ospid: 29954) detects an idle connection to instance 1
Mon Dec 07 19:52:27 2011
Errors in file
/u01/app/oracle/diag/rdbms/bd/BD2/trace/PVBD2_lmon_29938.trc
(incident=90153):
ORA-29740: evicted by member 0, group incarnation 10
Incident details in:
/u01/app/oracle/diag/rdbms/bd/BD2/incident/incdir_90153/BD2_lmon_29938_i90153.trc

在上面的示例中,實(shí)例 2 LMD0 (pid 29940) 是 IPC 發(fā)送超時(shí)的接收方。?

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2022-10-27 21:32:34

oracle數(shù)據(jù)庫

2021-07-29 06:56:36

分布式系統(tǒng)腦裂

2010-03-01 10:24:20

Oracle RAC

2024-12-19 17:09:55

Redis哨兵模式數(shù)據(jù)庫

2024-04-18 08:00:00

腦裂問題Redis哨兵模式

2019-02-25 08:40:28

Linux磁盤IO

2010-03-04 09:27:00

Oracle RAC

2017-09-02 16:23:45

AWSAZ群集

2025-01-13 00:00:00

配置Redis腦裂

2020-10-27 11:50:53

運(yùn)維Zookeeper腦裂

2019-11-29 11:12:56

Zookeeper腦裂選舉算法

2024-09-29 08:47:55

2021-04-12 19:18:23

NVMe存儲(chǔ)控制器

2009-09-14 16:17:03

什么是LINQ To

2019-07-30 12:28:51

云計(jì)算虛擬化服務(wù)器

2019-07-09 10:24:14

Oracle腳本負(fù)載均衡

2022-07-07 07:51:00

數(shù)據(jù)中心存儲(chǔ)層腦裂

2010-04-12 15:28:38

Oracle RAC

2010-04-22 10:30:11

Oracle RAC

2011-08-04 10:18:45

數(shù)據(jù)驅(qū)動(dòng)編程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)