貧乏人のためのboot-from-SAN (3) iSCSI InitiatorとVM編
このエントリーでは、VMware Serverが動作するホストマシン上にiSCSI Initiatorを設定し、iSCSIディスクをVMのPhysical Diskとして利用する方法について述べます。
以降の説明では、ホストマシンにはCentOS 4.4とVMware Server 1.01がインストールされているものとします。
なぜCentOSなのかといえば、RedHat Enterprise Linuxとバイナリ互換性があるので、VMware Serverのインストール時にカーネルモジュールのコンパイルが不要なので楽である(という理由でVMware Serverホストに使うことを私が好んでいる)からです。
iSCSI Initiatorのインストールと設定
まず、iscsi-initiator-utilsをインストールしておきます。
# yum -y install iscsi-initiator-utils # /sbin/chkconfig iscsi on
次いで/etc/iscsi.confを編集します。iSCSI Targetのホスト名が「iscsi.as-is.net」、iSCSI Qualified Nameが「iqn.2006-12.net.as-is.iscsi:test」とすると、以下のように設定します。
DiscoveryAddress=iscsi.as-is.net:3260 Enabled=no TargetName=iqn.2006-12.net.as-is.iscsi:test Enabled=yes
上の設定は、iSCSI Targetとして「iscsi.as-is.net」を参照し、iSCSI Qualified Nameが「iqn.2006-12.net.as-is.iscsi:test」のドライブのみをアタッチするという意味になります。DiscoveryAddressはIPアドレスで指定しても構いません。
この設定が済んだら/etc/init.d/iscsiを起動します。
# /etc/init.d/iscsi start
うまくアタッチできれば、以下のようなコンソールメッセージが表示されます。
iscsi-sfnet: Loading iscsi_sfnet version 4:0.1.11-3 iscsi-sfnet: Control device major number 254 iscsi-sfnet:host1: Session established scsi1 : SFNet iSCSI driver Vendor: IET Model: VIRTUAL-DISK Rev: 0 Type: Direct-Access ANSI SCSI revision: 04 SCSI device sdb: 20971520 512-byte hdwr sectors (10737 MB) SCSI device sdb: drive cache: write through SCSI device sdb: 20971520 512-byte hdwr sectors (10737 MB) SCSI device sdb: drive cache: write through sdb: unknown partition table Attached scsi disk sdb at scsi1, channel 0, id 0, lun 0
iscsi-lsコマンドで確認することもできます。
# /sbin/iscsi-ls -l ******************************************************************************* SFNet iSCSI Driver Version ...4:0.1.11-3(02-May-2006) ******************************************************************************* TARGET NAME : iqn.2006-12.net.as-is.iscsi:test TARGET ALIAS : HOST ID : 1 BUS ID : 0 TARGET ID : 0 TARGET ADDRESS : 192.168.0.1:3260,1 SESSION STATUS : ESTABLISHED AT Fri Dec 8 17:17:06 JST 2006 SESSION ID : ISID 00023d000001 TSIH 700 ******************************************************************************* DEVICE DETAILS: --------------- LUN ID : 0 Vendor: IET Model: VIRTUAL-DISK Rev: 0 Type: Direct-Access ANSI SCSI revision: 04 page83 type1: 494554000000000000000000650000008733000010000000 page80: 0a Device: /dev/sdb *******************************************************************************
/dev/sdbとしてアタッチされたことが分かりました。
iSCSIドライブのPhysical Diskとしての利用
VMware Serverでは(WorkstationやPlayerでも)VMはユーザ権限で動作します(Windows版の場合はAdministrator権限を持ったユーザで実行している場合が多いために意識しないかもしれませんが)。VMの仮想ディスクファイルがユーザ権限で作られているのはそのためです。
Physical Diskを利用する場合も同様で、/dev/sdbがVMオーナーのユーザ権限で読み書きできる必要があります。
# ls -l /dev/sdb brw-rw---- 1 root disk 8, 16 Dec 8 17:17 /dev/sdb
となっていることからdiskグループにVMオーナーを加えればよいことが分かります。
# /usr/sbin/usermod -a -G disk ogawa
それが済んだら、おもむろにVMware Server Consoleを起動し、File > New > Virtual MachineでNew Virtual Machine Wizardを開きます。
ほとんどの部分はデフォルトで問題ありませんが、以下の設定が必要です。
- Select The Appropriate Configuration
→ 「Custom」を選択。 - Select I/O adapter Types
→ 「LSI Logic」を選択(Fedora Core 5や6のインストーラではBuslogicのSCSIドライバが読み込まれないため、LSI Logicを選択する必要があります)。 - Select a Disk
→ 「Use a physical disk (for advanced users)」を選択。 - Select a Physical Disk
→ DeviceはiSCSIでアタッチしたドライブ「/dev/sdb」を設定。Usageは「Use entire disk」を選択。
あとは通常通り、VMの仮想CD-ROMドライブにインストールCDのISO imageをマウントして、VMを起動してインストールを開始するだけです。
- 貧乏人のためのboot-from-SAN (1) 導入編
- 貧乏人のためのboot-from-SAN (2) iSCSI Target編
- 貧乏人のためのboot-from-SAN (3) iSCSI InitiatorとVM編 (このエントリー)
- 貧乏人のためのboot-from-SAN (4) 性能比較編 (気が向いたら書く予定のエントリー)
Comments and Trackbacks