Translate

ラベル Windows Server の投稿を表示しています。 すべての投稿を表示
ラベル Windows Server の投稿を表示しています。 すべての投稿を表示

2017年7月14日金曜日

WSUSの「接続エラー」の対処方法について

 WSUSを運用していると管理画面に「接続エラー」が表示されることがあります。最初のうちは「サーバノードのリセット」を行えば、再度接続できるようになるのですがその状態を放置し続けるとそのうちリセットしても再接続できなるなってきます。
 これはWSUSの運用を続けることで無駄なデータが蓄積されていくことによるもので、データベースの容量制限やメモリ不足であったり、IISのメモリ不足などさまざまな要因が重なることでおきるようです。
 以前、このブログ内でも「WSUSのクリーンアップ」という題名で紹介しておりますが、今回はそれでも問題が解決しない場合の対処方法について説明します。

■原因

接続エラーの主な原因は次のようなものが在るようです。
  • DBのディスク容量不足によりDBの処理に失敗する。
  • DBのメモリ不足によりDBの処理に失敗する。
  • IISのメモリ不足によりIISがクラッシュする。

■基本的な対策

 この対策は主にDBのディスク容量不足に対するものです。MSのサポート曰く基本的な対策として定期的に行ったほうが良いようです。
 詳しい内容は「WSUSのクリーンアップ」をご覧ください。

■IISの上限メモリを増やす

IIS内のアプリケーション(WsusPool)のメモリ制限を4GBに増やす。 4GBに設定すればほぼ安定するようですが、それでも安定しない場合はより多く確保してください。
  1. IISマネージャを起動して左ペインのWSUSのサーバ内にある「アプリケーションプール」を選択します。
  2. 次に右ペインの「WsusPool」右クリックして「詳細設定」を選択して詳細設定を開きます。
  3. 詳細設定内の「プライベートメモリ制限(KB)」を4000000(4GB)に設定する。
  4. 「OK」ボタンを押して設定を反映させる。

■DBの上限メモリを増やす

SQL ServerもしくはWindows Internal Databaseの最小メモリを1GBに増やす。

SQL Serverの場合

SQL Serverの場合はSQL Server Management Studioを起動して、サーバのプロパティを開き、メモリ内の「最小サーバーメモリ(MB)」を1024MBに設定するだけです。

Windows Internal Databaseの場合

  1. 管理者権限でコマンドプロンプトを起動します。
  2. Windows Internal Databaseに接続します。

    WSUS 3.0 SP2 の場合

    sqlcmd -E -S \\.\pipe\mssql$microsoft##ssee\sql\query
    

    Windows Server 2012 / 2012 R2 WSUS の場合

    sqlcmd -E -S \\.\pipe\MICROSOFT##WID\tsql\query
    
  3. 次のSQLを実行します。
    EXEC sp_configure 'show advanced options',1
    GO
    Reconfigure
    GO
    EXEC sp_configure 'min server memory',1024
    GO
    Reconfigure
    GO
    
  4. 次のSQLを実行しrun_value(最小メモリ)が1GBに設定されたことを確認します。
    EXEC sp_configure 'min server memory'
    GO
    
    出力例)
    name                                minimum     maximum     config_value run_value
    ----------------------------------- ----------- ----------- ------------ -----------
    min server memory (MB)                        0  2147483647         1024        1024
    

参考資料

より詳しい資料はMSのサポートページをご覧ください。詳しく説明されています。

2015年10月30日金曜日

WSUSのクリーンアップ

 今回はWSUSのデータベースの整理についての備忘録です。

 Windows Server Update Serviceの更新情報の管理はすべてデータベースで管理されています。DBは通常SQL Server Expressを使用して運用されますがここに問題があります。
 SQL Server Expressはスキーマごとに容量が4GBまでと制限されています。WSUSを数年も運用し続けるとこのデータベースはすぐに4GBを超えてしまいます。
 4GBを超えるとWSUSがデータベースを使用するたびに容量制限のログが記録されていき、これに気付かず放置し続けると1か月もすれば数十GBというログファイルが生成されます。
 ある日気づくとサーバのシステムドライブが容量不足になっていろいろな問題が発生…ということになります。
クリーンアップで解決できない場合はこちらも参考にしてみてください。
WSUSの「接続エラー」の対処方法について

■WSUS DBのインデックス整理

 データベースのインデックスを再構成することでサイズを若干減らすことができます。
 また、次の「WSUSのクリーンアップ」を行う前にもDBのインデックスを整理しておくことをお勧めします。サーバのクリーンアップを行ったことのない環境では特に作業に時間がかかるようで、インデックスを整理しておくことである程度改善できるようです。

WSUS DB インデックスの再構成の手順について

■WSUSのクリーンアップ

 対処方法としてはWSUSのオプションから「サーバー クリーンアップ ウィザード」を実行することです。

更新プログラムのクリーンアップについて

■WSUSの再構築

 最終手段としてはWSUSの再構築を行うことです。上記リンク先の「更新プログラムのクリーンアップについて」で記載されていますが、製品とクラスを再設定してもデータベースの容量は削減されないようです。
 この場合、再構築して製品とクラスを適正に設定することで、データベースを新たに作り直すことでサイズを減らすことができるようです。

■対象

OS: Windows Server 2008R2
Version: WSUS 3.0