« Oracle11g R2 EE 11.2.0.1.0 for Solaris10 (x86_64) on VirtualBox 3.2.12 for MacOS X | トップページ | VirtualBox de Oracle11g R2 RAC #8 »

2010年12月18日 (土) / Author : Hiroshi Sekiguchi.

VirtualBox de Oracle11g R2 RAC #7

VirtualBox de Oracle11g R2 RACのつづきです。

前回に引き続き、Oracle RACの各ノードでiSCSIボリュームの構成です。前回は各ノードからiSCSI targetへ自動接続するまででした。
今回は、そのつづき。各ノードで接続したiSCSI targetにローカルデバイス名をマッピングします。
以前行ったCentOS5.2(x86)内容と同じ手順でのでそちらの記事も参考してくださいね。(今回はマッピングするiSCSI targetが1つ多いだけです!)

  1. ハードウェア構成(VMなのでVMの構成も含めて)、ソフトウェア構成など
  2. Linux (CentOS 5.5 x86_64)のインストール
  3. Openfiler2.3 x86のインストール
  4. Openfiler2.3 x86によるiSCSIボリュームの構成
  5. Oracle RACノードでのiSCSIボリュームの構成 その1、その2
  6. Oracle所有者と関連ディレクトリの作成及び環境変数の設定
  7. Oracle向けLinuxサーバーの構成(カーネルパラメータの設定)
  8. Oracle RACノード間リモートアクセスの構成とntpの構成
    sshの構成は念のために行った、多分、実施しなくても大丈夫だと思うけど…ついでなので、ちょいと意地悪な実験をしてみた)
  9. ローカルネームサーバの構成
  10. Oracle RACノード構成ファイルの確認
  11. Oracle Automatic Storage Management(ASMLib 2.0.5 x84_64)のインストール及び構成
  12. Oracle11g R2 11.2.0.1.0 RACインストール事前作業
  13. Oracle11g R2 11.2.0.1.0 Grid Infrastractureのインストール
  14. Oracle11g R2 11.2.0.1.0 Database softwareのインストール
  15. Oracle11g R2 11.2.0.1.0 examplesのインストール
  16. Oracle Cluster databaseの作成
  17. Net Serviceの確認
  18. Oralce Grid InsfastructureとDatabase構成の確認
  19. Clusterの開始と停止の確認
  20. 簡単なTransparent Application Failover (TAF)の確認

・ローカルデバイス名の作成
以前の記事も参考に。
iSCSIでは再起動/再接続する度にiscsi-targetにマッピングされるSCSIデバイス名が変わってしまうことがあるので、udevでマッピングするデバイス名を固定化します。

前回までの操作がうまく行っていれば、デバイス名のマッピングは異なると思いますがRACを構成する各ノードで以下のようになっているはず。(以下、discus164での例)

[root@discus164 ˜]# (cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm1-lun-0 -> ../../sdb
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm2-lun-0 -> ../../sde
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm3-lun-0 -> ../../sdc
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm4-lun-0 -> ../../sdf
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:crs1-lun-0 -> ../../sdd
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:crs2-lun-0 -> ../../sdg
[root@discus164 ˜]#

udevを利用してデバイス名をiscsi-targetに固定割当する。(RACの全ノードのrootユーザで実施)

[root@discus164 ˜]# 
[root@discus164 ˜]# cat /etc/udev/rules.d/55-openiscsi.rules
KERNEL=="sd*", BUS=="scsi", PROGRAM="/etc/udev/scripts/iscsidev.sh %b",SYMLINK+="iscsi/%c/part%n"
[root@discus164 ˜]#
[root@discus164 ˜]#
[root@discus164 ˜]#
[root@discus164 ˜]# cd /etc/udev/scripts
[root@discus164 scripts]# cat iscsidev.sh
#!/bin/sh

# FILE: /etc/udev/scripts/iscsidev.sh

BUS=${1}
HOST=${BUS%%:*}
[ -e /sys/class/iscsi_host ] || exit 1

file="/sys/class/iscsi_host/host${HOST}/device/session*/iscsi_session*/targetname"

