WSUS で定期的なクリーンアップ、ちゃんとやっていますか?

WSUS って、構築するだけして運用が決まるまで放置って割とよくあると思います。

ただし、定期的なクリーンアップはして下さい。

クリーンアップウィザード

以下のように WSUS にはクリーンアップウィザードというものが存在し、定期的な実行が必要です。

クリーンアップ ウィザードは WSUS の運用を行う上で、メンテナンスの一環として必ず定期実行することをお勧めしている~

WSUS のクリーンアップ ウィザードについて | Technet

定期的に実行しないとどうなるかというと、下図のようになります。

更新プログラムを溜めすぎた悲劇

追記

そのほかにも「インデックスの再構築」や「WsusPool のプライベート メモリ制限を引き上げる」といった方法で解消する場合もあります。

WSUS は残念ながら、独自に SUSDB をメンテナンスする機能を有していないので、長期運用を続けることで SUSDB にデータの登録や削除が繰り返されると、インデックスの断片化が進みます。

WSUS は IIS のアプリケーション プールとして WsusPool という独自のものを使用していますが、このアプリケーション プールがリサイクルするまでにワーカー プロセスが使用できるプライベート メモリの最大容量が、既定では 1843200 KB (約 1.8 GB) に設定されています。

そのため、WSUS における同期や承認の設定、多数のクライアントからの更新プログラムの取得処理などが重なって、WsusPool が使用するメモリが多くなると、繰り返しリサイクルが発生し、動作が重くなることがあります。(場合によっては、WsusPool が停止することもあります。)

空きメモリに余裕があれば、この「プライベート メモリ制限」を引き上げることで、リサイクルが発生するまでの間隔が長くなり、動作が安定します。

「WSUS 管理コンソールにつながらない!」を解消するための 6 つのワザ | Microsoft Docs より引用

上図のような事態を避けるためにも、やはりクリーンアップウィザードは重要です。時々実行するようにしましょう。

具体的にはオプションから「サーバー クリーンアップ ウィザード」をクリックします。

クリーンアップウィザードが開始するので不要なものにチェック(基本的に全てチェックでOKです)し、実行します。

なお、WSUS の GUI では定期的にクリーンアップウィザードを実行するようにはできないので、PowerShell をタスクスケジューラで自動実行するように設定します。詳細は冒頭の Technet を参照してください!

クリーンアップが失敗する場合

あまりに長い間クリーンアップをしていなかった場合、「丸1日かけてもクリーンアップウィザードが終了しない」「クリーンアップウィザードが途中で失敗する」といったことが発生します。その際はチェックボックスの数を減らして何度もリトライしましょう。クリーンアップウィザードは途中で失敗してもその分までの処理はロールバックされないので、何度もやっているといつか終了できます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)