回到網頁內容 臺灣-繁體中文
HP.com 首頁 產品資訊 支�#169;及驅動程式 解決方案 如何購買
» 聯絡 HP
進階選項
HP.com 首頁
使用 Serviceguard Extension for RAC > 第 2 章. Oracle 10g RAC 的 Serviceguard 配置

以 LVM 建立儲存設備基本架構

» 

技術文件

PDF 格式的完整書籍
» 相關文件
» 回饋意見
內容©韟像B開©l

 » 目錄

 » 索引

除了配置叢集外,您必須建立合適的邏輯容體基本架構,以便從不同的節點存取資料。使用邏輯容體管理員 (Logical Volume Manager,LVM)、Veritas 叢集容體管理員 (Cluster Volume Manager,CVM),或 Veritas 容體管理員 (VERITAS Volume Manager,VxVM) 即可完成此作業。LVM 與 VxVM 配置完成於叢集配置前,而 CVM 配置則完成於叢集配置之後

本節將說明如何建立 LVM 容體群組,以使用 Oracle 資料的相關資訊。配置叢集之前,您必須建立合適的邏輯容體基本架構,以便從不同的節點存取資料。使用邏輯容體管理員即可完成此作業。程序如下:

事件監視服務「HA 磁碟監視程式」提供監視 LVM 磁碟狀況的能力。若要在您的鏡射磁碟使用此監視程式,您應在實體容體群組中配置該磁碟。若需相關資訊,請參閱《《Using HA Monitors》》手冊。

在鏡射磁碟上建立 RAC 容體群組

本節所述的程序使用實體容體群組 (physical volume group) 鏡射獨立的磁碟,以確保每個邏輯容體均鏡射到不同 I/O 匯流排上的磁碟。這種安排稱為嚴格 PVG 鏡射 (PVG-strict mirroring)。假設您的磁碟硬體已配置將作為鏡射複本的磁碟連接到不同匯流排上的每個節點,而不是連接到用於其他 (主要) 複本的匯流排。

若需使用 LVM 的相關資訊,請參閱 HP-UX《《管理系統與工作群組》》手冊。

建立容體群組和邏輯容體

若尚未設定容體群組,請利用下節中的程序。若已配置 LVM,請跳至「安裝 Oracle Real Application Cluster」一節。

選取容體群組的磁碟

取得兩個節點的磁碟清單,並且辨識同一部磁碟在兩個節點上所使用的裝置檔。在各個節點上使用下列命令,列出各系統可使用的磁碟:

# lssf /dev/dsk/*  

下列範例中,我們將使用 /dev/rdsk/c1t2d0/dev/rdsk/c0t2d0,在 ftsys9ftsys10 上,這兩個裝置名稱剛好代表相同的磁碟。若不同的節點使用不同的裝置檔名稱代表相同的磁碟時,必須特別小心裝置在不同節點之間的對應關係。

建立實體容體

在配置節點上 (ftsys9),使用 pvcreate 命令定義作為實體容體的磁碟。您僅需在配置節點上進行這項作業。請使用下列命令為範例配置建立兩個實體容體:

# pvcreate -f /dev/rdsk/c1t2d0 
# pvcreate -f /dev/rdsk/c0t2d0
以嚴格 PVG 鏡射建立容體群組

依照下列步驟在配置節點 (ftsys9) 上建立容體群組。之後,於其他節點上建立相同的容體群組。

  1. 首先,為 vgops 設定群組目錄:

    # mkdir /dev/vg_ops

  2. 接著,在 /dev/vg_ops 目錄中建立名為 group 的控制檔,如下所示:

    # mknod /dev/vg_ops/group c 64 0xhh0000

    主要編號一定是 64,而次要編號為十六進位的格式,如下所示:

    0xhh0000

    在您所建立的容體群組中,hh 必須是獨一無二的。配置好容體群組之後,可使用系統中可使用的下一個十六進位編號。請使用下列命令顯示現有容體群組的清單:

    # ls -l /dev/*/group

  3. 以下列命令建立容體群組並新增實體容體:

    # vgcreate -g bus0 /dev/vg_ops /dev/dsk/c1t2d0

    # vgextend -g bus1 /dev/vg_ops /dev/dsk/c0t2d0

    第一個命令會建立容體群組,並在實體容體群組上增加一個實體容體,稱為 bus0。第二個命令會將第二個磁碟機加入容體群組,並放在一個名為 bus1 的不同實體容體群組上。實體容體群組允許使用磁碟的嚴格 PVG 鏡射和 PV 連結。

  4. 請對其他容體群組重複上述步驟。

