在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1)

jinqibingl發表於2012-10-04

在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1)  

在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1)
(2007-10-16 15:37:29)
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好轉載
var $tag=''; var $tag_code='9a278380bc05bb85a0b45c884ae14459'; var $r_quote_bligid='4cbd76e501000b30'; var $worldcup='0'; var $worldcupball='0'; 分類: oracle_rac


 

目錄


































本指南相關下載:
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好 (適用於 x86 和 x86_64)
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好 (openfiler-2.2-x86-disc1.iso 或 openfiler-2.2-x86_64-disc1.iso
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好
在 Oracle Enterprise Linux 和 iSCSI 上構建您自己的 Oracle RAC 叢集(1) - 軒轅劍 - 摸索著前進總比原地踏步好

 


1. 簡介

熟悉 Oracle 真正應用叢集 (RAC) 10g 技術的最有效方法之一是訪問一個實際的 Oracle RAC 10g 叢集。沒有什麼方法比直接體驗它們能夠更好地理解其優勢了,包括容錯、安全性、負載均衡和可伸縮性。

遺憾的是,對於很多商家而言,典型的生產級 RAC 配置所需的硬體投入使它們無法實現這一目標。一個小型的兩節點叢集可能需要 10,000 美元到 20,000 美元以上。該價格還不包括生產級 RAC 環境的核心(通常是一個儲存區域網),其起價為 10,000 美元。

對於那些沒有大筆現金但希望熟悉 Oracle RAC 10g 的人而言,本指南提供了一種配置 Oracle RAC 10g 第 2 版系統的低成本替代方法,它使用現成的商用元件和可下載的軟體,估計成本在 2,200 美元到 2,600 美元之間。該系統包括一個雙節點叢集(每個節點配置一個處理器),這兩個節點均執行 Oracle Enterprise Linux(Release 4 Update 5)、Oracle10g 第 2 版、OCFS2 和 ASMLib 2.0。Oracle RAC 的所有共享磁碟儲存將基於使用網路儲存伺服器(即 Openfiler 2.2 版)的 。

本文應與 Red Hat Enterprise Linux 一同使用。 如果 Red Hat Enterprise Linux 不穩定,Oracle 的 Enterprise Linux (免費提供)可以實現這一目標,它包括 OCFS2 和 ASMLib 軟體包(不包括 ASMLib 使用者空間庫,它需要單獨下載)。

由 驅動的 是一個基於瀏覽器的免費網路儲存管理實用程式,在單一框架中提供基於檔案的網路連線儲存 (NAS) 和基於塊的儲存區域網 (SAN)。Openfiler 支援 CIFS、NFS、HTTP/DAV 和 FTP,但是,我們僅使用它的 iSCSI 功能為 Oracle10g RAC 需要的共享儲存元件實現低成本的 SAN。我們透過它的 USB 2.0 介面將一個 500GB 的外接硬碟驅動器連線到網路儲存伺服器(在本文中,有時稱為 Openfiler 伺服器)。Openfiler 伺服器將配置為使用該磁碟進行基於 iSCSI 的儲存,並且將在 Oracle10g RAC 配置中用於儲存 Oracle 叢集件所需的共享檔案以及所有 Oracle ASM 卷。

注意:本文僅供教學使用,因此設定很簡單,僅用於演示想法和概念。例如,僅在一個物理磁碟上設定了磁碟映象,而實際上,至少應該在兩個物理驅動器上設定磁碟映象。

這不是構建低成本 Oracle RAC 10g 系統的唯一方法。我曾使用過其他基於 SCIS 部署共享儲存部件的解決方案。在某些情況下,SCSI 的成本會高於本文所描述的實現的成本,低成本 SCSI 配置將包括:


SCSI 控制器:兩個 SCSI 控制器,單價從 20 美元 (Adaptec AHA-2940UW) 到 220 美元 (Adaptec 39320A-R)
內含 SCSI:70 美元 - (包含 1 個 Bay 3.5英寸 U320 SCSI 驅動器盒)
SCSI 硬碟驅動器:140 美元 - (36GB 15K 68p U320 SCSI 硬碟驅動器)
SCSI 電纜:兩根 SCSI 電纜,每根 20 美元(3英尺外接 HD68 到 HD68 U320 線纜)

注意,某些主機板可能已包含內建的 SCSI 控制器。

以前的 Oracle9i 和 Oracle 10g 第 1 版指南使用原始分割槽在共享的儲存裝置上儲存檔案,但此處我們將利用 Oracle 叢集檔案系統第 2 版 (OCFS2) 和 Oracle 自動儲存管理 (ASM) 特性。兩個 Oracle RAC 節點配置如下:

Oracle 資料庫檔案
RAC 節點名 例項名 資料庫名 $ORACLE_BASE 用於儲存 DB 檔案的檔案系統/卷管理器
linux1 orcl1 orcl /u01/app/oracle ASM
linux2 orcl2 orcl /u01/app/oracle ASM
Oracle 叢集件共享檔案
檔案型別 檔名 iSCSI 卷名 掛載點 檔案系統
Oracle Cluster Registry /u02/oradata/orcl/OCRFile crs /u02/oradata/orcl OCFS2
CRS 表決磁碟 /u02/oradata/orcl/CSSFile crs /u02/oradata/orcl OCFS2

注意,在 Oracle 資料庫 10g 第 2 版 (10.2) 中,叢集就緒服務(即 CRS)現在稱作 Oracle 叢集件。

自 Oracle 資料庫 10g 第 2 版 (10.2) 開始,Oracle 叢集件應安裝在不針對版本的 Oracle 叢集件主目錄中。這是對最佳靈活體系結構 (OFA) 規則所作的更改。不要將 Oracle 叢集件安裝到針對版本的 Oracle 主目錄掛載點(如 /u01/app/oracle/product/10.2.0/...),因為 Oracle 叢集件的後續版本將覆蓋同一路徑中的 Oracle 叢集件安裝程式。此外,如果 Oracle 叢集件 10g 第 2 版 (10.2) 檢測到現有的 Oracle 叢集就緒服務安裝,它將覆蓋同一路徑中的現有安裝。

Oracle 叢集件軟體將安裝到構成該 RAC 叢集的兩個節點的 /u01/app/oracle/product/crs 目錄中。但是,叢集件軟體要求與叢集中的兩個節點共享它的兩個檔案:即“Oracle 叢集登錄檔 (OCR)”檔案和“表決磁碟”(Voting Disk) 檔案。這兩個檔案將安裝到使用 Oracle 叢集檔案系統第 2 版 (OCFS2) 的共享儲存裝置中。使用者可以(但 Oracle 不建議)使用裸裝置儲存這些檔案,但不能使用 ASM 儲存這兩個叢集件檔案。

Oracle 10g 第 2 版資料庫軟體將安裝到構成該 RAC 叢集的兩個節點的單獨 Oracle 主目錄中,該目錄名為 /u01/app/oracle/product/10.2.0/db_1。所有 Oracle 物理資料庫檔案(資料、聯機重做日誌、控制檔案、歸檔重做日誌)將安裝到由自動儲存管理 (ASM) 管理的共享捲上。(使用者可以將 Oracle 資料庫檔案輕鬆地儲存到 OCFS2。而使用 ASM 使本文可以更有趣!)

注意:本文僅作為絕對不可替代的文件。此處唯一的例外是供應商硬體的選擇(即:計算機、網路裝置和外接硬碟驅動器)。確保您從供應商處購買的硬體在 Red Hat Linux 4 上受支援。

如果您要尋找一個使用 FireWire 的帶 RHEL 4 的 Oracle RAC 10g 第 2 版示例,請。

如果您要尋找一個帶 RHEL 3 上的 Oracle RAC 10g 第 1 版示例,請。

要獲得以前釋出的本指南的 Oracle9i RAC 版本,。

 


2. Oracle RAC 10g 概述

隨 Oracle9i 一同推出的 Oracle RAC 是 Oracle 並行伺服器 (OPS) 的後續版本。RAC 允許多個例項同時訪問同一資料庫(儲存)。透過允許系統進行擴充套件,RAC 提供容錯、負載均衡和效能優勢。同時,由於所有節點都訪問同一資料庫,因此一個例項出現故障不會導致無法訪問資料庫。

Oracle10g RAC 的核心是共享磁碟子系統。叢集中的所有節點必須能夠訪問叢集中所有節點的所有資料、重做日誌檔案、控制檔案和引數檔案。為了使所有節點都能夠訪問資料庫,資料磁碟必須全域性可用。每個節點都擁有自己的重做日誌檔案和 UNDO 表空間,而其他節點必須能夠訪問這些檔案(和共享的控制檔案),以便在系統故障時恢復該節點。

Oracle RAC 與 OPS 之間的最大區別在於增加了快取記憶體融合。使用 OPS 時,從一個節點到另一個節點的資料請求需要首先將資料寫到磁碟,然後請求節點才能讀取該資料。而使用快取記憶體融合,資料沿著使用複雜鎖定演算法的高速互連鏈路傳遞。

不是所有的叢集解決方案都使用共享儲存。一些廠商使用一種稱為聯合叢集 的方法。使用這種方法時,資料分佈在多臺計算機中,而不是由所有計算機共享。但是,在使用 Oracle10g RAC 時,多個節點將使用一組磁碟來儲存資料。利用 Oracle10g RAC,資料檔案、重做日誌檔案、控制檔案和歸檔日誌檔案都儲存在原始磁碟裝置的共享儲存、NAS、ASM 或叢集檔案系統中。Oracle 的叢集方法利用了叢集中所有節點的集體處理能力,同時提供了故障切換安全性。

Dell、IBM 和 HP 等廠商提供了預先配置的面向生產環境的 Oracle10g RAC 解決方案。但是,本文將集中討論如何使用 Linux 伺服器和低成本的共享磁碟解決方案 iSCSI 來整合自己的 Oracle10g RAC 環境進行開發和測試。

有關 Oracle RAC 的更多背景知識,請訪問 OTN 上的 。

 


3. 共享儲存概述

現在,光纖通道是最流行的共享儲存解決方案之一。前面曾提到過,光纖通道是一種高速序列傳輸介面,用於在點到點 (FC-P2P)、仲裁環路 (FC-AL) 或交換式拓撲結構 (FC-SW) 中連線系統與儲存裝置。光纖通道支援的協議包括 SCSI 和 IP。光纖通道配置最多可以支援 127 個節點,每個方向上最高可以實現 2.12 GB 的吞吐量,預期可達到 4.25 GB。

但是,光纖通道的價格很昂貴。單是光纖通道交換機的起價就可能需要約 1,000 美元。這還不包括光纖通道儲存陣列和高階驅動器,一個 36GB 驅動器的價格可高達約 300 美元。典型的光纖通道安裝包括用於伺服器的光纖通道卡。基本安裝的費用為大約 10,000 美元,還不包括構成叢集的伺服器的成本。

光纖通道的一種較為便宜的替代方法是 SCSI。SCSI 技術提供了可接受的共享儲存效能。對於那些習慣了基於 GPL 的 Linux 價格的管理員和開發人員來說,即使是 SCSI(一個雙節點叢集的價格在 2,000 美元到 5,000 美元左右)也可能超出預算。

另一種流行的解決方案是基於 NAS 的 Sun NFS(網路檔案系統)。只有在您使用網路裝置或類似的裝置時,它才可以用於共享儲存。具體來說就是,您需要擁有能夠保證在 NFS 上進行直接 I/O、將 TCP 作為傳輸協議並且讀/寫塊大小為 32K 的伺服器。

本文將使用的共享儲存基於使用網路儲存伺服器(隨 Openfiler 安裝)的 iSCSI 技術。該解決方案提供了一個低成本的光纖通道替代方案,只用於測試和教學目的。考慮到方案中使用低端硬體,因此它不適用於生產環境。

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

相關文章