PGKiss仮想化の弱点ストレージ、SSDによるストレージのチューニング 2013/12/8

仮想化の弱点ストレージ、SSDによるストレージのチューニング 2013/12/8


仮想化の弱点--ストレージ--

VMwareにしろHypver-Vにしろ、仮想マシンが増えてくるとストレージへのアクセス速度の低下が無視できなくなる。ハードディスクの容量を増やすのは比較的容易だが、アクセス速度はそれ程伸びていない。一方で、一つのRAIDグループ(あるいはRAIDコントローラ、ファイバチャネルのポート等)をシェアする仮想マシンが増えると、1つの仮想マシンが使用できる帯域は狭くなる。また、個々の仮想マシンはシーケンシャルアクセスしているつもりでも、複数の仮想マシンからのリクエストを処理するストレージにとってはランダムアクセスとなる。ハードディスクにランダムアクセスすると、ヘッドの移動やディスクの回転待ち時間が増えるので、アクセス速度はかなり低下する。

もちろん、アクセス速度の低下を抑える手だてはいくつかあるが、運用の柔軟性や、容量の使用効率まで低下したりするデメリットも伴ってしまう。

手頃になってきた、大容量SSD

Crucialの960GB SATA 6Gbps CT960M500SSD1.PK01が5万円を割るなど、1TB級のSSDも結構手頃な値段になってきた。1TBのサーバー用のSASハードディスクが6万円くらいするので、コンシューマー向けとエンタープライズ向けという差はあるものの、必ずしもSSDが割高ではなくなってきた。

脅威のSSD速度

今回は、SSDでどの程度速度が出るか試してみた。測定環境は次の通り。弱点であるストレージ速度を克服し、20-30仮想マシンをホストする想定なので、かなり豪華な構成だ。RAID0としたのは、SSDは書き込み回数の制限はあるものの、機械稼動部分がないので、用途にもよるが、適切にバックアップを行っていれば、信頼性にそれ程大きな問題はないと判断したからだ(信頼性よりも速度を優先したといってもいい)。

測定環境
RAIDカードMegaRAID SAS 9271-8i(PCIe 3.0 8レーン)
SSDSSD PLEXTOR PX-512M5P(512GB SATA 6Gbps)を6台
RAID構成RAID0(SSD 6台)
ハイパーバイザーVMware ESXi 5.1
OSWindows 8
1TB級 SSDと関連商品

測定結果は下記の通りで、一番左はハイパーバイザーを使用しないベアメタルでの測定結果だ。ESXiのファイルシステムであるVMFS(ver5.58)のブロックサイズが1MBなので、512KBのランダムアクセスに注目しよう。ベアメタルでは、ランダムアクセス性能がおよそ2GB/sという超高速が実現できた。 4KBのランダムアクセス性能が低いのは、RAIDのチャンクサイズを256KBにしているからだ。4KBを読み書きするのに、その64倍の256KBを読み書きする必要があるのだから、遅くなるのは当然だ。小さい単位のランダムアクセス性能を上げるには、チャンクサイズをもっと小さくする必要がある。

測定結果
ベアメタル(ハイパーバイザーなし) ESXi(普通のVMFS上) ESXi(Raw Device Mapping)
ベアメタルESXi(普通のVMFS上)ESXi(Raw Device Mapping)

中央の測定結果は、ESXi上の仮想マシン(Windows 8)で測定したものだ。測定対象のドライブは、VMFS上に確保した仮想ハードディスクだ。ベアメタルよりもおよそ2.5-3割程度速度が落ちるものの、それでも1.5GB/s前後と十分高速だ。繰り返すが、これはランダムアクセスの性能である。

右側の測定結果は、中央と同じくESXi上の仮想マシン(Windows 8)で測定したものだ。ただし、測定対象のドライブは、VMFSを介さずRDM(Raw Device Mapping)したRAIDボリュームだ。ベアメタルに対して、およそ2割程度の性能低下にとどまっている。

RDMを使用した方が確かに速いが、VMFS上に仮想ハードディスクを構成した方が運用の柔軟性は遥かに高い。ランダムアクセス性能で1.5GB/sもの性能が得られるのであれば、個人的にはRDMを使う必要性は感じない。

今回のまとめ

  • ホストする仮想マシンを増やすには、ストレージアクセス速度がネックになりやすい
  • 大容量SSDも安価になってきた
  • 大容量のSATA SSDと高性能なRAIDカードがあれば、仮想化に適したランダムアクセス性能の高いストレージが組める(100万円を超えるようなPCIe接続のSSDを買わなくてもTB級のストレージを使える)
他のコンテンツ:
  1. 無償のVMware ESXiで、パフォーマンス チャートの表示期間を延ばす方法
  2. RAID状態等、VMwareハイパーバイザー(ESX,ESXi,vSphere Hypervisor)をリモートから監視する方法(WBEM)
inserted by FC2 system