以 LVM 命令為 RAC 建立鏡射的邏輯容體

建立容體群組並定義在其中使用的實體容體後,您可以為資料、日誌及控制檔案定義鏡射的邏輯容體。建議您使用 shell 命令集下達以下數節將說明的命令。建立邏輯容體的命令,需視為 RAC redo (重新執行) 日誌檔建立邏輯容體,或為使用 Oracle 資料建立邏輯容體而有些微差異。

為 RAC Redo 日誌及控制檔建立鏡射的邏輯容體

您可選取鏡射一致性回復 (mirror consistency recovery),建立邏輯容體供 redo 日誌及控制檔使用。請與下列範例使用相同的選項:

# lvcreate -m 1 -M n -c y -s g -n redo1.log -L 28 /dev/vg_ops

-m 1 選項指定單一的鏡射;-M n 選項可確保鏡射寫入快取回復設為關閉;
-c y 表示鏡射一致性回復為啟用狀態;-s g 表示鏡射為嚴格 PVG 鏡射,即發生在不同的實體容體群組間;-n redo1.log 選項讓您可指定邏輯容體的名稱,而 -L 28 選項則配置 28 MB。

附註: redo 日誌及控制檔均需使用 -M n-c y 選項。這些選項可讓 redo 日誌檔在系統發生問題後,於 Oracle 回復開始進行前由 SLVM 進行再同步作業。若未正確設定這些選項,則可能無法繼續進行資料庫回復。

若命令成功,系統將會顯示如下的訊息:

Logical volume "/dev/vg_ops/redo1.log" has been successfully created
with character device "/dev/vg_ops/rredo1.log"
Logical volume "/dev/vg_ops/redo1.log" has been successfully extended
附註: 字元裝置檔案名稱 (亦稱為原始邏輯容體名稱) 是 Oracle DBA 在建立 RAC 資料庫時所使用的。

為 RAC 資料檔建立鏡射的邏輯容體

系統毀損後,需重新同步化鏡射的邏輯容體,稱為「resilvering」。

如果 Oracle 未執行鏡射邏輯容體之 RAC 資料檔案的「resilvering」,請選擇「NOMWC」的鏡射一致性規則 (mirror consistency policy)。停用鏡射寫入快取並啟用鏡射一致性回復即可完成此作業。採用「NOMWC」,SLVM 即可執行重新同步化。

請利用與下例相同的選項,建立邏輯容體以做為 Oracle 資料檔使用:

# lvcreate -m 1 -M n -c y -s g -n system.dbf -L 408 /dev/vg_ops

-m 1 選項指定單一的鏡射;-M n 選項可確保鏡射寫入快取回復設為關閉;
-c y 表示鏡射一致性回復為啟用狀態;-s g 表示鏡射為嚴格 PVG 鏡射,即發生在不同的實體容體群組間;-n system.dbf 選項讓您可指定邏輯容體的名稱,而 -L 408 選項則配置 408 MB。

Oracle 若執行鏡射邏輯容體之 RAC 資料檔案的 resilvering,請選擇「NONE」的鏡射一致性規則,以停用鏡射寫入快取和鏡射一致性回復。採用「NONE」,則 SLVM 不會執行重新同步化。

附註: 請聯絡 Oracle 以判定您的 Oracle RAC 版本是否允許「resilvering」,並適當地配置邏輯容體的鏡射一致性回復規則。

請利用與下例相同的選項,建立邏輯容體以做為 Oracle 資料檔使用:

# lvcreate -m 1 -M n -c n -s g -n system.dbf -L 408 \ /dev/vg_ops

-m 1 選項指定單一的鏡射;-M n 選項可確保鏡射寫入快取回復設為關閉;
-c n 表示鏡射一致性回復為停用狀態;-s g 表示鏡射為嚴格 PVG 鏡射,即發生在不同的實體容體群組間;-n system.dbf 選項讓您可指定邏輯容體的名稱,而 -L 408 選項則配置 408 MB。

若命令成功,系統將會顯示如下的訊息:

