サーバとなるFC-TargetにRAM DISKを作成して、それをクライアント(FC-Initiator)で使ってみる。
■RAM DISK作成
現状はtopコマンドから
Mem: 7975152k total, 380612k used, 7594540k free, 21560k buffers
であった、この状態で4GBをRAM DISKに割り当てることとした。
mkdir /mnt/ramdisk
mount -t tmpfs -o size=4G /dev/shm /mnt/ramdisk
df -h
[root@c ~]# df -h Filesystem Size Used Avail Use% マウント位置 /dev/mapper/vg_lv1 35G 21G 13G 62% / tmpfs 3.9G 88K 3.9G 1% /dev/shm /dev/sda1 485M 73M 387M 16% /boot /dev/mapper/vg_lv2 29G 243M 27G 1% /home /dev/shm 4.0G 0 4.0G 0% /mnt/ramdisk [root@c ~]#
確かに4GB分のRAM DISKが作成された。この部分をそのままFC-Targetに与させたいが、
block deviceではないので、このフォルダにファイルを作成します。
dd if=/dev/zero of=/mnt/ramdisk/ram.img bs=1021M count=4
[root@c7 ~]# df /mnt/ramdisk Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/shm 4194304 4190204 4100 100% /mnt/ramdisk [root@c7 ~]# ls -lh /mnt/ramdisk/ram.img -rw-r--r-- 1 root root 4.0G 6月 15 20:58 2012 /mnt/ramdisk/ram.img [root@c7 ~]#
このファイルをFC-Targetとします。
scstadmin -open_dev ram01 -handler vdisk_fileio -attributes filename=/mnt/ramdisk/ram.img
次に、作ったFC-デバイスをTarget-デバイスに割り当てる
scstadmin -add_lun 1 -driver qla2x00t -target 21:00:00:1b:32:81:49:f7 -device ram01
そして有効化
scstadmin -enable_target 21:00:00:1b:32:81:49:f7 -driver qla2x00t
ESXiには同じQLE2462を積んでいる。ESXi5.0u1のインストール時にはさして問題もなくインストールは完了した。
vSphereClientからホストマシンの[構成]->[ストレージアダプタ]を参照
4Gbit-FCのQLA2462(ISP2432)の他に2GBit-FCのQLA2340(ISP2312)が見える。IBも積んでいるのだが見えない。
ESXiのモジュール不足かな。あとiSCSI Software Adapterは、ホストマシンのNIC。
っで、FCに付随したデバイスは下記のようになる。
LUN0は、scstマシンのHDD内イメージディスクファイル。LUN1は、scstのramdisk内イメージディスクファイル
ESXi内の仮想windows7にLUN1(ram disk)をrowデバイスと仮想ディスクとして繋いでみたが、どちらも170MB/secほどの速度しか出ない。???なんで?
物理マシンとしてのwindows7にQLE2462を差し込んで、FC-targetに接続してみた。
デバイスマネージャにはQLE2462は表記され認識されている。っで、肝心の[スタート]->[管理ツール]->[コンピュータの管理]から
[記憶域]->[ディスクの管理]を開くと、デバイスはあるようだが、HDDが定義されていなかった。。。いや正確には0MBのデバイスとして
認識されている。 device handler の指定が間違ったのかな??
*20120621に FC-Target をkernel-3.4.3にして再構築してみた。すると繋がった。容量も正しく表記された。
結果、こんな感じに。
4GbitのFCでTargetはramディスク。500 MB/秒とは行かなくとも半分は行けるんでね?っと思ったのだが意外と伸びない。
ESXiをクライアントにした結果とほぼ同じ。。。。まぁーいいや。