web-dev-qa-db-ja.com

2008R1SP2のpoolmon.exeファイルの「ファイル」タグのメモリリークを診断する

2008R1SP2ファイルサーバーの多くを悩ませているメモリリークがあります。 poolmon.exeの「ファイル」非ページメモリタグは、共有フォルダが使用できなくなるまでリークし、その後RDPがダウンします(コンソールから再起動する必要があります)。このリークは> 1.5G /日である場合があります。

poolmon

RamMap

何かを削除する必要がある場合、私はかなり良い予感を持っている必要があり、巨大なCMが承認される必要があります。これが発生し始めてからの唯一の変更は、McAfee Agent 5.0.2.132の追加でしたが、McAfeeを使用したAVは実行されていません(まだ実装されていない移行の準備中です)。 poolmon画面のMFEmタグがMcAfeeであることに気付きましたが、リークしているほとんどのサーバーのリストの上位にはありません。

また、NICドライバー(iANSまたはBCM8))までさかのぼるタグは、通常、非ページバイトソートの上位5〜6に表示されます。ネットワークからの分離はまだ試みていませんが、しかし、多分これは良い考えです。

私が理解している次の論理的な手順は、xperf/Windows Performance Toolkitを実行することですが、これには.NET 4.5が必要なようです。これは、いくつかの理由でインストールできません。

1)スタンドアロンで2008R1SP1と互換性のある古いバージョンのxperfをダウンロードする場所を知っている人はいますか(CLIのみ)?

2)#1が利用できない(またはせいぜいお粗末な考え)と仮定して、同様の方法でプールタグを追跡および追跡できる他のユーティリティはありますか?

3)私を正しい方向に向けるための提案はありますか?

3
kiwisan

マイクロソフトとのサポートケースの支払いを終えました。エンジニアは、McAfeeエージェントへのリークを追跡することができました。次のホットフィックスを(Microsoftごとに)インストールすると、2008 SP2サーバーでMcAfeeエージェントをアンインストールせずに、ページングされていないプールリークが解決されました:KB2029048、KB2961072、KB3019168。これがこの問題を抱えている他の誰かに役立つことを願っています。

時間を割いて助けてくれたここにいるすべての人に感謝します。

編集:気になる方のために、政治的な理由により、トラブルシューティング中にMcAfeeエージェントを無効にすることはできませんでした。大企業内の複数のIT部門で、関心が重複し、微妙なエゴがあります。さて、証拠は少なくともそれ自体を物語っています。 ;-)

1
kiwisan

直接的な答えではないかもしれませんが、あなたの「メタファイル」が非常に高いのを見たので、それに対するプライベートな修正があります。

システムファイルキャッシュが物理的なRAM -- https://support.Microsoft.com/en-us/kb/976618)のほとんどを消費すると、アプリケーションとサービスでパフォーマンスの問題が発生します。

そこで説明されています: http://blogs.technet.com/b/mspfe/archive/2012/12/06/lots-of-ram-but-no-available-memory.aspx

1
yagmoth555

メタキャッシュ+「ファイル」の使用率が高いことは、プログラムが多くのFileIO操作を実行することを示しています。 xperfを使用して、使用の原因を追跡しますWindows SDKのWPT をインストールします(8.1バージョンはWin7/2008R2でも動作しますが、古いServer 2008では動作しません)(そうでない場合は MSIインストーラー .Net Framework 4.5)をインストールし、 cmd.exe as admin を開いて、次のコマンドを実行します。

xperf -on PROC_THREAD + LOADER + POOL -stackwalk PoolAlloc + PoolFree + PoolAllocSession + PoolFreeSession -BufferSize 2048 -MaxFile 2048 -FileMode Circular && timeout -1 && xperf -d C:\ poolusage.etl

プールの使用量が増加する2〜3分をキャプチャします。 WPA.exeを使用してETLを開き(.net 4.5がインストールされている2台目のPCで)、プールグラフを分析ペインに追加します。

写真に表示されているように列を並べ替えます。 シンボルをロード WPA.exe内で、poolmonに表示された「File」タグのスタックを展開します。

enter image description here

ここで、Fileタグは locate32.exe によって使用され、ファイルシステムをスキャンして検索インデックスを組み込みます。

0
magicandre1981