IISのWsusPoolが落ちる、停止する対処法についてですが、Windows Server 2019で必要なメモリ数、スペックはどれくらい必要なのかという情報になります。
先日、Windows Server 2019でWSUSを構築しましたが、メモリが意外と足らないということに気づきました。移行作業を行ったのですが、もともとのWSUSのメモリが不足していて、IISのアプリケーションプールのWsusPoolが停止していました。
当然、メモリが不足しているから発生するわけですが、このメモリのサイジングが意外と難しいというか、実際に構築して運用した人でないと適切なメモリサイズは出しずらいのではないかと思います。
以下はフォーラムの情報になりますが、WsusPoolが一定の時間になると止まるという内容です。
以下は質問内容です。
WsusPoolが一定の時間になると止まってしまいます。
対処としてメモリー数を上げるというのをやりました。「1843200」→「4000000」に変更しました。※全体で8Gです
WsusPoolが落ちる前後で、イベントID「5117」「5138」「5013」が繰り返し出て最後に「5002」が出て止まります。タスクマネージャーを見たら「IIS Worker Process」のメモリー数がぐんぐん上がっていました。
ログを見ろという内容ですが、WSUSはマイクロソフトからベストプラクティスの情報があります。
Windows Server Update Services のベスト プラクティス
https://support.microsoft.com/ja-jp/help/4490414/windows-server-update-services-best-practices
以下のような設定変更が紹介されています。
推奨される変更の概要と、関連するスクリーン ショットを次に示します。
~
キューの長さ = 2000 (デフォルトの 1000 から増加)
アイドル タイムアウト (分) = 0 (デフォルトの 20 から減少)
Ping の有効化 = False (デフォルトの True から)
プライベート メモリ制限 (KB) = 0 (無制限、デフォルトの 1843200 KB から増加)
通常の時間間隔 (分) = 0 (リサイクルを防ぎ、デフォルトの 1740 から変更)
ここでプライベート メモリ制限を無制限にするわけですが、8GBメモリだと不足することになると思います。逆にこれにより、台数に換算してどれくらいのメモリが必要なのかというのがわかると思います。
中々本番環境以外でサイジングは難しいですし、マイクロソフト側も台数あたりのメモリ計算など出していない?と思いますが、これまでの経験上、8GBは少ないと感じました。
1000台くらいの端末、サーバがある場合は、12GBくらいあったほうがいい気がします。さらに、端末の台数が増える場合は、さらなるメモリ数が必要と思います。
WSUSは停止してもすぐに業務に影響を与えるわけではないので、仮想マシンであれば、メモリを増設するなどの対処をすることで適切なサイズに設定が可能と思いますので、各環境でメモリ数は検討することが重要です。メモリが不足する場合は、上記にある通り、アプリケーションプールが停止して、適切に更新プログラムが配信されないということになりますので、ベストプラクティスを参考に調整していくことが重要ですね。一度、サイジングができてしまえば、次のリプレイスはそれほど悩まないと思います。