RAC筆記-概念-20140701

mahe0207發表於2014-03-20
---IP地址
    公共網路卡 Public NIC      私有網路卡 Private NIC     VIP Virtual IP

---檔案系統
    ASM(Automatic Storage Management)自動儲存管理
    OCFS(Oracle Cluster File System) Oracle提供的開源叢集檔案系統
    NCFS 網路檔案系統
    RAW 裸裝置(raw device)

---叢集軟體
    OCMS(Oracle Management Dervice)
    CRS(Cluster Ready Serice)
    Oracle Clusterware

---系統效能    可伸縮能力Scalability 縱向擴充套件Scale-up 橫向擴充套件Scale-out

    叢集地址 負載均衡器 內部通訊 叢集仲裁
    叢集兩大關鍵特性:可擴充套件性 高可用性;
    兩大核心能力:負載均衡(Load Balance,LB) 故障轉移(Failover)
    叢集分類:高效能運算叢集,負載均衡叢集(LB) 高可用性叢集(HA)

    高可用架構(MAA) 即系查詢(Ad-hoc Query)
    雙機熱備(連線一個共享儲存) 雙機互備 雙機(DataGuard)
    OPS(Oracle Parallel Server) RAC前身
    RAC叢集由儲存層,網路層,叢集件層,應用層組成
    OCM(Oracle Cluster Manager)
    CRS(Cluster Ready Service)

RAC環境下特殊問題:併發控制 健忘症(Amnesia) 腦裂(Split Brain) IO隔離(IO Fencing)
    Cache Fusion Phase
    SRVM(Server Manageability Repository)

Clusterware元件:
    CSS(Cluster Synchronization Service)  通過管理叢集中的節點成員身份完成整個叢集的配置工作,以root身份執行
    CRS(Cluster Ready Service)  負責叢集的高可用性,以root身份執行
    GSD(Global Service Daemon)
    ONS(Oracle Notification Service)
    EVM(Event Management) 負責對外發布CRS生成的事件,以root身份執行
    
    Process Monitor Daemmon   
    RACG

Clusterware後臺程式:
    OCSSD(Oracle Cluster Synchronization Service Daemon) 由init.cssd啟動,init.cssd由系統的init程式啟動。
    init.cssd以root身份執行,但是ocssd是以oracle身份執行。
    init.cssd負責啟動OCSSD OPROCD OCLSOMON三個程式。
    OPROCD(Process Monitor Daemmon)
    OCLSOMON
    CRSD(Cluster Ready Service Daemmon)   以root身份執行
        GSD(Global Service Daemon)
        ONSD(Oracle Notification Service Daemon)
    EVMD(Event Management Daemon)    
    RACGIMON 負責檢查資料庫健康狀態

髒讀(Dirty Read) 不可重複讀(Non Repeatable Read) 幻影讀(Phantom Read)
ITL(Interested Transaction List)
鎖模式:Null Share Exclusive;Sub-Shared(SS,RS,CR) Sub-Exclusive(SX,RX,CR) Shared-sub-exclusive(SSX,SRX,PW)

    
DLM(Distribute Lock Management) 分散式鎖管理器

PCM Non-PCM

GRD(Global Resource Directory)

每個RAC例項後臺程式
    LMSn:是Cache Fusion的主要程式,負責資料塊在例項間的傳遞,對應的服務叫做GCS(Global Cache Serivce)。
                程式名稱最初來源於Lock Manager Service,從Oracle9開始,LMS重新命名為GCS
    LMD:負責Global Enqueue Service(GES)。負責在多個例項間協調對資料塊的訪問順序,保證資料的一致性訪問。
            和LMSn程式的GCS服務還有GRD共同構成最核心的功能Cache Fusion。
    LCK:負責Non-Cache-Fusion資源的同步訪問,每個例項有一個LCK程式。
    LMON:負責叢集重構,GRD恢復等操作,提供的服務叫做Cluster Group Service(CGS)。
    DIAG:監控例項的健康狀態。在例項出現錯誤時收集診斷資料記錄到Alert.log日誌中。
    GSD:負責從客戶端工具,比如srvctl接收使用者命令,為使用者提供管理介面。
    
Cache Fusion(記憶體融合)    全域性排隊服務(GES) 全域性記憶體服務(GCS)

叢集架構按演算法分:Shared-Disk Shared-Nothing

ASM後臺程式
    RBAL:也叫Rebalancer程式,負責規劃ASM磁碟組的Rebalance活動。
    ABRn:RBAL程式的子程式,真正完成Rebalance活動。
    ASMB:作為ASM例項和資料庫例項之間的資訊通道。
    
ASM使用磁碟的兩種方式
    裸裝置(作業系統預設是以塊裝置方式操作磁碟,裸裝置以字元方式操作磁碟)
    ASMLib(允許在塊裝置上建立ASM,但目前Oracle只提供了Linux下的ASMLib)
    
OS Kernel
    major device number Kernel中device driver table的索引,這個表儲存著不同裝置驅動程式。
    minor device number=driver*16+partition number。SCSI裝置的使用者空間檔名是sd driver partition。

/etc/init.d/oracleasm asm配置指令碼
crsctl Clusterware的維護工具
oracle/product/10.2.0/db1/bin/localconfig f負責啟動停止CSS程式

Clusterware命令集
    節點層 oracle/product/oem/crs/olsnodes 顯示叢集節點列表
    網路層 oifcfg 用來定義和修改Oracle叢集需要的網路卡屬性
    叢集層 crsctl 用來檢查CRS程式棧,每個CRS程式的狀態,管理Votedisk,跟蹤CRS程式等
           ocrcheck
           ocrdump
           ocrconfig
    應用層 srvctl 可操作資源:Database,Instance,ASM,Service,Listener,和Node Application(GSD,ONS,VIP)
           onsctl
           crs_stat
    
OCR(Oracle Clusterware Registry) oracle叢集登錄檔    
    預設位置$CRS_HOME/crs/cdata/
    ocrdump 以ASCII的方式列印OCR的內容  ocrcheck 檢查OCR內容的一致性    ocrconfig 維護OCR磁碟
   
Oracle 10 RAC的failover:Client-Side Connect time Failover,TAF(Transparent Application Failover),Service-Side TAF

LoadBalance:
    Connection Balancing:客戶端均衡(Client-Side LB) 伺服器端均衡(Server-Side LB)

Instance Recovery
IO Fencing IO隔離

Past Image是一種RAC環境中髒緩衝塊的狀態,是叢集中不同例項對同一個資料緩衝塊寫而又寫後的間接結果。
簡而言之,Past Image是一種特殊的髒資料塊,它保留了前一次更改後的樣子。
對於同一個block,每一個例項最多隻能有一個Past Image。PI 也稱殘像。 例項間爭奪、修改熱塊很容易觀察到Past Image。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29437301/viewspace-1126269/,如需轉載,請註明出處,否則將追究法律責任。

相關文章