皆様こんにちは!
先週お伝えしたとおり「押さえておきたいvSphereの基本」と題して、仮想環境をご利用するにあたり押さえておきたい機能、ポイントをストレージ、ネットワーク可用性に分けてお伝えしておきます。
初回はストレージ編です。vSphere 環境に限りませんが、ストレージはシステムを稼動させる上で非常に重要なリソースの1つとなるため、ストレージ選定において、容量、可用性、パフォーマンス、コストなどを検討する上で重要なポイントとなります。そこでvSphereが持っているストレージ関連の機能で、どのようなことが実現できるかご紹介していきます。今回は第1回目ということで Standard エディションや標準的に利用できるストレージに関する代表的な機能を3つご紹介致します。
・ストレージ環境を最適化にするファイルシステム~VMFS~
仮想化環境では、物理サーバ(ESXi)とストレージ(ボリューム)の関係が1 : 1となるような形で導入いただくことも可能ですが、m : nとなるように共有ストレージと併せて導入していただくと、システムの運用効率や可用性を高めていただくことができます。
図1 ESXiとストレージのイメージm:nのような環境を構成するためには、複数のESXiサーバが同じボリュームに同時にアクセスする必要があります。 FCやiSCSIを使用した共有ストレージ(ブロックデバイス)環境ではVMFSと呼ばれる共有可能なファイルシステム(Virtual Machine File System )を提供しており、このVMFS でフォーマットされた領域に対して複数のESXiホストからアクセス可能としております。ファイルシステムを複数のESXiホストから共有している以上、整合性を保つ何かしらの”仕組み”が必要になってきますが、VMFSの場合SCSI-2のディスクリザベーションを利用して排他制御を実現しています。
共有ファイルシステムといっても特に難しい設定はなく、それぞれのESXiからマウントするだけとなっておりますので、特殊な設定等はなく簡単に実装できてしまいます。ちなみにこの排他制御、標準のVMFSではLUN単位に動作しますが、規模等によってはさらに効率よく実施するための仕組み/VAAIをハードウエア側(ストレージ)と協力して実装しております。(その点は次回に触れていきます。)その他、ファイルシステムの拡張性ももちろん兼ね備えております。仮想環境に関してはディスク容量の拡張が頻繁に行われる傾向がありますがハード側(ストレージ側)における動的拡張の後VMFSのファイルシステム拡張も動的に行えますので拡張作業も安心ですネ。
パフォーマンスでも様々な工夫がされており、特徴的なのがVMFSのブロックサイズです。
一般的にフィルシステムでフラグメントが多発している状況では、連続領域にファイルが配置されていないためI/Oリクエストが複数ブロックに分断され性能劣化の可能性がありますが、VMFSのブロックサイズ(1MB)は一般的なゲストOSのブロックサイズと比較してかなり大きく、ブロック境界を跨ぐ機会が少ないため、仮にVMFS 自体にフラグメントが発生していても性能劣化の影響が少ないです。このようにVMFSは地味な存在ですが、仮想環境をより安心にご使用していただくため大きな役割を担っております。
・より多くの仮想マシンを配置するための工夫~シンプロビジョニング~
様々なストレージ関連の製品で実装されていることもあり、”シンプロビジョニング”という言葉を聞いたことある方も多いかと思います。 一般的にシンプロビジョニング機能を利用していただくと、実際に利用可能な容量以上のボリュームを予め作成できるようになるため、将来の容量増加の見込みがつかないシステムなどに対し、使用していない容量の初期投資を抑えることが可能になります。
例えば、5年間運用するためにディスクサイズを100GB と算出した仮想マシンを10 台作成するとします。本来であれば、約1TB の容量が必要になりますが、1 年間運用した結果、それぞれの仮想マシンは平均20GB ほどしか消費しなかったとすると、導入時200GB 準備すればよかったことになります。ストレージのシンプロビジョニング機能を利用すれば、計画的な増設が可能になります。また、仮想ディスクをシンプロビジョニング形式で作成することにより、約1TB の容量に対して、ディスクサイズを100GB を想定した仮想マシンは10 台以上配置することが可能になり未使用の割り当て領域が削減され、効率的にストレージ容量を使用できるようになります。
図2シンプロビジョニング:シンで作成された仮想マシンは使用領域のみストレージ側で消費されている特に仮想環境では導入当初は小さく始め、その後拡張していく傾向があります。vSphereのシンプロビジョニングを使用して、小さく始めて、必要があれば拡張していくという方式も可能となります。このvSphereのシンプロビジョニング機能も、全てのエディションでご使用いただけます。
・ストレージにおける仮想マシン配置の最適化~Storage vMotion~
仮想環境では、仮想マシンの増加等で構成変更が頻繁に発生する傾向にあります。その際仮想マシンのストレージ配置等構成変更が多く発生するのも仮想環境の特徴のひとつです。仮想マシンはストレージ上のボリューム(LUN等)に格納されておりますが、仮想マシンが増えていくと、容量が枯渇したり、IO競合が多く発生する可能性がありますので、将来的に仮想マシンの配置を変える可能性が高いことも考慮する必要があります。そこでvSphereでは仮想マシンの配置変更をオンラインで実施するための機能”Storage vMotion”を提供しております。
図3 Storage vMotionのイメージ 異なるストレージへ仮想マシンをオンラインで移行Storage vMotionの特徴としては仮想マシンを止めずに仮想マシンを配置しているストレージを変更できます。例えばFCストレージからiSCSIストレージへの移行も可能です。ストレージの容量が足りなくなってきたり、IOの激しい仮想マシンが他の仮想マシンに影響を及ぼす様であれば、IOの負荷分散として仮想マシンの配置変更をオンラインで実施できます。操作も以下のとおり数ステップでできてしまうので非常に簡単です。
Storage vMotionの操作
移行する仮想マシンを選んで「移行」を選択
「データストアの変更」を変更。ここで「ホストの変更」を選択するとvMotionになります
仮想マシンの移行先を選択します。
「終了」を押せばStorage vMotionが開始されます。
仮想環境では複数のシステムが物理的なリソースを共有している関係上、運用フェーズで仮想マシンの配置変更を実施することが多くなるかと思います。このStorage vMotionでシステムを止めずに仮想マシンの配置を変更できることは、私も通常業務で大変助かっております!
今回はvSphere Standard エディションで提供しているストレージに関する代表的な機能を3つご紹介させていただきました。今回ご紹介した機能、VMFSやシンプロビジョニング機能はエディションに関係なく標準的に実装されている機能です。Storage vMotionに関してはStandardエディションから実装されている機能になりますが、どの機能も仮想環境におけるストレージを下支えする重要な機能となっております。次回「押さえておきたいvSphereの基本」ストレージ編第2回目は、~ストレージと連携しパフォーマンスを最大化~するという題目でお送りします。
VMware青山健二/中村朝之
「押さえておきたいvSphereの基本」
~ストレージ編~
1.マニュアル操作でストレージ環境を最適化
2.ストレージと連携してパフォーマンスを最大化
3.優先度の定義付けと自動化
~ネットワーク編~
1.ホスト単位でネットワークを構築する 〜標準スイッチ編〜
2.スケーラブルで高機能なネットワークを構築する 〜分散スイッチ編〜
3.仮想化環境でL3-L7 サービスを提供する 〜vCloud Networking and Security〜
~可用性編~
・物理リソースの有効活用と仮想マシンの最適配置~DRSとリソースプール編~
・システム障害に備える仕組み~vSphere HAとFT編~
vSphere