1. 程式人生 > >Oracle RAC體系結構

Oracle RAC體系結構

系統故障轉移共有3種一般方法。按照可用性的升高順序,依次為無故障轉移、冷故障轉移和熱故障轉移。
Oracle RAC在本質上是為多臺伺服器提供對同一資料副本進行一致性訪問的能力。
儘管Oracle RAC能夠很好地進行伸縮,但水平可伸縮性也有一個上限。一般來說,應用程式的可伸縮性取決於這個應用程式在單個例項上的工作狀況。如果這個應用程式執行的SQL語言是高效的,使用的資源數量合理,那麼通常可以認為它能很好地伸縮,相反,它還會使問題放大,使情況變得更糟。這一點也適用於Oracle RAC或任意其他可伸縮性解決方案。因此,在使用叢集進行擴充套件之前,需要確保進行了應用程式級別的調優以清除瓶頸。
Oracle RAC允許多個例項訪問同一個資料庫,
從Oracle 11g R2開始,Oracle叢集件棧被稱為"Oracle Grid Infrastructure"
Oracle RAC的主要元件包括:
共享磁碟系統,Oracle叢集件,叢集互聯,Oracle核心元件
可伸縮共享儲存是Oracle RAC環境中的一個關鍵元件。傳統上,使用主機本地的SCSI或SATA介面將儲存裝置連線到各個伺服器。今天,更靈活的儲存裝置已經很流行了,可以使用常規的乙太網,通過儲存區域網路(SAN)或網路連線儲存(NAS)來訪問。這些新的儲存選項使多臺伺服器能夠通過一個網路訪問同一組磁碟,簡化了在任意分散式環境中提供儲存的過程。
在共享儲存中,資料庫檔案應當能提供所有節點平等地併發訪問。一般的檔案系統不允許在一個以上的系統中安裝磁碟。依賴於單一節點,而且這個節點可能成為單一故障點(SPOF),所以它是對高可用性(HA)體系結構的另一個威脅。
主要有3種方法可以提供RAC所需要的共享儲存:
原始卷
叢集檔案系統
自動儲存管理(ASM):ASM是為Oracle資料庫檔案準備的一種可移植、專用、優化的叢集檔案系統。
"Oracle叢集件"是可移植軟體。它由幾個後臺程序組成,這些程序執行不同的功能,用以推動叢集操作。
Oracle叢集件由叢集就緒服務(CRS)使用"Oracle叢集登錄檔"和表決磁碟進行管理,OCR記錄和維持叢集及節點的成員資格資訊,表決器在通訊故障時充當一個仲裁者。在叢集執行期間,來自所有節點的一致性心跳資訊都會發送給表決磁碟。
構成Oracle叢集件的後臺程序和服務是CRSd(CRS守護程序)、OCSSd(Oracle叢集同步服務守護程序)、OPROCd(程序監控器守護程序,在11g R2版本中廢棄)、EVMd(事件卷管理器守護程序)和ONS(Oracle通知服務)。


Oracle 10g引入了一個名為"叢集VIP"的新功能,叢集VIP就是一個叢集虛擬IP地址,外部世界將使用這個IP地址連線到資料庫。這個IP地址應當不同於叢集中的IP地址集。
應用程式VIP是一種用於管理網路IP地址的叢集資源。如果一個應用程式依賴於應用程式VIP(AVIP),只要有一個節點停機,應用程式VIP就會故障轉移到仍在正常執行的節點,並在這個節點上重新啟動此應用程式程序。