Logical volume "/dev/vg_ops/system.dbf" has been successfully created
with character device "/dev/vg_ops/rsystem.dbf"
Logical volume "/dev/vg_ops/system.dbf" has been successfully extended
附註: 字元裝置檔案名稱 (亦稱為原始邏輯容體名稱) 是 Oracle DBA 在建立 RAC 資料庫時所使用的。

在磁碟陣列上建立 RAC 容體群組

本節說明的步驟假設您採用 RAID 保護的磁碟陣列,以及 LVM 實體容體連結 (PV 連結),以定義叢集中各個節點連結到陣列上各個邏輯單元的備援資料路徑。

在您的磁碟陣列上,應利用各個節點上備援的 I/O 通道,將它們連接到陣列上各自獨立的控制器,之後就可以定義連接到您在陣列上定義的 LUN 或邏輯磁碟的替代連結。若使用 SAM,請選擇欲配置的磁碟陣列種類,並遵循功能表定義替代連結;若使用 LVM 命令,請於命令行指定連結。

以下範例將說明使用 LVM 命令配置替代連結的方法。範例中假設下列磁碟配置:

8/0.15.0 /dev/dsk/c0t15d0  /* I/O Channel 0 (8/0) SCSI address 15 LUN 0 */
8/0.15.1 /dev/dsk/c0t15d1  /* I/O Channel 0 (8/0) SCSI address 15 LUN 1 */
8/0.15.2 /dev/dsk/c0t15d2  /* I/O Channel 0 (8/0) SCSI address 15 LUN 2 */
8/0.15.3 /dev/dsk/c0t15d3  /* I/O Channel 0 (8/0) SCSI address 15 LUN 3 */
8/0.15.4 /dev/dsk/c0t15d4  /* I/O Channel 0 (8/0) SCSI address 15 LUN 4 */
8/0.15.5 /dev/dsk/c0t15d5  /* I/O Channel 0 (8/0) SCSI address 15 LUN 5 */

10/0.3.0 /dev/dsk/c1t3d0   /* I/O Channel 1 (10/0) SCSI address 3 LUN 0 */
10/0.3.1 /dev/dsk/c1t3d1   /* I/O Channel 1 (10/0) SCSI address 3 LUN 1 */
10/0.3.2 /dev/dsk/c1t3d2   /* I/O Channel 1 (10/0) SCSI address 3 LUN 2 */
10/0.3.3 /dev/dsk/c1t3d3   /* I/O Channel 1 (10/0) SCSI address 3 LUN 3 */
10/0.3.4 /dev/dsk/c1t3d4   /* I/O Channel 1 (10/0) SCSI address 3 LUN 4 */
10/0.3.5 /dev/dsk/c1t3d5   /* I/O Channel 1 (10/0) SCSI address 3 LUN 5 */

假定磁碟陣列已經完成配置,並且當您執行 ioscan 命令時,以下兩個裝置檔均代表同一部 LUN (邏輯磁碟):

/dev/dsk/c0t15d0
/dev/dsk/c1t3d0

使用下列程序為此邏輯磁碟配置容體群組:

  1. 首先,為 vg_ops 設定群組目錄:

    # mkdir /dev/vg_ops 
  2. 接著,在 /dev/vg_ops 目錄中建立名為 group 的控制檔,如下所示:

    # mknod /dev/vg_ops/group c 64 0xhh0000 

    主要編號一定是 64,而次要編號為十六進位的格式,如下所示:

    0xhh0000

    在您所建立的容體群組中,hh 必須是獨一無二的。配置好容體群組之後,可使用系統中可使用的下一個十六進位編號。請使用下列命令顯示現有容體群組的清單:

    # ls -l /dev/*/group 
  3. 在其中一個 LUN 相關的裝置檔上使用 pvcreate 命令,將 LUN 到 LVM 定義為實體容體。

    # pvcreate -f /dev/rdsk/c0t15d0 

    僅需對其中一個 LUN 裝置檔名稱進行這項設定。只有在實體容體先前已經被其他容體群組使用時,才需要使用 -f 選項。

  4. 使用下列命令建立具備兩個連結的容體群組:

    # vgcreate /dev/vg_ops /dev/dsk/c0t15d0 /dev/dsk/c1t3d0 

此時 LVM 會將 /dev/dsk/c0t15d0 代表的 I/O 通道識別為連接磁碟的主要連結;如果主要連結失效,LVM 會自動切換到 /dev/dsk/c1t3d0 所代表的替代 I/O 通道。利用 vgextend 命令為容體群組新增磁碟,為每一個 PV 連結指定適當的實體容體名稱。

