こんにちは。
今回は地味に困ったときのネタです。
VMware Tools に含まれるDriver(vsepflt.sysとvnetflt.sys)でWindowsがBSODになることがあるので、その考察や見解についてです。
ESXi上で動作する仮想マシンには、ほとんどの場合、
VMware Tools をインストールしているとおもいますが、仮想マシンで動作するOSがWindows の場合、VMware Tools に含まれるvSheild関連(現在だとNSX関連)のDriverの動作が起因し、Windows がBSODになってしまったり、クラスターリソース(主にクラスタディスク)が見えなくなってしまうなどの事象が起こることがあります。
そのため、既知事例ということで、VMware 社はVMware KB 2082204 を公開しています。
+ vShield Endpoint Thin Agent (vsepflt.sys) および vShield Endpoint TDI Manager (vnetflt.sys) ドライバを使用してインストールされた Windows 仮想マシンが応答しなくなるか、障害が発生して青色の診断画面が表示される (2082204)
https://kb.vmware.com/kb/2082204
上記のVMware KB の説明では、VMware Tools 5.1 に影響する既知の問題で、ESXi 5.1 および 5.5 に影響する場合があり、ESXi 5.5 Update 2 で修正されていると記述されています。
しかしながら、ESXi 5.5 Update 2 以降の環境でも事象が発生する模様です。
実際に、vsepflt.sysとvnetflt.sysが起因と考えられるBSODを複数回確認しています。
調べたところ、VMware Tools に含まれるvsepflt.sysとvnetflt.sysの相互の連携における問題があり、BSODなどの事象が発生することがあるようです。(細かいことは謎)
・vShield Endpoint シン エージェント ドライバ (vsepflt.sys)
・vShield Endpoint TDI Manager ドライバ (vnetflt.sys)
BSODなどの事象が発生しないようにする回避策としては、
上記Driverのアンインストールもしくは、アンロードを実施します。
以下のVMware KBに方法は記載されています。
https://kb.vmware.com/kb/2082588 (英語)
https://kb.vmware.com/kb/2083369 (日本語)
vSheild やNSXを利用していない環境であれば、アンインストールしても支障はありません。
また、現在はデフォルトではインストールされないようになっています。
■参考画像
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
【その他の問題点1】
vShieldやNSXを使っていない環境であれば、上記Driverをアンインストールやアンロードを行えばいい話なのですが、もしvShield やNSXをばりばり使っている場合はそうもいきません。(NSX,vShieldは専門外ですが...)
vShield Endpoint シン エージェント ドライバ (vsepflt.sys)は、Windows ファイル システム フィルタ ドライバ で、その名のとおり、
ファイルシステムへのリクエストをフィルタリングするモジュールになっています。
フィルタドライバの説明はMicrosoft のBlogをご覧ください。
https://blogs.msdn.microsoft.com/jpwdkblog/2009/05/13/filesystem-filesystem-filter/
このフィルタドライバがその他のファイルシステムへのI/Oを阻害することが結構あり、BSODになることもあります。Windows は標準でディスクI/Oを60秒行えない状態が発生するとファイルシステムを守るために、BSODになるようレジストリで設定されています。
レジストリとしてはここです。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Disk\TimeOutValue
内容は異なりますが、似たVMWare KB もありました。
https://kb.vmware.com/kb/2080692
こういった事情もあり、アンインストールおよびアンロードできない場合はなかなか厄介です。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
【その他の問題点2】
上記で、vShield Endpoint シン エージェント ドライバ (vsepflt.sys)のことを記載しましたが、vSphere 環境で動作するセキュリティ製品で vsepflt.sys が動作要件になっているものがあります。
例えば、トレンドマイクロのDeepSecurity は vsepflt.sysが動作要件になっているようで、明確な要件が書かれた文献はすぐみつけれませんでしたが、以下のサポートページには、「 vsepflt が正常に動作していること を確認してください。」と記載されています。
http://esupport.trendmicro.com/solution/ja-JP/1313647.aspx
セキュリティ対策製品でvsepflt.sysが要件になっている場合は簡単にアンインストールできないでしょうし、困りものです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
問題点1,2にぶち当たったときは結局のところ、最新のVMware Toolsにして様子をみるしかないという感じかと思います。
VMware Product Interoperability Matrixes から現在使用しているESXiで利用可能なVMware Tools をみて、https://packages.vmware.com/tools からVMwareToolsのインストーラーを入手して、バージョンアップすることがお勧めです。
文脈がぐちゃぐちゃですが、今回はこのへんで。