性能検証その1
SuperMicro X7SPA-H-D525をゲットしたので、FCストレージに仕立て上げて
どの程度の性能が出るかを検証してみました。
ハードウェア構成
CPU:Intel Atom D525 (Pineview-D) Dual Core 1.8GHz
M/B:SuperMicro X7SPA-H-D525
MEM:4GB×2
ブートHDD:SSD 64GB(とっても古い奴)
データHDD:WD20EARS×4
HBA:Qlogic QLE-2462(PCI-Express)
# zpool status
pool: fc-vol02
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
fc-vol02 ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
c1t1d0 ONLINE 0 0 0
c1t2d0 ONLINE 0 0 0
c1t3d0 ONLINE 0 0 0
c1t5d0 ONLINE 0 0 0
fc-vol02から4TBのLUNを切り出して、ESXiサーバにデータストアとしてマウント
仮想マシンをシャットダウン状態にして、Storage vMotionでfc-vol02に移動する際にzpool iostatコマンドでどの程度スループットが稼げるかを確認してみます。
# zpool iostat fc-vol02 1
capacity operations bandwidth latency
pool alloc free read write read write read write
---------- ----- ----- ----- ----- ----- ----- ----- -----
fc-vol02 59.2G 7.19T 31 6.65K 253K 53.0M 9.83 15.41
fc-vol02 59.2G 7.19T 24 7.15K 197K 56.5M 14.52 26.67
fc-vol02 59.2G 7.19T 155 6.23K 1.17M 49.5M 18.26 28.22
fc-vol02 59.2G 7.19T 29 6.52K 232K 51.2M 19.30 94.75
fc-vol02 59.2G 7.19T 32 7.10K 260K 56.2M 14.29 46.61
fc-vol02 59.2G 7.19T 18 3.17K 146K 25.0M 37.76 345.51
fc-vol02 59.2G 7.19T 18 7.03K 152K 55.5M 17.06 122.25
fc-vol02 59.2G 7.19T 25 8.91K 208K 70.5M 12.48 101.65
fc-vol02 59.2G 7.19T 31 4.93K 253K 38.8M 11.14 103.51
fc-vol02 59.2G 7.19T 37 7.57K 300K 59.7M 10.50 227.72
fc-vol02 59.2G 7.19T 31 5.49K 254K 43.1M 9.38 259.66
fc-vol02 59.2G 7.19T 26 4.12K 216K 32.7M 20.56 225.35
fc-vol02 59.2G 7.19T 11 5.53K 95.9K 43.9M 26.54 487.47
fc-vol02 59.2G 7.19T 25 4.99K 208K 39.4M 27.39 700.42
fc-vol02 59.2G 7.19T 31 5.58K 252K 44.5M 8.46 23.91
fc-vol02 59.2G 7.19T 32 6.95K 262K 54.9M 12.93 60.33
ちなみに以下のチューニングを行ってます。
(1) ディスクのwrite back cache有効化(デフォルトは無効)
# echo zfs_nocacheflush/W0t1 | mdb -kw
確認
# echo zfs_nocacheflush/D | mdb -k
zfs_nocacheflush:
zfs_nocacheflush: 1
(2) LUNに対するWriteBack cache有効化
やっぱりAtomは遅いデスネ
速いときでも40~60MB/sくらいしか出ません。
前回作成したストレージにStorage vMotionする際はもっと速くて、
300MB/s前後出てました・・・
Nexentastor Community Edition 4.0.2でFCストレージ
NexentaStor 4.0.2が出ていましたので、手順の検証してみました。
結果としては3.1.5と同じでOK
Nexentastor Community EditionでFCストレージ
XenServerおよびESXiで使用できるFCストレージの簡単(?)な作り方
cloudstackを使う上で欠かせない共有ディスク
iSCSI接続は比較的よく見るので、FC接続ストレージを作ってみました。
(1) 準備編
PCI-Express x8が使用できるPCまたはサーバ
Qlogic製Fibre Channel Adapter (QLE2460/QLE2462など)
Intel製ネットワークアダプタ (9301CT等で可)
HDDたくさん
メモリたくさん
私は以下のような環境を準備しました。
M/B:ML110 G6
MEM:16GB
HBA:Qlogic QLE2462 DualPort 4Gbps Fibre Channel Adapter
HDD:Seagate ST2000DM001×8 (LSILogic 9260-8i接続)
WD20EARX×5 (チップセットに接続)
NIC:Intel 9301CT
SSD:Plextor PX-128M5P (L2ARCで使用)
(2) Nexentastor Community Editionのインストール
インストール用にLSILogic 9260-8iで10GBのLUを切り出し、OSをインストール
手順は省略します。。。
(3) FCストレージとしてのセットアップ
sshでNexentastor Community Editionに接続し、セットアップしていきます。
以下でエキスパートモードになります
$ option expert_mode=1 -s
$ !bash
Unix (「raw」) シェルを入力して低レベルの Unix コマンドを実行しようとしています。 警告: 低レベルの Unix コマンドの使用は推奨されません! 実行しますか? Yes
ZFS ストレージプールの作成と確認
# zpool create -f fc-vol00 c1t1d0
# zpool create -f fc-vol01 raidz c2t0d0 c2t1d0 c2t2d0 c2t3d0 c2t4d0
ZFS ストレージプールの確認
# zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
fc-vol00 10.9T 548K 10.9T 0% 1.00x ONLINE -
fc-vol01 9.06T 1.17M 9.06T 0% 1.00x ONLINE -
syspool 19.9G 12.6G 7.26G 63% 1.00x ONLINE -
LUNとして使用するZFSボリュームの作成と確認
# zfs create -V 10T fc-vol00/lu00
# zfs create -V 10G fc-vol00/lu01
# zfs create -V 10G fc-vol00/lu02
# zfs create -V 10G fc-vol00/lu03
# zfs create -V 100G fc-vol00/lu04
# zfs create -V 100G fc-vol00/lu05
# zfs create -V 100G fc-vol00/lu06
# zfs create -V 6144G fc-vol01/lu00
# zfs create -V 10G fc-vol01/lu01
# zfs create -V 10G fc-vol01/lu02
# zfs create -V 10G fc-vol01/lu03
# zfs create -V 100G fc-vol01/lu04
# zfs create -V 100G fc-vol01/lu05
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
fc-vol00 10.6T 59.1G 144K /fc-vol00
fc-vol00/lu00 10.3T 10.3T 25.5G -
fc-vol00/lu01 10.3G 69.4G 72K -
fc-vol00/lu02 10.3G 69.4G 72K -
fc-vol00/lu03 10.3G 69.4G 72K -
fc-vol00/lu04 103G 162G 72K -
fc-vol00/lu05 103G 162G 72K -
fc-vol00/lu06 103G 162G 72K -
fc-vol01 6.42T 723G 230K /fc-vol01
fc-vol01/lu00 6.19T 6.88T 19.7G -
fc-vol01/lu01 10.3G 733G 115K -
fc-vol01/lu02 10.3G 733G 115K -
fc-vol01/lu03 10.3G 733G 115K -
fc-vol01/lu04 103G 826G 115K -
fc-vol01/lu05 103G 826G 115K -
syspool 13.8G 5.76G 164K legacy
syspool/.nza-reserve 144K 5.86G 144K none
syspool/dump 11.2G 5.76G 11.2G -
syspool/rootfs-nmu-000 1.47G 5.76G 1.04G legacy
syspool/rootfs-nmu-001 92K 5.76G 966M legacy
syspool/swap 1.03G 6.79G 72K -
ZFSボリューム用のLUN作成と確認
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu00
Logical unit created: 600144F0504B830000005295FF6D0001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu01
Logical unit created: 600144F0504B830000005295FF6F0002
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu02
Logical unit created: 600144F0504B830000005295FF710003
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu03
Logical unit created: 600144F0504B830000005295FF720004
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu04
Logical unit created: 600144F0504B830000005295FF740005
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu05
Logical unit created: 600144F0504B83000000529F10F90001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu06
Logical unit created: 600144F0504B83000000529F19F00001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu00
Logical unit created: 600144F0504B83000000529B22120001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu01
Logical unit created: 600144F0504B83000000529F110C0002
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu02
Logical unit created: 600144F0504B83000000529F110F0003
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu03
Logical unit created: 600144F0504B83000000529F11100004
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu04
Logical unit created: 600144F0504B83000000529F11110005
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu05
Logical unit created: 600144F0504B83000000529F11130006
# stmfadm list-lu
LU Name: 600144F0504B830000005295FF6D0001
LU Name: 600144F0504B830000005295FF6F0002
LU Name: 600144F0504B830000005295FF710003
LU Name: 600144F0504B830000005295FF720004
LU Name: 600144F0504B830000005295FF740005
LU Name: 600144F0504B83000000529B22120001
LU Name: 600144F0504B83000000529F10F90001
LU Name: 600144F0504B83000000529F110C0002
LU Name: 600144F0504B83000000529F110F0003
LU Name: 600144F0504B83000000529F11100004
LU Name: 600144F0504B83000000529F11110005
LU Name: 600144F0504B83000000529F11130006
LU Name: 600144F0504B83000000529F19F00001
ホストグループ作成
# stmfadm create-hg esxi01
# stmfadm create-hg esxi02
# stmfadm create-hg vcenter
ホストグループにWWN登録
wwnはストレージに接続するXenServer/ESXiホストのFCアダプタを指定します。
# stmfadm add-hg-member -g esxi01 wwn.10000000c9695686
# stmfadm add-hg-member -g esxi01 wwn.10000000c96955c0
# stmfadm add-hg-member -g esxi02 wwn.10000000c976c1c0
# stmfadm add-hg-member -g esxi02 wwn.10000000c9769a8c
# stmfadm add-hg-member -g vcenter wwn.10000000c960ae93
ホストグループの確認
# stmfadm list-hg -v
Host Group: esxi01
Member: wwn.10000000C9695686
Member: wwn.10000000C96955C0
Host Group: esxi02
Member: wwn.10000000C976C1C0
Member: wwn.10000000C9769A8C
Host Group: vcenter
Member: wwn.10000000c960ae93
ホストグループにLUN ビューを追加
※追加したLUNから順にHost-LUNが0~で割り当てられます
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF6D0001
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF6F0002
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF710003
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF720004
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF740005
# stmfadm add-view --host-group esxi01 600144F0504B83000000529B22120001
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F10F90001
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F110C0002
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F110F0003
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11100004
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11110005
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11130006
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF6D0001
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF6F0002
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF710003
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF720004
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF740005
# stmfadm add-view --host-group esxi02 600144F0504B83000000529B22120001
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F10F90001
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F110C0002
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F110F0003
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11100004
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11110005
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11130006
# stmfadm add-view --host-group vcenter 600144F0504B83000000529F19F00001
LUN の構成を確認
# stmfadm list-view -l 600144F0504B830000005295FF6D0001
View Entry: 0
Host group : esxi01
Target group : All
LUN : 0
View Entry: 1
Host group : esxi02
Target group : All
LUN : 0
# stmfadm list-view -l 600144F0504B830000005295FF6F0002
View Entry: 0
Host group : esxi01
Target group : All
LUN : 1
View Entry: 1
Host group : esxi02
Target group : All
LUN : 1
# stmfadm list-view -l 600144F0504B830000005295FF710003
View Entry: 0
Host group : esxi01
Target group : All
LUN : 2
View Entry: 1
Host group : esxi02
Target group : All
LUN : 2
# stmfadm list-view -l 600144F0504B830000005295FF720004
View Entry: 0
Host group : esxi01
Target group : All
LUN : 3
View Entry: 1
Host group : esxi02
Target group : All
LUN : 3
# stmfadm list-view -l 600144F0504B830000005295FF740005
View Entry: 0
Host group : esxi01
Target group : All
LUN : 4
View Entry: 1
Host group : esxi02
Target group : All
LUN : 4
# stmfadm list-view -l 600144F0504B83000000529B22120001
View Entry: 0
Host group : esxi01
Target group : All
LUN : 5
View Entry: 1
Host group : esxi02
Target group : All
LUN : 5
# stmfadm list-view -l 600144F0504B83000000529F10F90001
View Entry: 0
Host group : esxi01
Target group : All
LUN : 6
View Entry: 1
Host group : esxi02
Target group : All
LUN : 6
# stmfadm list-view -l 600144F0504B83000000529F110C0002
View Entry: 0
Host group : esxi01
Target group : All
LUN : 7
View Entry: 1
Host group : esxi02
Target group : All
LUN : 7
# stmfadm list-view -l 600144F0504B83000000529F110F0003
View Entry: 0
Host group : esxi01
Target group : All
LUN : 8
View Entry: 1
Host group : esxi02
Target group : All
LUN : 8
# stmfadm list-view -l 600144F0504B83000000529F11100004
View Entry: 0
Host group : esxi01
Target group : All
LUN : 9
View Entry: 1
Host group : esxi02
Target group : All
LUN : 9
# stmfadm list-view -l 600144F0504B83000000529F11110005
View Entry: 0
Host group : esxi01
Target group : All
LUN : 10
View Entry: 1
Host group : esxi02
Target group : All
LUN : 10
# stmfadm list-view -l 600144F0504B83000000529F11130006
View Entry: 0
Host group : esxi01
Target group : All
LUN : 11
View Entry: 1
Host group : esxi02
Target group : All
LUN : 11
# stmfadm list-view -l 600144F0504B83000000529F19F00001
View Entry: 0
Host group : vcenter
Target group : All
LUN : 0
FCアダプタドライバのモードを確認します
# mdb -k
Loading modules: [ unix genunix specfs dtrace mac cpu.generic uppc pcplusmp scsi_vhci zfs mr_sas sd sockfs ip hook neti sctp arp usba qlc stmf_sbd stmf lofs idm random nfs crypto sata cpc smbsrv logindmux ptm nsctl sdbc ufs nsmb sv rdc ii ]
> ::devbindings -q qlc
ffffff04e606c020 pciex1077,2432, instance #0 (driver name: qlc)
ffffff04e606a7c0 pciex1077,2432, instance #1 (driver name: qlc)
> $q
全てのFCポートをターゲットモードに変更する
現在のバインドを削除する
# update_drv -d -i 'pciex1077,2432' qlc
Cannot unload module: qlc
Will be unloaded upon reboot.
新しいバインドを確立する
# update_drv -a -i 'pciex1077,2432' qlt
devfsadm: driver failed to attach: qlt
Warning: Driver (qlt) successfully added to system but failed to attach
システムをリブートして新しいドライバをロードする
# init 6
ターゲットモードフレームワークが HBA ポートにアクセスできることを確認
# stmfadm list-target -v
Target: wwn.210000E08B854AE2
Operational Status: Online
Provider Name : qlt
Alias : qlt1,0
Protocol : Fibre Channel
Sessions : 1
Initiator: wwn.10000000C976C1C0
Alias: Emulex LPe1150-F4-N FV2.72A2 DV10.0.100.1
Logged in since: Wed Nov 27 23:35:22 2013
Target: wwn.210000E08B8557DE
Operational Status: Online
Provider Name : qlt
Alias : qlt0,0
Protocol : Fibre Channel
Sessions : 1
Initiator: wwn.10000000C9769A8C
Alias: Emulex LPe1150-F4-N FV2.72A2 DV10.0.100.1
Logged in since: Wed Nov 27 23:35:21 2013
ESXiから認識させた例
LUNが細かく分かれてるのは・・・RDMで使うからですハイ。