2011年 07月 16日
iSCSI のベンチマークでみるNovell OES でのプライベートクラウドの実力
という記事を2年前に書きました。もっとも、ISO ファイルのシーケンシャルR/Wでしたので参考程度でした。
お客様から、「遅い」と言われたので、もう一度 CrystalDiskMark でチェックしてみました。
※ 先にオチを説明すると IP のダブりで「遅い」ことがわかりました。当たり前だ。
-Windows 単体-
Core2 Duo 1.8Ghz の普通のノートPCにローカルアクセスを行いました。
-----------------------------------------------------------------------
CrystalDiskMark 3.0 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]
Sequential Read : 50.738 MB/s
Sequential Write : 47.035 MB/s
Random Read 512KB : 28.241 MB/s
Random Write 512KB : 29.170 MB/s
Random Read 4KB (QD=1) : 0.501 MB/s [ 122.2 IOPS]
Random Write 4KB (QD=1) : 1.669 MB/s [ 407.5 IOPS]
Random Read 4KB (QD=32) : 0.616 MB/s [ 150.4 IOPS]
Random Write 4KB (QD=32) : 1.677 MB/s [ 409.3 IOPS]
Test : 50 MB [C: 64.2% (25.0/39.0 GB)] (x5)
Date : 2010/11/12 11:27:11
OS : Windows 7 [6.1 Build 7600] (x86)
2年前では標準的に「早い部類」に入っていたノートPCです。このデータをベースに iSCSI の性能をテストしてみました。もちろんファイルシステムはNTFSです。
- Novell OES2 Linux + iSCSI NSS ボリューム -
サーバは Athlon x2 1.8Ghz で Socket AM2 以前の Socket 939, この6年間、ほとんど動かしっぱなしの古いサーバに、準仮想化した Novell OES2 Linux を構築し、NSS ボリュームは iSCSI で接続しています。iSCSI 機器は、おなじみの QNAP TS-110 一番安い SOHO モデルに6年前の 200Gb のサムソン製の古い HDD を搭載しています。
ローカルディスクより若干遅い程度ですが、ランダムアクセスではローカルディスクより格段に高速でした。
-----------------------------------------------------------------------
CrystalDiskMark 3.0 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]
Sequential Read : 30.950 MB/s
Sequential Write : 47.205 MB/s
Random Read 512KB : 34.900 MB/s
Random Write 512KB : 44.797 MB/s
Random Read 4KB (QD=1) : 10.352 MB/s [ 2527.4 IOPS]
Random Write 4KB (QD=1) : 10.456 MB/s [ 2552.6 IOPS]
Random Read 4KB (QD=32) : 10.419 MB/s [ 2543.6 IOPS]
Random Write 4KB (QD=32) : 9.858 MB/s [ 2406.7 IOPS]
Test : 50 MB [G: 0.1% (0.6/1000.0 MB)] (x5)
Date : 2011/05/19 19:24:10
OS : Windows 7 [6.1 Build 7600] (x86)
これは、タスクマネージャの状態です。
転送速度にギザギザがなく速度が安定しているのがよく分かります。これだけ古いマシンにも関わらず特に書き込み性能がローカルディスク並みに出ているのは、 NetWare 譲りの OES2 + NSS + NCP プロトコルの実力を示しています。単純な1本LANなので 50% 以上の効率は出ません。
プロダクトネットワークと、ストレージネットワークを分けるともっとよい性能が期待できそうです。
Novell OES2で iSCSI デバイスをNSSで作成する手順
SUSE Enterprise Server 11 で iSCSI を使う
-Samba-Das-
ノートPCから Phenom IIx4 905e 搭載の Novell SUSE Linux Enterprise 11.1 SLES11.1 で Samba を動かし、iSCSI を使わない環境でテストしました。 HDD は WD 製 SATA 5400 回転ものです。
-----------------------------------------------------------------------
CrystalDiskMark 3.0 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]
Sequential Read : 39.882 MB/s
Sequential Write : 60.472 MB/s
Random Read 512KB : 40.124 MB/s
Random Write 512KB : 48.329 MB/s
Random Read 4KB (QD=1) : 9.803 MB/s [ 2393.2 IOPS]
Random Write 4KB (QD=1) : 1.820 MB/s [ 444.2 IOPS]
Random Read 4KB (QD=32) : 33.088 MB/s [ 8078.1 IOPS]
Random Write 4KB (QD=32) : 3.245 MB/s [ 792.3 IOPS]
Test : 50 MB [Y: 50.1% (909.1/1816.2 GB)] (x5)
Date : 2011/05/19 19:32:18
OS : Windows 7 [6.1 Build 7600] (x86)
タスクマネージャの状態です。
iSCSI を使わない分、余分な負荷がなくダイレクトにスピードが出ていますが、 Samba の場合、ネットワークの帯域にふらつき(ばらつき)があり、受け取っては書き、読み出しては送り、という非効率な動きを見せます。CIFS のプロトコルにはかなり無駄なオーバーヘッドがあることがよく分かります。iSCSI を使わない状態でもシーケンシャルリードが 40Mb/s 程度なのは WD 製 SATA ディスクの性能の限界でしょう。実際、SLES の内部でファイルコピーをしても 40Mb/s 程度の性能しかでません。最大で 50% 以上の帯域を使っています。
ここではテストしていませんがシーケンシャルリード 40Mb/s 前後は大体よい数字で、 Samba > Windows > Samba というアクセスではほぼ 100% 近い帯域を使います。その場合、転送速度(読んで書いて)の転送速度は 70Mb/s から 80Mb/s となります。
-Windows-
PhenomIIx4 905e の仮想マシンに完全仮想化した Windows を動かしました。 Windows には Novell Virtual Machine Driver Pack 1.7 をインストールしています。
OES2 でテストに使ったサーバより格段に性能も高いマシンです。
-----------------------------------------------------------------------
CrystalDiskMark 3.0 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]
Sequential Read : 26.054 MB/s
Sequential Write : 10.034 MB/s
Random Read 512KB : 34.487 MB/s
Random Write 512KB : 10.182 MB/s
Random Read 4KB (QD=1) : 6.369 MB/s [ 1554.9 IOPS]
Random Write 4KB (QD=1) : 1.088 MB/s [ 265.6 IOPS]
Random Read 4KB (QD=32) : 29.551 MB/s [ 7214.5 IOPS]
Random Write 4KB (QD=32) : 0.880 MB/s [ 214.8 IOPS]
Test : 50 MB [Y: 3.5% (1.0/30.0 GB)] (x5)
Date : 2011/05/19 19:43:00
OS : Windows 7 [6.1 Build 7600] (x86)
タスクマネージャの動きを見ていると、グラフが間延びして、いかに低速でテストに時間がかかっているかがよく分かります。シーケンシャルアクセスでは25%しか帯域を使っていません。
シーケンシャルアクセスの速度が遅く、C:ドライブにアクセスをかけたより遅くなります。
ローカルドライブと同じ程度の性能は Windows の遅さは NTFS の効率の悪さであり、 SMB プロトコルの効率の悪さが追加原因となります。
--
実際 iSCSI デバイスを使う場合は qnap TS-110 のような安物ではなく SAS のスパニングドライブを冗長化したストレージ専用の高級機を使うわけですが、Windows + iSCSI + NTFS ではシステムの効率が出ないことがよく分かります。必然的に Windows 環境では高価な FB チャネルを使った SAN 構成が必要となります。それでも NTFS と SMB を使う限り性能はあまり変わらないかもしれません。iSCSI だろうがなんだろうがこれ以上は出ないという感じでしょうか。
一方、 Linux のファイルシステム、特に Novell OES2 の NSS + NCP の効率の高さは光っており、 iSCSI-SAN でも十分な速度が確保できることがよく分かります。
また、特に読み出し速度は、ほぼストレージ(円盤)の性能に依存しています。お客様の環境では SAS の iSCSI 高級機を使っているため、まずこのテストよりよい性能が出ていました。最近は SATA の規格が 6Gb/s などの高性能を誇っていますが、この性能を出せる「円盤」はなく、SSD の性能に期待してしまいます。
qnap にもiSCSI 向きの高級機が出ていますが、基本的に「キット」で販売されているものなので、市販の SATA ディスクを使うことで低価格で構築できます。 qnap を使うときは出来るだけ 7800 回転ものの「円盤」を用意すると十分な性能が出るでしょう。
また NAS に Windows Storage Server を使い iSCSI ターゲットとする製品も出始めていますが、iSCSI ターゲットのファイルシステムそのものが既に NTFS なので、あまり性能は期待できないかもしれません。もし HP の SOHO マイクロサーバのようなものを使う場合は、Linux に open-iscsi の組み合わせのほうが性能は出ると思います。
Hyper-V が注目を浴びていますが、I/O 能力が低い NTFSの性能に依存する以上、 XEN や KVM といった仮想化技術より性能がでるとはちょっと考えにくいのです。
--Key word -
Novell OES2 Linux, SLES, XEN, iSCSI, NSS, NCP, Speed, avairability, iSCSI速度 iscsi 性能 iSCIS パフォーマンス iSCSI 仮想化
Please Visit My site
islandcenter.jp