仮想化でプリセールスしてるSEの一日

VMware から Azure まで、インフラや仮想化の最新情報をベンダー色をできるだけ抑えて綴っていきます

Windows Server 2012 ODX 機能の使い勝手 - (3) ODX の利用条件と制約

f:id:ogawad:20190203195637p:plain:right

(1) (2) (3) (4) (deep dive)

前回の最後で、いま現在の ODX 対応ストレージと選定にあたっての注意ポイント について触れました。引き続き、利用要件と制約について触れていきたいと思います。


ODX を利用できる環境

普通の環境であれば、問題が出ることは無いと思います。

(1) ホストからの直接発行
(2) リモート越しの代理発行
  • ホストとの接続プロトコル: SMB 3.0
  • リモート先ホストの要件として (1) や (3) も確認
(3) Hyper-V 仮想マシンからの代理発行


文章だけだと混乱するかもなので Hyper-V のケースを図にしてみました


VMware vSphere 仮想マシンの場合

SCSI コマンドに載った ODX 命令が、ストレージの LUN に滞りなく届けば良いだけなので、物理互換 RDM であればきっと大丈夫そう。
(近々検証しますので、結果は本 Blog にてご報告します)


ファイルシステムファイルシステムフィルタ

ファイルシステム

ODX コマンドがどのように流れていく場合でも、途中を経由するファイルシステムはすべて NTFS である必要があります。ReFS や FAT はサポートされません。

ファイルシステムフィルタ

FilterSupportedFeaturesMode パラメータの値が 0 (ODX 有効: 既定値) である必要があります。ODX 命令が通る経路上でこの値が 1 (ODX 無効) のものがあったり、非対応の OS があってはいけません。

また、本パラメータを活用することで、ODX の利用可否を OS 単位で設定することができます。


ODX の有効状態を確認する PowerShell

get-itemproperty hklm:\system\currentcontrolset\control\filesystem
-name "FilterSupportedFeaturesMode"


ODX の有効化

set-itemproperty hklm:\system\currentcontrolset\control\filesystem
-name "FilterSupportedFeaturesMode" -value 0


ODX の無効化

set-itemproperty hklm:\system\currentcontrolset\control\filesystem
-name "FilterSupportedFeaturesMode" -value 1

ODX と併用できない技術

なお、次の環境については ODX を利用できません。
(ドキュメントに載っているもの + 会社や私自身で検証したものより)

  • BitLocker、EFS、シャドウコピー有効時
  • スパースファイル、NTFS 圧縮済みファイル、重複除去(おそらく Junction も)
  • 64 を超えて断片化しているファイル、256 KB 以下のファイル
  • SMB 3.0 以外のリモートコピープロトコル:

System Center で多用される BITS 転送では利用できない

特に BITS(バックグラウンド インテリジェント転送サービス)にご注意ください。
System Center を併用した Hyper-V は、他のハイパーバイザー製品と異なり、テンプレート VHD や ISO イメージを「ライブラリサーバー」と呼ばれる CIFS 共有フォルダに蓄積します。SCVMM 環境で仮想マシンをデプロイしたり、ISO イメージのマウントする際には、通常 CIFS 共有から大容量ファイルが転送されます。

ここに ODX が使えると Hyper-V ユーザー誰もが喜ぶと思いますが、
現状の SCVMM SP1 では ODX を利用できません。WS2012 で構築し、SMB 3.0 の共有フォルダをライブラリにしたとしてもです。

これは「SCVMM の転送方法が SMB ではなく BITS over HTTP であるため」です。
BITS は SMB が 1.0 でイマイチだった頃に、少しでも転送効率を上げようと SystemCenter チームが開発した方式ですので思い入れが強いのかもしれません。
(但し、近い将来 SCVMM が ODX をサポートする計画もあると聞いています)


次回 につづく。

*1:SCSI コマンドを流さなければならないため、ネイティブ SATA は非対応

*2:SCSI コマンドを流さなければならないため、IDE コントローラー接続では利用できません

*3:私が試した限り、パススルーディスクがコピー元の場合 ODX は効きませんでした