UnixPower on Networking
  http://www.unix-power.net/

 
 Top - Linux - VMware ESXi5.5 VAAIの設定



■VAAI ( vStorage API for Array Integration )

VAAIとはvStorage API for Array Integrationの略でVMwareとストレージベンダーのAPIを連携させストレージ関連の処理をホストからストレージ側にオフロードする機能です。VMFSの場合はストレージ側で提供するLUNがVAAIに対応していればそのまま使用可能です。その際、vSphere上ではストレージ側が対応済みであることを事前に確認しておく必要があります。

VMwareのコンパチビリティガイドを確認するとストレージベンダーごとにVAAIの機能をサポートするかを確認できます。コンパチガイドは以下のURLからアクセスできます。

http://www.vmware.com/resources/compatibility/search.php?deviceCategory=san

上記URLで検索し、そもそもストレージ側でサポートされていなければこの機能は使えないということになりますので注意してください。

VAAIで有効にできる具体的な機能として以下の機能があります。

●Block Zeroing機能

シックディスクなどを作るときの連続ゼロデータ書き込みをESXiホストではなくストレージ側のリソースで行います。また、VMware FTを利用するVMの仮想ディスク作成などでも活用されます。

●Full Copy機能

データコピーをESXiホストが行うのではなくストレージ側のリソースで行います。VMクローンやStorage vMotionなどが該当します。

●HW Assisted Locking ( ATS ) 機能

VMFSボリュームのファイルやメタデータの更新についてSCSIリザベーションによるロックではなくATS ( Atomic Test and Set ) アルゴリズムに基づいて実行します。このためロック単位が小さくなり、IOの待機時間を短縮できます。特にVDI環境のブート時に遅延を低減させます。

●Thin Provisioning機能 ( vShpere 5以降 )

vShpereではVMFS経由でデータディスクを保持しているため、ストレージ側でファイルシステム上、どのようにデータの配置がなされているかが不明でした。また逆にストレージの機能でThin Provisioningを使った場合、vSphere側ではその実装が不明でした。この問題をVMware側とストレージベンダー側はVAAIを使って解決します。


これらの機能はストレージごとで異なる振る舞いをするもので、それらの違いを吸収するためESXiではPSA ( Pluggable Storage Architecture ) と呼ばれる仕組みが取り入れられています。また、デフォルトで既にいくつかのプラグインがESXiにインストールされており、適用するためのフィルタルールが登録されています。フィルタルールおよびプラグインはesxcliでリスト表示することが可能です。

~ # esxcli storage core claimrule list --claimrule-class=Filter
Rule Class   Rule  Class    Type    Plugin       Matches
----------  -----  -------  ------  -----------  ----------------------------
Filter      65429  runtime  vendor  VAAI_FILTER  vendor=MSFT model=Virtual HD
Filter      65429  file     vendor  VAAI_FILTER  vendor=MSFT model=Virtual HD
Filter      65430  runtime  vendor  VAAI_FILTER  vendor=EMC model=SYMMETRIX
Filter      65430  file     vendor  VAAI_FILTER  vendor=EMC model=SYMMETRIX
Filter      65431  runtime  vendor  VAAI_FILTER  vendor=DGC model=*
Filter      65431  file     vendor  VAAI_FILTER  vendor=DGC model=*
Filter      65432  runtime  vendor  VAAI_FILTER  vendor=EQLOGIC model=*
Filter      65432  file     vendor  VAAI_FILTER  vendor=EQLOGIC model=*
Filter      65433  runtime  vendor  VAAI_FILTER  vendor=NETAPP model=LUN*
Filter      65433  file     vendor  VAAI_FILTER  vendor=NETAPP model=LUN*
Filter      65434  runtime  vendor  VAAI_FILTER  vendor=HITACHI model=*
Filter      65434  file     vendor  VAAI_FILTER  vendor=HITACHI model=*
Filter      65435  runtime  vendor  VAAI_FILTER  vendor=LEFTHAND model=*
Filter      65435  file     vendor  VAAI_FILTER  vendor=LEFTHAND model=*

~ # esxcli storage core claimrule list --claimrule-class=VAAI
Rule Class   Rule  Class    Type    Plugin            Matches
----------  -----  -------  ------  ----------------  ----------------------------
VAAI        65429  runtime  vendor  VMW_VAAIP_MASK    vendor=MSFT model=Virtual HD
VAAI        65429  file     vendor  VMW_VAAIP_MASK    vendor=MSFT model=Virtual HD
VAAI        65430  runtime  vendor  VMW_VAAIP_SYMM    vendor=EMC model=SYMMETRIX
VAAI        65430  file     vendor  VMW_VAAIP_SYMM    vendor=EMC model=SYMMETRIX
VAAI        65431  runtime  vendor  VMW_VAAIP_CX      vendor=DGC model=*
VAAI        65431  file     vendor  VMW_VAAIP_CX      vendor=DGC model=*
VAAI        65432  runtime  vendor  VMW_VAAIP_EQL     vendor=EQLOGIC model=*
VAAI        65432  file     vendor  VMW_VAAIP_EQL     vendor=EQLOGIC model=*
VAAI        65433  runtime  vendor  VMW_VAAIP_NETAPP  vendor=NETAPP model=LUN*
VAAI        65433  file     vendor  VMW_VAAIP_NETAPP  vendor=NETAPP model=LUN*
VAAI        65434  runtime  vendor  VMW_VAAIP_HDS     vendor=HITACHI model=*
VAAI        65434  file     vendor  VMW_VAAIP_HDS     vendor=HITACHI model=*
VAAI        65435  runtime  vendor  VMW_VAAIP_LHN     vendor=LEFTHAND model=*
VAAI        65435  file     vendor  VMW_VAAIP_LHN     vendor=LEFTHAND model=*

■ESXi側の設定

デフォルトでESXi5.5ではVAAIが有効になっていますが、どの箇所で有効無効の設定ができるのか確認しておきます。vSphere Clientの管理画面から「構成」-「詳細設定」をクリックします。



DataMoverの項目をクリックします。ここでFull CopyとBlock Zeroning機能を設定しています。「DataMover.HardwareAcceleratedInit」と「DataMover.HardwareAcceleratedMove」にそれぞれ1が入力されています。1で有効、0で無効になります。


VMFS3の項目をクリックします。これはVMFS3の項目の「VMFS3.HardwareAcceleratedLocing」に1が入力されており既に有効化されています。これがHW Assited Locking機能です。これも同様に0を入力すると無効化されます。


注意点としてVAAIはあくまで「同一ストレージ上の処理」であり、「同一ブロックサイズのVMFS」であることが前提条件となります。



 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.