Oracle中心にIT全般の技術情報を気が向くままに書いています。他にLinux、仮想化技術(VMWare)やトラブルに役立つ情報などがあります。

スポンサーサイトRAC構築 10gR2 on Oracle Linux5.2[VMWare] (7)共有ディスク設定(RACサーバ1)


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
(7) 共有ディスク設定(RACサーバ1)

【RAC構築の流れ】
(1) RAC構築の全体設計
(2) VMWareインストール
(3) VMWare仮想マシン追加(RACサーバ1)
(4) Oracle Enterprise Linuxインストール(RACサーバ1)
(5) 追加モジュールインストール(RACサーバ1)
(6) VMWare共有ディスク追加(RACサーバ1)
(7) 共有ディスク設定(RACサーバ1)(今回の記事)
(8) 自動時刻合わせ設定(RACサーバ1)
(9) インストール事前環境設定(RACサーバ1)
(10) RACサーバ2の作成
(11) SSH環境設定
(12) Oracle Clusterwareインストール事前検証
(13) Oracle Clusterwareインストール
(14) RACインストール


久しぶりのブログ更新です。
10日ぶり位になります。

Oracle Enterprise Linux 5における共有ディスク設定を行います。
(最終的に共有ディスクになるだけで、本来は共有ディスク用の設定という訳では無いですが)

特に、Oracle Enterprise Linux 4の時と、ブロックデバイスとキャラクタデバイスのマッピング方法が異なりますので注意が必要です。
これについては以下のサイトを参考にさせていただきました。
http://www.insight-tec.com/mailmagazine/ora3/vol368.html

しかし、Oracle Databaseリリース・ノート 10gリリース2(10.2) for Linux x86の「4.13.1 デバイス・ネーミングの永続的な変更の概要」に記載されている内容が気になりました。
Linux2.6カーネルではRAWデバイスはサポートされなくなり、ブロックデバイスに対する0_DIRECTを使用した直接I/Oになると書いてあります。
今回はこの部分に関する検証は行いませんが、気にしておいた方が良いかもしれません。

【共有ディスク設計】
No.ディスクの種類ブロックデバイスキャラクタデバイス
1OCRディスク1 /dev/sdb1/dev/raw/raw1
2OCRディスク2 /dev/sdc1/dev/raw/raw2
3投票ディスク1/dev/sdd1/dev/raw/raw3
4投票ディスク2/dev/sde1/dev/raw/raw4
5投票ディスク3/dev/sdf1/dev/raw/raw5
6ASMディスク1/dev/sdg/dev/raw/raw6
7ASMディスク2/dev/sdg/dev/raw/raw7
8ASMディスク3/dev/sdh/dev/raw/raw8

【手順一覧】
1.fdisk設定
2.RAWデバイス設定
3.RAWデバイスフォーマット

【詳細手順】
1.fdisk設定
現在の状態を確認します。
[root@rac01 ~]# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2610    20860402+  8e  Linux LVM

Disk /dev/sdb: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

ディスク /dev/sdb は正常な領域テーブルを含んでいません

Disk /dev/sdc: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

ディスク /dev/sdc は正常な領域テーブルを含んでいません

Disk /dev/sdd: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

ディスク /dev/sdd は正常な領域テーブルを含んでいません

Disk /dev/sde: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

ディスク /dev/sde は正常な領域テーブルを含んでいません

Disk /dev/sdf: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

ディスク /dev/sdf は正常な領域テーブルを含んでいません

Disk /dev/sdg: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdg は正常な領域テーブルを含んでいません

Disk /dev/sdh: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdh は正常な領域テーブルを含んでいません

Disk /dev/sdi: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdi は正常な領域テーブルを含んでいません
OCR用および投票ディスクの領域(sdb~sdf)についてfdiskの設定を行います。
ASM用領域(sdg~sdi)については必要ありません。
[root@rac01 ~]# fdisk /dev/sdb
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-204, default 204):
Using default value 204

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。
[root@rac01 ~]# fdisk /dev/sdc
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-204, default 204):
Using default value 204

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。
[root@rac01 ~]# fdisk /dev/sdd
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-204, default 204):
Using default value 204

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。
[root@rac01 ~]# fdisk /dev/sde
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-204, default 204):
Using default value 204

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。
[root@rac01 ~]# fdisk /dev/sdf
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-204, default 1):
Using default value 1
終点 シリンダ または +サイズ または +サイズM または +サイズK (1-204, default 204):
Using default value 204

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。
ディスクを同期させます。
再度、fdisk -lを実行し、設定した結果を確認します。
[root@rac01 ~]# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        2610    20860402+  8e  Linux LVM

Disk /dev/sdb: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         204      208880   83  Linux

Disk /dev/sdc: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sdc1               1         204      208880   83  Linux

Disk /dev/sdd: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sdd1               1         204      208880   83  Linux

Disk /dev/sde: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sde1               1         204      208880   83  Linux

Disk /dev/sdf: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sdf1               1         204      208880   83  Linux

Disk /dev/sdg: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdg は正常な領域テーブルを含んでいません

Disk /dev/sdh: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdh は正常な領域テーブルを含んでいません

Disk /dev/sdi: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