target_name=$(cat ${file})

# This is not an open-scsi drive
if [ -z "${target_name}" ]; then
exit 1
fi

echo "${target_name##*.}"
[root@discus164 scripts]#
[root@discus164 scripts]# chmod 755 iscsidev.sh
[root@discus164 scripts]#
[root@discus164 scripts]# cd
[root@discus164 ˜]#
[root@discus164 ˜]#
[root@discus164 ˜]# service iscsi stop
Logging out of session [sid: 1, target: iqn.2006-01.com.openfiler:asm1, portal: 192.168.2.92,3260]
Logging out of session [sid: 2, target: iqn.2006-01.com.openfiler:asm2, portal: 192.168.2.92,3260]
Logging out of session [sid: 3, target: iqn.2006-01.com.openfiler:asm4, portal: 192.168.2.92,3260]
Logging out of session [sid: 4, target: iqn.2006-01.com.openfiler:crs2, portal: 192.168.2.92,3260]
Logging out of session [sid: 5, target: iqn.2006-01.com.openfiler:asm3, portal: 192.168.2.92,3260]
Logging out of session [sid: 6, target: iqn.2006-01.com.openfiler:crs1, portal: 192.168.2.92,3260]
Logout of [sid: 1, target: iqn.2006-01.com.openfiler:asm1, portal: 192.168.2.92,3260]: successful
Logout of [sid: 2, target: iqn.2006-01.com.openfiler:asm2, portal: 192.168.2.92,3260]: successful
Logout of [sid: 3, target: iqn.2006-01.com.openfiler:asm4, portal: 192.168.2.92,3260]: successful
Logout of [sid: 4, target: iqn.2006-01.com.openfiler:crs2, portal: 192.168.2.92,3260]: successful
Logout of [sid: 5, target: iqn.2006-01.com.openfiler:asm3, portal: 192.168.2.92,3260]: successful
Logout of [sid: 6, target: iqn.2006-01.com.openfiler:crs1, portal: 192.168.2.92,3260]: successful
Stopping iSCSI daemon:
[root@discus164 ˜]# [ OK ]
[root@discus164 ˜]#
[root@discus164 ˜]# service iscsi start
iscsid が停止していますが PID ファイルが残っています
Starting iSCSI daemon: [ OK ]
[ OK ]
iSCSI ターゲットを設定中: Logging in to [iface: default, target: iqn.2006-01.com.openfiler:asm1, portal:
192.168.2.92,3260]
Logging in to [iface: default, target: iqn.2006-01.com.openfiler:asm2, portal: 192.168.2.92,3260]
Logging in to [iface: default, target: iqn.2006-01.com.openfiler:asm4, portal: 192.168.2.92,3260]
Logging in to [iface: default, target: iqn.2006-01.com.openfiler:crs2, portal: 192.168.2.92,3260]
Logging in to [iface: default, target: iqn.2006-01.com.openfiler:asm3, portal: 192.168.2.92,3260]
Logging in to [iface: default, target: iqn.2006-01.com.openfiler:crs1, portal: 192.168.2.92,3260]
Login to [iface: default, target: iqn.2006-01.com.openfiler:asm1, portal: 192.168.2.92,3260]: successful
Login to [iface: default, target: iqn.2006-01.com.openfiler:asm2, portal: 192.168.2.92,3260]: successful
Login to [iface: default, target: iqn.2006-01.com.openfiler:asm4, portal: 192.168.2.92,3260]: successful
Login to [iface: default, target: iqn.2006-01.com.openfiler:crs2, portal: 192.168.2.92,3260]: successful
Login to [iface: default, target: iqn.2006-01.com.openfiler:asm3, portal: 192.168.2.92,3260]: successful
Login to [iface: default, target: iqn.2006-01.com.openfiler:crs1, portal: 192.168.2.92,3260]: successful
[ OK ]
[root@discus164 ˜]#
[root@discus164 ˜]#


再接続すると各ISCSIターゲットがマッピングされているSCSIデバイス名が前回と違っているのに気づくと思います。