重複上述完整步驟建立您需要的個別容體群組。為了簡化系統管理的工作,您可以利用不同的容體群組,分別存放資料與控制檔的日誌。

附註: HP-UX 預設的最大容體群組數量為 10。若要建立 10 個以上的容體群組,就必須增加 maxvgs 系統參數的設定值,再重新建立 HP-UX 核心程式。使用 SAM 並選擇 Kernel Configuration 區域,然後選擇 Configurable
Parameters
。清單上會顯示 Maxvgs。

在磁碟陣列上建立 RAC 的邏輯容體

建立容體群組並新增連接容體群組的 PV 連結後,可定義資料、日誌及控制檔案的邏輯容體。請參考下列範例:

# lvcreate -n ops1log1.log -L 4 /dev/vg_ops
# lvcreate -n opsctl1.ctl -L 4 /dev/vg_ops
# lvcreate -n system.dbf -L 28 /dev/vg_ops
# lvcreate -n opsdata1.dbf -L 1000 /dev/vg_ops

Oracle 示範資料庫檔

Oracle 示範資料庫必須使用下列檔案,您可以在安裝過程中建立示範資料庫。

表 2-1 示範資料庫所需的 Oracle 檔案名稱

邏輯容體名稱

LV 大小 (MB)

原始邏輯容體路徑名稱

Oracle 檔案大小 (MB)*

opsctl1.ctl

118

/dev/vg_ops/ropsctl1.ctl

110

opsctl2.ctl

118/dev/vg_ops/ropsctl2.ctl

110

opsctl3.ctl

118/dev/vg_ops/ropsctl3.ctl

110

ops1log1.log

128/dev/vg_ops/rops1log1.log120
ops1log2.log128/dev/vg_ops/rops1log2.log

120

ops1log3.log

128

/dev/vg_ops/rops1log3.log120
ops2log1.log

128

/dev/vg_ops/rops2log1.log

120

ops2log2.log

128

/dev/vg_ops/rops2log2.log

120

ops2log3.log

128

/dev/vg_ops/rops2log3.log

120

opssystem.dbf

408

/dev/vg_ops/ropssystem.dbf400
opssysaux.dbf

808

/dev/vg_ops/ropssysaux.dbf

800

opstemp.dbf

258

/dev/vg_ops/ropstemp.dbf

250

opsusers.dbf

128

/dev/vg_ops/ropsusers.dbf120
opsdata1.dbf

208

/dev/vg_ops/ropsdata1.dbf

200

opsdata2.dbf

208

/dev/vg_ops/ropsdata2.dbf

200

opsdata3.dbf

208

/dev/vg_ops/ropsdata3.dbf

200

opsspfile1.ora

5

/dev/vg_ops/ropsspfile1.ora

5

pwdfile.ora

5

/dev/vg_ops/rpwdfile.ora

5

opsundotbs1.dbf508/dev/vg_ops/ropsundotbs1.log500
opsundotbs2.dbf508/dev/vg_ops/ropsundotbs2.log500
example1.dbf168/dev/vg_ops/ropsexample1.dbf160

 

由於除了檔案實際存放資料的儲存空間外,Oracle 還需要額外的空間配置給起始檔,所以邏輯容體的容量會大於 Oracle 的檔案容量。

若您想建立示範資料庫,請先建立這些檔案。本表底部的三個邏輯容體以其他資料檔案的形式納入 (您可以視需要建立),可提供適當的大小。若您的命名慣例需要,您可以納入 Oracle SID 和 (或) 資料庫名稱,以辨識不同應用例或不同資料庫的檔案。若要使用 ORACLE_BASE 目錄結構,請建立符號連結,從正確的目錄連至 ORACLE_BASE 檔。範例:

# ln -s /dev/vg_ops/ropsctl1.ctl \ /u01/ORACLE/db001/ctrl01_1.ctl

產生這些檔案以後,將檔案的所有者設為 oracle,群組設為 dba,檔案模式為 660。主要節點現在可使用邏輯容體,而 Oracle DBA 現在可使用原始邏輯容體名稱。

可列印版本
隱私權聲明 使用範圍與著作權聲明
© Hewlett-Packard Development Company, L.P.