資源描述:
《oracle rac集群體系結構》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、OracleRAC集群體系結構?一、Oracle集群體系結構OracleRAC,全稱是OracleRealApplicationCluster,即真正的應用集群,是oracle提供的一個并行集群系統,整個集群系統由OracleClusterware(集群就緒軟件)和RealApplicationClusters(RAC)兩大部分組成。?oracleRAC的實質是位于不同操作系統的Oracle實例節(jié)點同時訪問同一個Oracle數據庫,每個節(jié)點間通過私有網絡進行通信,互相監(jiān)控節(jié)點的運行狀態(tài),oracle數據庫所有的數據文件、聯機日志文件、控制文件等均
2、放在集群的共享存儲設備上,而共享存儲設備可以是RAW、ASM、OCFS2等,所有集群節(jié)點可以同時讀寫共享存儲。OracleRAC的基本拓撲結構如下所示:?由拓撲結構可知:一個OracleRac數據庫有多個服務器節(jié)點組成,每個服務器節(jié)點上都有自己獨立的OS、ClusterWare、oracleRac數據庫程序等,并且每個節(jié)點都有自己的網絡監(jiān)聽器。ClusterWare是一個集群軟件,主要用于集群系統管理,oracleRac數據庫程序用于提供oracle實例進程,以供客戶端訪問集群系統,監(jiān)聽服務主要用于監(jiān)控自己的網絡端口信息,所有的服務和程序通過操作
3、系統都去訪問一個共享存儲,最終完成數據的讀寫。共享存儲的實現方式有很多種,可以通過使用自動存儲管理(ASM)、Oracle集群文件系統(OCFS)、裸設備(Raw)、網絡區(qū)域存儲(NAS)等來保證整個集群系統數據的一致性。從Oracle10g起,Oracle提供了自己的集群軟件,即Oracleclusterware,它通過CRS(即ClusterReadyServices)來實現,這個軟件是安裝oraclerac的前提,也是RAC環(huán)境穩(wěn)定運行的基礎,在oracle10g之前的版本,安裝RAC時必須借助與第三方的集群軟件,而在oracle10g以后
4、,安裝oraclerac時,可以用oracle自帶的集群軟件,也可以使用經過RAC認證的第三方集群軟件來代替。從oracle的運行機制來說,集群中每臺服務器就是一個oracle實例,多個oracle實例對應同一個oracle數據庫,組成了oracle數據庫集群。請看下圖:?從圖中可以看出,運行在兩個節(jié)點上的數據庫實例訪問同一個RAC數據庫,并且兩個節(jié)點的本地磁盤僅用來存放oracle安裝程序和ClusterWare軟件,而在共享存儲上,存放了oracle的數據文件、控制文件、聯機日志文件、歸檔日志文件等,這是安裝oracleRac時的一種數據存儲
5、分配方式,其實,RAC提供了多種數據存儲方式,這個將在下面進行獨立介紹。??二、OracleClusterware體系結構與進程介紹?2.1、OracleClusterware簡介ClusterReadyServices,簡稱CRS,是oracle開發(fā)的一個集群軟件,與其它集群軟件類似,CRS主要完成集群成員管理、心跳監(jiān)控、故障切換等功能,CRS要求每個集群節(jié)點的操作系統必須相同,這樣,通過CRS將多個節(jié)點的操作系統綁定到了一起,客戶端對集群的訪問,就像訪問一臺服務器一樣。CRS主要有兩個集群套件組成,分別是votingdisk和OracleCl
6、usterRegistry。votingdisk,即為表決磁盤,集群中每個節(jié)點定期評估自身的健康情況,然后會把它的狀態(tài)信息放入到表決磁盤上。并且節(jié)點間也會互相查看其運行狀態(tài),并把信息傳遞給其他節(jié)點進而寫入表決磁盤。當集群節(jié)點發(fā)生故障時,還可以通過表決磁盤進行投票仲裁等,因此,表決磁盤必須放在共享存儲設備上。以保證每個節(jié)點都能訪問到。表決磁盤可以是一個裸磁盤分區(qū),也可以是一個獨立的文件。由于它僅記錄節(jié)點運行信息,磁盤大小一般在10-20M左右即可。OracleClusterRegistry,簡稱OCR,即集群注冊服務,OCR主要用于記錄RAC中集群
7、和數據庫的配置信息。這些信息包括了集群節(jié)點的列表、集群數據庫實例到節(jié)點的映射以及CRS應用程序資源信息。CRS使用兩種心跳設備來驗證節(jié)點成員的狀態(tài),保證集群的完整性:一個是表決磁盤,集群同步服務進程每隔幾秒鐘都會向表決磁盤寫入一條心跳信息,集群通過表決磁盤即可驗證節(jié)點的狀態(tài),如果某個節(jié)點在指定的最大時間段內沒有向表決磁盤寫入信息,集群就認為此節(jié)點失效了,進而執(zhí)行故障切換。另一個心跳是節(jié)點間私有以太網的心跳,通過這個心跳機制可以判斷節(jié)點間是否出現了網絡故障。兩種心跳機制的結合,有效的增加了集群的可靠性。另外,CRS建議用于內部通訊的私有以太網心跳必
8、須與用于RAC節(jié)點間通訊的網絡分開,也就是不能在同一網絡中,如果RAC節(jié)點間通訊的網絡與私有以太網心跳在同一個網絡內,那么,必須保證該網