[root@discus164 ˜]#
[root@discus164 ˜]# (cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print $9 " " $10 " " $11}')
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm1-lun-0 -> ../../sdb
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm2-lun-0 -> ../../sdc
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm3-lun-0 -> ../../sdg
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:asm4-lun-0 -> ../../sdd
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:crs1-lun-0 -> ../../sdf
ip-192.168.2.92:3260-iscsi-iqn.2006-01.com.openfiler:crs2-lun-0 -> ../../sde
[root@discus164 ˜]#
[root@discus164 ˜]#

udevでiSCSIターゲットがローカルデバイスへ固定マッピングできているか確認!
うまくいってます。RACの全ノードで同じローカルデバイスへマッピングできています。

が、しか〜〜し、記事書いてて気づいたけど ":"入っちゃってた (^^;;; そゆーところはまねしないでね。
狙いとしては ":"入れるつもりはなかったっす!。ミスった〜。
今回、iSCSIターゲット名をちょっと変えてしまったので、以前から流用しているiscsidev.shスクリプトの最後の行 

echo "${target_name##*.}"

のところがイケてない>< 今回設定したiSCSIターゲット名だと

echo "${target_name#*:}"

しないと asm1やasm2だけを抜き出せない ><
記載したiscsidev.shスクリプトをそのまま利用するのであれば、IQNは、iqn.2006-01.com.openfiler:xxx.asm1のように設定する必要があります!

そー作っちゃったのでそのまま載せときます。 (^^;;;;;;

[root@discus164 ˜]# ls -l /dev/iscsi/*/*
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:asm1/part -> ../../sdb
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:asm2/part -> ../../sdc
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:asm3/part -> ../../sdg
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:asm4/part -> ../../sdd
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:crs1/part -> ../../sdf
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/openfiler:crs2/part -> ../../sde
[root@discus164 ˜]#
[root@discus164 ˜]#

ということで、当初の設定予定とは違うローカルデバイス名にしちゃいましたがiSCSIとローカルデバイスは以下のようにマッピングしました。

iscsi-targetとローカルデバイス名の対応
iscsi-target名ローカルデバイス名
iqn.2006-01.com.openfiler:asm1 /dev/iscsi/openfiler:asm1/part
iqn.2006-01.com.openfiler:asm2 /dev/iscsi/openfiler:asm2/part
iqn.2006-01.com.openfiler:asm3 /dev/iscsi/openfiler:asm3/part
iqn.2006-01.com.openfiler:asm4 /dev/iscsi/openfiler:asm4/part
iqn.2006-01.com.openfiler:crs1 /dev/iscsi/openfiler:crs1/part
iqn.2006-01.com.openfiler:crs2 /dev/iscsi/openfiler:crs2/part


でもほんとは以下のようなローカルデバイス名にしたかったんです〜〜。ごめんなさい。

[root@discus164 ˜]# ls -l /dev/iscsi/*/*
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/asm1/part -> ../../sdb
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/asm2/part -> ../../sdc
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/asm3/part -> ../../sdg
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/asm4/part -> ../../sdd
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/crs1/part -> ../../sdf
lrwxrwxrwx 1 root root 9 12月 17 22:36 /dev/iscsi/crs2/part -> ../../sde
[root@discus164 ˜]#


いやな間違いに気づいたので、今日はこの辺で… (RAC自体で作れたんですけど、気持ち悪いので)





これまでのあらすじ
Mac de Oracle - 10万円未満 de RAC (11g編)#28

VirtualBox de RAC (Oracle11g R1編) #1
VirtualBox de RAC (Oracle11g R1編) #2



VirtualBox de Oracle11g R2 RAC #1
VirtualBox de Oracle11g R2 RAC #2 - 事前調査など…
VirtualBox de Oracle11g R2 RAC #3
VirtualBox de Oracle11g R2 RAC #4
VirtualBox de Oracle11g R2 RAC #5
VirtualBox de Oracle11g R2 RAC #6

| |

トラックバック


この記事へのトラックバック一覧です: VirtualBox de Oracle11g R2 RAC #7:

コメント

コメントを書く