ESXi5におけるRaw Device Mappingのやりかたについて

はじめに

ESXiで運用していく上でVMFS上にvmdkファイルとして格納した場合においてはローカルストレージへのアクセスが遅いという問題点がある。この問題の解決方法としてはiSCSIサーバを別に作り、ESXi側でiSCSI経由でデータを読み書きするという方法があります。しかしながら、この問題としては別途iSCSIサーバを用意しなくては行けないという点があります。そこで、ここではローカルのHDDをRaw Divce Mappingという方法でアクセスすることにより別途iSCSIサーバを立てる事無くvmdkファイルで読み書きするよりも高速でデータの読み書きをする方法について述べます。

RDMについて

仮想ディスクとしてvmdkファイルを利用するのではなく、ストレージ装置上のLUNを直 仮想マシンの仮想ディスクとして利用する技術です。この方式で仮想マシンを実装する 場合、マッピングファイルが必要となります。マッピングファイルはストレージ装置上 のLUNにアドレス解決する為のファイルであり、Datastore上に格納されます。 引用元:仮想マシンの実装方法- VMFS、Raw Device Mapping基本講座

注意点としてはRaw Dvice Mappingで使うためのHDDとストレージ装置上のLUMのアドレスを解決するためのファイルをDatasotre上に格納するためもう一台HDDが必要です。つまり、HDDが最低でも2台必要だという点を知っておいて下さい。

作成手順

HDDの用意

HDDを最低でも2台用意する。1台はデータストア用でもう一台はRDM用である。HDDをESXiサーバにつなげる前に型番とシリアルをメモしておくこと。シリアルは同じ型番のHDDはがあった場合において識別するためなので、同じ型番のHDDが無い状況ではやる必要は無い。ここを読んでいる方は既にデータストアを持っている可能性があるが、念のため初めてESXiをインストールした方はPC便利帳: VMware ESXi 4入門 (第2回、データストア作成)を参考にすると良い。

ディスクの確認

ESXiにSSHで入る。やりかたはぐぐれ。SSHで入ったら以下のコマンドを実行する。結果は長いので一部省いている。

~ #  ls -l /vmfs/devices/disks/
(省略)
-rw-------    1 root     root     3000592982016 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A
-rw-------    1 root     root       4161536 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:1
-rw-------    1 root     root     4293918720 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:2
-rw-------    1 root     root     2995355328000 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:3
-rw-------    1 root     root     262127616 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:5
-rw-------    1 root     root     262127616 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:6
-rw-------    1 root     root     115326976 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:7
-rw-------    1 root     root     299876352 Jul 14 19:04 t10.ATA_____Hitachi_HDS5C3030ALA630_______________________MJ1311YNG6NW7A:8
-rw-------    1 root     root     3000592982016 Jul 14 19:04 t10.ATA_____TOSHIBA_DT01ACA300_________________________________53VXZ2AAS
(省略)

今回の場合はHitachi_HDS5C3030ALA630がデータストア用のHDDのでデータストア名HITACHI3TBという名前にしている。そして、TOSHIBA_DT01ACA300が今回RDMとして用意したHDDである。シリアルはファイルの末尾で判断する。今回のRDM用として用意したHDDのシリアルは53VXZ2AASである。

TOSHIBA_DT01ACA300_________________________________53VXZ2AAS

vmdkファイル作成

RDMのアドレスを解決するためのフォルダをデータストア上に作成します。今回はデータストア名HITACHI3TBでフォルダ名をRDMとしています。

# cd /vmfs/volumes/HITACHI3TB/
# mkdir RDM

vmkfstoosを使いvmdkファイルを作成します。

# vmkfstools -z /vmfs/devices/disks/t10.ATA_____TOSHIBA_DT01ACA300_________________________________53VXZ2AAS /vmfs/volumes/HITACHI3TB/RDM/rdm.vmdk -a  lsilogic

WindowsXPの標準SCSIアダプタはBusLogicなのでWindowsXPへ繋ぐ場合はBusLogicをします。以下のコマンドを使いファイルが作成されていることを確認します。

~ # ls -l /vmfs//volumes/TOSHIBA3TB/RDM/
-rw-------    1 root     root     3000592982016 Jul 14 18:22 rdm-rdmp.vmdk
-rw-------    1 root     root           494 Jul 14 18:22 rdm.vmdk

ESXi上での追加はESX4(vSphere)にS-ATAディスクをRDMする方法 - とひろ仮想マシンへの追加を参考にしてください。

その他

今回はvmdkファイルを作成する時にvmkfstools -zとししたが似たようなコマンドとして-rがある。それぞれについて述べると、- zはPhysicalモードで、VMkernelを介さずに処理を行う。デフォルトはこちらになる。- rはVirtualモードでVMware Consolidated BackupやGuest OSのスナップショット機能を利用することができる。

ベンチ―マック結果

ベンチ取るのめんどくさくなったのでESXi 5.1: Using Raw Device Mappings (RDM) on an HP Microserver | Forza ITを参考にして下さい。

参考URL

手順としてはCreating RDMs on SATA drivesで記載されいることが全てであるが、日本語の情報として以下のサイトを参考にした。

追記

2013/07/15 21:49

サポートしている最大容量

3TBHDDをRDMした場合における問題点

windows7

結論から先に言うとできませんでした。 BIOSをUEFIに変更後3TBのRDMしたHDDにwindows7 64bitのOSを入れようとしましたができませんでした。HDDが3TBであるという認識はしましたが、「このディスクにWindowsをインストールすることはできません。このコンピューターのハードウェアでは、このディスクでの起動がサポートされていない可能性があります。このコンピュータのBIOSメニューで、このディスクのコントローラーが有効になっていることを確認してください。」と出てできませんでした。また、windows 7 64bitのOSからRDMした3TBのHDDの読み込みを行いましたが、「このメディアは書込みできません」と言われてできませんでした。