Oracle Rac On Amazon EC2 その2 ISCSI編
OpenVPN用サーバ上にISCSIターゲットを構築します。
iSCSI用のボリュームとして、以下のボリュームを作成しOpenvpnサーバに割り当てる
1G #dummy →/dev/sdf
1G #OCR and Voting Disk →/dev/sdg
5G #Oracle Fast Recovery Area →/dev/sdh
10G #Oracle Database Files →/dev/sdi
※openvpnサーバと同じzoneに作成しないとattachできない
iSCSI Target側(OpenVPNがインストールされているサーバ)
yum -y install scsi-target-utils
#vi /etc/targets.conf
# List of files to export as LUNs
backing-store /dev/sdf# Authentication :
# if no "incominguser" is specified, it is not used
incominguser user password
# List of files to export as LUNs
backing-store /dev/sdg# Authentication :
# if no "incominguser" is specified, it is not used
incominguser user password
# List of files to export as LUNs
backing-store /dev/sdh
# Authentication :
# if no "incominguser" is specified, it is not used
incominguser user password
# List of files to export as LUNs
backing-store /dev/sdi# Authentication :
# if no "incominguser" is specified, it is not used
incominguser user password
※user とpasswordはイニシエータ側でも使う
iscsi target 自動起動
# chkconfig tgtd on
iscsi target
# /etc/init.d/tgtd start
ISCSI イニシエータ側(RACノード側)
#vi /etc/iscsi/iscsid.conf
node.session.auth.username = user
node.session.auth.password = password
discovery.sendtargets.auth.username = user
discovery.sendtargets.auth.password = password
※userとpasswordはtarget側で設定したもの
通常、iscsiでマウントしたLUは/dev/sdX のどこになるのか不特定なので、/dev/iscsi/crs/part1 の様に固定で割当ができるようにする。@discus-hamburgさんのHPとOTNを参考に
http://discus-hamburg.cocolog-nifty.com/mac_de_oracle/2010/12/virtualbox-de-5.html
http://www.oracle.com/technetwork/articles/hunter-rac11gr2-iscsi-088677.html#13
#rm -rf /etc/udev/rules.d/80-oracle.rules
#vi /etc/udev/rules.d/55-openiscsi.rules
KERNEL=="sd*", BUS=="scsi", PROGRAM="/etc/udev/scripts/iscsidev.sh %b",SYMLINK+="iscsi/%c/part%n"
vi /etc/udev/scripts/iscsidev.sh
#!/bin/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# Check if QNAP drive
check_qnap_target_name=${target_name%%:*}
if [ $check_qnap_target_name = "iqn.2004-04.com.qnap" ]; then
target_name=`echo "${target_name%.*}"`
fiecho "${target_name##*.}"
#chmod 755 /etc/udev/scripts/iscsidev.sh
#chkconfig iscsid on
#/etc/init.d/iscsid start
#vi /root/iscsi.sh
#!/bin/sh
iscsiadm --mode discovery --type sendtargets -p mydomain.dyndns.info
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.aaa --login
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.crs --login
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.fra --login
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.data --login
#chmod 755 /root/iscsi.sh
# vi iscsi_end.sh
#!/bin/sh
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.aaa --logout
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.crs --logout
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.fra --logout
iscsiadm --mode node --targetname iqn.2011-04.info.dyndns.mydomain:server.data --logout
iscsiadm --mode discovery --op delete --portal mydomain.dyndns.info
#chmod 755 /root/iscsi_end.sh
どこにマッピングされているか確認する。
ls -al /dev/iscsi/*/*
iscsi.shにて手動でマッピングしているため、毎回こうなるはず
[root@ip-10-150-179-105 ~]# ls -al /dev/iscsi/*/*
lrwxrwxrwx 1 root root 9 May 16 12:23 /dev/iscsi/aaa/part -> ../../sda
lrwxrwxrwx 1 root root 9 May 16 12:23 /dev/iscsi/crs/part -> ../../sdb
lrwxrwxrwx 1 root root 9 May 16 12:23 /dev/iscsi/data/part -> ../../sdd
lrwxrwxrwx 1 root root 9 May 16 12:23 /dev/iscsi/fra/part -> ../../sdc
# /dev/sda以外を使う。(/dev/sdaはルートデバイスと被ってしまっているので触らない)
#fdisk /dev/sdb
#fdisk /dev/sdc
#fdisk /dev/sdd
[root@ip-10-150-179-105 ~]# ls -al /dev/iscsi/*/*
lrwxrwxrwx 1 root root 9 May 16 12:34 /dev/iscsi/aaa/part -> ../../sda
lrwxrwxrwx 1 root root 9 May 16 12:34 /dev/iscsi/crs/part -> ../../sdb
lrwxrwxrwx 1 root root 10 May 16 12:35 /dev/iscsi/crs/part1 -> ../../sdb1
lrwxrwxrwx 1 root root 9 May 16 12:34 /dev/iscsi/data/part -> ../../sdd
lrwxrwxrwx 1 root root 10 May 16 12:36 /dev/iscsi/data/part1 -> ../../sdd1
lrwxrwxrwx 1 root root 9 May 16 12:34 /dev/iscsi/fra/part -> ../../sdc
lrwxrwxrwx 1 root root 10 May 16 12:35 /dev/iscsi/fra/part1 -> ../../sdc1