ディスク /dev/sdi は正常な領域テーブルを含んでいません
OCR用および投票ディスクの領域(sdb~sdf)について、設定が正常に行われていることがわかります。
2.RAWデバイス設定
ロックデバイスとキャラクタデバイスのマッピング設定を行い、再起動後も設定が保持されるようにします。
「/etc/udev/rules.d/60-raw.rules」ファイルに以下の設定を追記します。
# 10g RAC MAPPING
# OCR Disks
ACTION=="add" KERNEL=="sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add" KERNEL=="sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"

# Voting Disks
ACTION=="add" KERNEL=="sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add" KERNEL=="sde1",RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add" KERNEL=="sdf1",RUN+="/bin/raw /dev/raw/raw5 %N"

# ASM Disks
ACTION=="add" KERNEL=="sdg",RUN+="/bin/raw /dev/raw/raw6 %N"
ACTION=="add" KERNEL=="sdh",RUN+="/bin/raw /dev/raw/raw7 %N"
ACTION=="add" KERNEL=="sdi",RUN+="/bin/raw /dev/raw/raw8 %N"
各デバイスのパーミッション設定を行います。
これも再起動後にも設定が保持される必要があります。 「/etc/rc.local」ファイルに以下の設定を追記します。
# 10g RAC Settings
# OCR Disks
chown root:oinstall /dev/raw/raw[1-2]
chmod 640 /dev/raw/raw[1-2]

# Voting Disks
chown oracle:oinstall /dev/raw/raw[3-5]
chmod 640 /dev/raw/raw[3-5]

# ASM Disks
chown oracle:dba /dev/raw/raw[6-8]
chmod 660 /dev/raw/raw[6-8]
再起動を実行し、サーバ起動後、以下のようにしてRAWデバイスのパーミッションが正常に設定されていることを確認します。
[root@rac01 ~]# ls -l /dev/raw/raw*
crw-r----- 1 root   oinstall 162, 1  8月 13 22:55 /dev/raw/raw1
crw-r----- 1 root   oinstall 162, 2  8月 13 22:55 /dev/raw/raw2
crw-r----- 1 oracle oinstall 162, 3  8月 13 22:55 /dev/raw/raw3
crw-r----- 1 oracle oinstall 162, 4  8月 13 22:55 /dev/raw/raw4
crw-r----- 1 oracle oinstall 162, 5  8月 13 22:55 /dev/raw/raw5
crw-rw---- 1 oracle dba      162, 6  8月 13 22:56 /dev/raw/raw6
crw-rw---- 1 oracle dba      162, 7  8月 13 22:56 /dev/raw/raw7
crw-rw---- 1 oracle dba      162, 8  8月 13 22:56 /dev/raw/raw8
3.RAWデバイスフォーマット
念の為、RAWデバイスのフォーマットを行います。
フォーマットの対象は、OCR用、投票ディスク用、ASM用のディスク領域(raw1~raw8)となります。
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw1 bs=1024k
dd: writing `/dev/raw/raw1': デバイスに空き領域がありません
204+0 records in
203+0 records out
213893120 bytes (214 MB) copied, 2.19395 seconds, 97.5 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw2 bs=1024k
dd: writing `/dev/raw/raw2': デバイスに空き領域がありません
204+0 records in
203+0 records out
213893120 bytes (214 MB) copied, 2.1633 seconds, 98.9 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw3 bs=1024k
dd: writing `/dev/raw/raw3': デバイスに空き領域がありません
204+0 records in
203+0 records out
213893120 bytes (214 MB) copied, 2.13891 seconds, 100 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw4 bs=1024k
dd: writing `/dev/raw/raw4': デバイスに空き領域がありません
204+0 records in
203+0 records out
213893120 bytes (214 MB) copied, 2.16828 seconds, 98.6 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw5 bs=1024k
dd: writing `/dev/raw/raw5': デバイスに空き領域がありません
204+0 records in
203+0 records out
213893120 bytes (214 MB) copied, 2.28482 seconds, 93.6 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw6 bs=1024k
dd: writing `/dev/raw/raw6': デバイスに空き領域がありません
1025+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 11.0796 seconds, 96.9 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw7 bs=1024k
dd: writing `/dev/raw/raw7': デバイスに空き領域がありません
1025+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 10.7176 seconds, 100 MB/s
[root@rac01 ~]# dd if=/dev/zero of=/dev/raw/raw8 bs=1024k
dd: writing `/dev/raw/raw8': デバイスに空き領域がありません
1025+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 11.4447 seconds, 93.8 MB/s

以上で共有ディスクの設定は完了しました。
次回は、RACをインストールする上で重要な(特にVMWareでは)サーバの自動時刻合わせ設定ついて書きたいと思います。




以上です。




トラックバックURL

この記事にトラックバックする(FC2ブログユーザー)



前ページへ:RAC構築 10gR2 on Oracle Linux5.2[VMWare] (6)VMWare共有ディスク追加(RACサーバ1)
次ページへ:RAC構築 10gR2 on Oracle Linux5.2[VMWare] (8)自動時刻合わせ設定

ページのトップへ

必ずお読みください

本ブログ記事をご利用になって生じたいかなる損害についても当方は一切責任を負いません。
ご利用は自己責任でお願いします。(^―^)

広 告





ブログランキング/その他


ビジネスブログ100選

ブログランキング・にほんブログ村へ
blogramで人気ブログを分析




最新トラックバック


RSSリンクの表示

QRコード

QR

アクセスカウンター

ユニーク:
トータル:


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。