Oracle RAC(Cluster)的重構(整理)(1)
Oracle Cluster的重構包括兩部分:
一是clusterware層:
所有節點的Clusterware組成一個叢集,並構成一 個叢集成員列表(Cluster membership list)第個節點會分配一個成員ID(Node Id)這些Clusterware 之間互相通訊 以瞭解彼此的狀態, 並從中選出一個節點作為Master Node,Master Node負責管理叢集狀態的 變遷。當有節點加入或離開叢集時,叢集的狀態會發生變遷 ,最終達到一個新的穩定狀態。每個叢集的穩定狀態用一個數值表示,這個數值叫做Cluster Incarnation Number。達到新穩定狀態時,這個數值會改變。
RAC 中的各個例項也構成了 一個例項成員列表 (Instance membership list) , 每個例項也使用Clusterware 層的node id作為身份標 識,這個ID在叢集生命週期內是不會變的。RAC Instance在啟動時會把LMON、DBWR等需要操作共享儲存的程式 作為一個組註冊 到Clusterware中,並從Clusterware獲得node id作為組ID。
RAC集 群與節點叢集是兩個層次的叢集,兩個叢集都 有腦裂、IO隔離等問題。這兩個叢集都有各自的故障檢測機制。如果在RAC這一層檢測到節點故障,RAC叢集會做如下工作
(1)暫停對外服務
(2)RAC通知Clusterware, 並等待Clusterware完成叢集重構 ,達到新的穩態。
(3)Clusterware完成重構後,會通知上層的RAC叢集,RAC叢集收到這個資訊後開始自己的重構。
如下是CSSD的log,主要是Nodeapps類的資源:GSD、ONS、VIP、Listener,當node2加入node1的叢集時:
[ CSSD]2011-07-09 16:34:39.332 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.vip
[ CSSD]2011-07-09 16:34:39.332 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x12) node(1) grock (0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.332 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.335 [118012816] >TRACE: clssgmExitGrock: client 86 (0x8bf9ea8), grock RES ora.node2.vip, member 0
[ CSSD]2011-07-09 16:34:39.479 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.vip
[ CSSD]2011-07-09 16:34:39.479 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x12) node(1) grock (0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.479 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.489 [118012816] >TRACE: clssgmExitGrock: client 87 (0x8bf9ea8), grock RES ora.node2.vip, member 0
[ CSSD]2011-07-09 16:34:39.520 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.vip
[ CSSD]2011-07-09 16:34:39.520 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x12) node(1) grock (0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.520 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:34:39.651 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.gsd new client 0x8c09a20 with con 0x8c0de58, requested num -1
[ CSSD]2011-07-09 16:34:39.652 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.gsd)
[ CSSD]2011-07-09 16:34:39.655 [118012816] >TRACE: clssgmExitGrock: client 94 (0x8c09a20), grock RES ora.node2.gsd, member 0
[ CSSD]2011-07-09 16:34:39.655 [118012816] >TRACE: clssgmRemoveMember: grock(RES ora.node2.gsd) member(0/0x8bf7d08) nodeNum(1) flags(0x12) type(3)
[ CSSD]2011-07-09 16:34:39.779 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.gsd new client 0x8c09a20 with con 0x8c0de58, requested num -1
[ CSSD]2011-07-09 16:34:39.779 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.gsd)
[ CSSD]2011-07-09 16:34:39.799 [118012816] >TRACE: clssgmExitGrock: client 95 (0x8c09a20), grock RES ora.node2.gsd, member 0
[ CSSD]2011-07-09 16:34:39.799 [118012816] >TRACE: clssgmRemoveMember: grock(RES ora.node2.gsd) member(0/0x8bf7d08) nodeNum(1) flags(0x12) type(3)
[ CSSD]2011-07-09 16:34:39.939 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.gsd new client 0x8c09a20 with con 0x8bf7d08, requested num -1
[ CSSD]2011-07-09 16:34:39.939 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.gsd)
[ CSSD]2011-07-09 16:34:39.942 [118012816] >TRACE: clssgmExitGrock: client 96 (0x8c09a20), grock RES ora.node2.gsd, member 0
[ CSSD]2011-07-09 16:34:39.942 [118012816] >TRACE: clssgmRemoveMember: grock(RES ora.node2.gsd) member(0/0x8c0de58) nodeNum(1) flags(0x12) type(3)
[ CSSD]2011-07-09 16:34:39.947 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.gsd new client 0x8c09a20 with con 0x8c0de58, requested num -1
[ CSSD]2011-07-09 16:34:39.947 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.gsd)
[ CSSD]2011-07-09 16:34:40.147 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.ons new client 0x8c09a20 with con 0x8c0de58, requested num -1
[ CSSD]2011-07-09 16:34:40.147 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.ons
[ CSSD]2011-07-09 16:34:40.147 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.ons)
[ CSSD]2011-07-09 16:34:40.161 [118012816] >TRACE: clssgmExitGrock: client 100 (0x8c09a20), grock RES ora.node2.ons, member 0
[ CSSD]2011-07-09 16:34:40.572 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.ons
[ CSSD]2011-07-09 16:34:40.573 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x12) node(1) grock (0x8c0adb0/RES ora.node2.ons)
[ CSSD]2011-07-09 16:34:40.573 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.ons)
[ CSSD]2011-07-09 16:34:40.654 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.ons
[ CSSD]2011-07-09 16:34:40.654 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8c0adb0/RES ora.node2.ons)
[ CSSD]2011-07-09 16:34:51.332 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:34:51.332 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x1) node(1) grock (0x8c17ce8/SRVM.DATABASE.NODEAPPS.node2)
[ CSSD]2011-07-09 16:34:52.464 [118012816] >TRACE: clssgmExitGrock: client 1 (0x8c0b1e8), grock SRVM.DATABASE.NODEAPPS.node2, member 0
[ CSSD]2011-07-09 16:35:08.136 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.LISTENER_NODE2.lsnr
[ CSSD]2011-07-09 16:35:08.139 [118012816] >TRACE: clssgmExitGrock: client 105 (0x8c0b1e8), grock RES ora.node2.LISTENER_NODE2.lsnr, member 0
[ CSSD]2011-07-09 16:35:08.280 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.LISTENER_NODE2.lsnr
[ CSSD]2011-07-09 16:35:08.290 [118012816] >TRACE: clssgmExitGrock: client 106 (0x8c0b1e8), grock RES ora.node2.LISTENER_NODE2.lsnr, member 0
[ CSSD]2011-07-09 16:35:08.293 [118012816] >TRACE: clssgmJoinGrock: grock RES ora.node2.vip new client 0x8c0b1e8 with con 0x8c0d3e0, requested num -1
[ CSSD]2011-07-09 16:35:08.293 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.vip
[ CSSD]2011-07-09 16:35:08.293 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x12 0x12 grock (3/0x8be24c0/RES ora.node2.vip)
[ CSSD]2011-07-09 16:35:08.296 [118012816] >TRACE: clssgmExitGrock: client 107 (0x8c0b1e8), grock RES ora.node2.vip, member 0
[ CSSD]2011-07-09 16:35:08.314 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.LISTENER_NODE2.lsnr
[ CSSD]2011-07-09 16:35:08.327 [118012816] >TRACE: clssgmExitGrock: client 108 (0x8c0b1e8), grock RES ora.node2.LISTENER_NODE2.lsnr, member 0
[ CSSD]2011-07-09 16:35:08.346 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock RES ora.node2.LISTENER_NODE2.lsnr
[ CSSD]2011-07-09 16:35:39.404 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:36:16.854 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:36:52.500 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:37:28.327 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:38:04.017 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x1 0x1 grock (3/0x8c0af88/SRVM.DATABASE.NODEAPP
S.node2)
[ CSSD]2011-07-09 16:38:04.170 [118012816] >TRACE: clssgmExitGrock: client 1 (0x8be0e98), grock SRVM.DATABASE.NODEAPPS.node2, member 0
[ CSSD]2011-07-09 16:38:04.170 [118012816] >TRACE: clssgmRemoveMember: grock(SRVM.DATABASE.NODEAPPS.node2) member(0/0x8be0bf8) nodeNum(1) flags(0x1) typ
e(3)
[ CSSD]2011-07-09 16:38:39.274 [118012816] >TRACE: clssgmJoinGrock: grock SRVM.DATABASE.NODEAPPS.node2 new client 0x8be0bf8 with con 0x8c15920, requeste
d num -1
[ CSSD]2011-07-09 16:38:39.274 [118012816] >TRACE: clssgmAddGrockMember: adding member to grock SRVM.DATABASE.NODEAPPS.node2
[ CSSD]2011-07-09 16:38:39.274 [118012816] >TRACE: clssgmAddMember: granted member(0) flags(0x1) node(1) grock (0x8be25b8/SRVM.DATABASE.NODEAPPS.node2)
[ CSSD]2011-07-09 16:38:39.274 [118012816] >TRACE: clssgmQueueGrockEvent: lockName(SRVM.DATABASE.NODEAPPS.node2) type(2) count (1/1) xwaiters(0) event(1
) to memberNo(0)
[ CSSD]2011-07-09 16:38:39.274 [118012816] >TRACE: clssgmCommonAddMember: Local member(0) node(1) flags 0x1 0x1 grock (3/0x8be25b8/SRVM.DATABASE.NODEAPP
S.node2)
[ CSSD]2011-07-09 16:38:39.341 [118012816] >TRACE: clssgmExitGrock: client 1 (0x8be0bf8), grock SRVM.DATABASE.NODEAPPS.node2, member 0
[ CSSD]2011-07-09 16:38:39.341 [118012816] >TRACE: clssgmRemoveMember: grock(SRVM.DATABASE.NODEAPPS.node2) member(0/0x8bf99d0) nodeNum(1) flags(0x1) typ
e(3)
[ CSSD]2011-07-09 16:38:52.263 [131775376] >TRACE: clssnmConnComplete: properties node node2, number 2, 3,5,6,7,10,13
[ CSSD]2011-07-09 16:38:52.263 [131775376] >TRACE: clssnmConnComplete: node 2, node2, con(0x8bf6d90), probcon((nil)), ninfcon((nil)), node unique 131020
0722, prev unique 0, msg unique 1310200722 node state 0
[ CSSD]2011-07-09 16:38:53.569 [131775376] >TRACE: clssnmHandleJoin: node node2, number 2 JOINING, state 0->1, ninfendp 0x8bf6d90
[ CSSD]2011-07-09 16:38:54.437 [131775376] >TRACE: clssnmUpdateNodeData: node 2 (node2) data length 63 data (ADDRESS=(PROTOCOL=tcp)(DEV=22)(HOST=10.10.1
7.222)(PORT=48719))
[ CSSD]2011-07-09 16:38:54.441 [131775376] >USER: clssnmHandleUpdate: NODE 2 (node2) IS ACTIVE MEMBER OF CLUSTER
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/758322/viewspace-702233/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle RAC(Cluster)的重構(整理)(2)Oracle
- Oracle RAC(Cluster)的重構整理(3)Oracle
- 管理RAC中的OCR(Oracle Cluster Register)Oracle
- RAC重構型別型別
- CLUSTER內部結構的總結(1)
- zt_oracle rac private network cluster interconnectOracle
- Oracle cluster table(1)_概念介紹Oracle
- oracle RAC dbca的時候報錯提示cluster nodes are not accessibleOracle
- oracle 10g rac 程式複習--整理自張曉明的《大話Oracle RAC》Oracle 10g
- Oracle RAC與AIX重啟的關係OracleAI
- 如何檢視Oracle RAC叢集的叢集名稱(CLUSTER NAME)Oracle
- 9207 Patchset does not contain OraCM (Oracle Cluster Manager) for RACAIACMOracle
- RAC加入新節點 - Add Node to Your Oracle RAC 10g Cluster on LinuxOracleLinux
- 14_深入解析Oracle table cluster結構Oracle
- Oracle RAC Cache Fusion 系列十:Oracle RAC Enqueues And Lock Part 1OracleENQ
- 重構入門(1)
- redhat as4 安裝oracle 9204 rac啟動Oracle Cluster Manager報錯!RedhatOracle
- oracle10g rac常用命令整理Oracle
- Oracle RAC實現--Oracle Clusterware, RAC認證第三方認證軟體HACMP,SUN cluster,HPclusterOracleACM
- Oracle RAC實現--Oracle Clusterware, RAC認證第三方認證軟體HACMP,SUN cluster,HPclOracleACM
- oracle中的cluster表Oracle
- ORACLE RAC GUARD架構——RAC GUARD概念和管理Oracle架構
- 【RAC】11gR2 新特性:Oracle Cluster Health Monitor(CHM)簡介Oracle
- 在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1)OracleLinux
- oracle 整理 正規表示式1Oracle
- Removing a Node from a 10gR1 RAC Cluster (Doc ID 269320.1)REM
- oracle簇clusterOracle
- Oracle RAC解除安裝後的重灌重點環節Oracle
- Oracle11g RAC高可用性理論整理Oracle
- ORACLE RAC 日誌結構解析Oracle
- Oracle RAC 併發與架構Oracle架構
- MySQL Cluster研究(1)MySql
- oracle 12C RAC 12.1.0.2 叢集日誌(cluster log)目錄Oracle
- Remove a node from Oracle10g RAC cluster and add back for IBM AIXREMOracleIBMAI
- oracle rac_cssd程式故障重啟相關OracleCSS
- 1. MySQL Galera Cluster全解析 Part 1 Galera Cluster 簡介MySql
- oracle 10g cluster rac vip始終在節點2的問題處理Oracle 10g
- 【EBS】Oracle EBS 之 OM 模組整理(1)Oracle