Donnerstag, 30. April 2015

Windows Server Update Services 3.0 SP2 (WSUS) aufräumen

Heute habe ich mich dem WSUS auf einem Windows Small Business Server 2011 gewidmet. Prinzipiell funktionierte die Bereitstellung der Updates, jedoch sind mir einige unschöne Dinge aufgefallen:
  1. Es werden nicht alle Updates durch WSUS bereitgestellt. Ursache unklar.
  2. Der WSUS selbst braucht ebenfalls ein Update auf den aktuellen Build
  3. Die Übersicht in der WSUS Konsole begrüßt mit der Meldung, dass über 7000 Updates auf Genehmigung warten. Da stimmt was nicht.
  4. Bereinigungsassistent lief ewig und hat scheinbar nichts mehr gemacht. Wurde vom Kunden gekillt und der Server rebootet.

Nach Recherche und Rücksprache mit einem Kollegen stehen folgende Dinge auf der Agenda:
  1. Update des WSUS auf den aktuellen Stand
  2. Server reboot
  3. Reindex der SUSDB mit Hilfe des Skripts WsusDBMaintenance.sql
  4. Ausführen des WSUS Bereinigungsassistenten
  5. Schauen, ob das was gebracht hat

Update WSUS auf aktuellen Build


Für den WSUS - also den Update Dienst selbst - gibt es natürlich auch Updates. Diese kommen im Idealfall über die Updates am Server mit aber in meinem Fall nicht.
Die ausgelieferten Patches und den aktuellen Stand für den WSUS 3.0 SP2 findet man hier:

http://www.wsus.de/faq   (Scrollen zu Frage 44)

Stand 30.4.2015: WSUS 3.0 (SP2) + KB2938066: Build 3.2.7600.274

Auf dem Patienten war Build 256 installiert, d.h. die Updates auf 262 und 274 fehlten. Da es sich um kumulative Patches handelt, reicht es KB2938066 zu installieren und man hat direkt Build 274.

Den Patch einfach anhand der Nummer über die Suchmaschine der Wahl finden und herunterladen. In meinem Fall:

https://www.microsoft.com/de-de/download/details.aspx?id=43633

Ich bin mit dem Download erst nicht so recht klar gekommen. Button drücken, Architektur auswählen und "Next" klicken. Wenn wie in meinem Fall nach 30 Sekunden nichts passiert auf "Klicken Sie hier" klicken und dann erscheinen in der Übersicht direkte Download Links.

Nach Download des Patches diesen einfach doppelt anklicken. Die Installation hat ca. 20 Minuten gedauert und zwischenzeitlich hatte man den Eindruck, dass nichts mehr passiert. Es geht aber weiter also einfach warten.
Zum Abschluß kommt die Meldung zum Neustart - also Reboot.

Nachdem der Server wieder oben ist die WSUS Admin Console starten und die WSUS Version checken - siehe Screenshot FAQ (Frage 44) , Link oben.

Hat geklappt - gut kann man sich schonmal freuen. Weiter geht es.

Synchronisierung starten


Es wird empfohlen, nach dem Update eine Synchronisierung zu starten, d.h. den WSUS mit Windows Update abzugleichen. Dazu in der WSUS Konsole beim entsprechenden Host auf Optionen klicken. In der Mitte geht dann eine Liste auf und dort klickt man "Synchronisierungen". Rechts gibt es den Befehl "Jetzt synchronisieren". Draufklicken und warten bis die Synchronisierung fertig ist.

Reindexing der SUSDB


Wie hier zu lesen ist,
https://support.microsoft.com/en-us/kb/2938066

wird empfohlen, monatlich ein Reindexing der SUSDB durchzuführen. Den Sinn hinterfrage ich nicht - ich mache es einfach.

Das im Link genannte Skript WsusDBMaintenance.sql findet man hier:
https://gallery.technet.microsoft.com/scriptcenter/6f8cde49-5c52-4abd-9820-f1d270ddea61

Man kann es aber nicht herunterladen sondern muss es per STRG+C in einen Editor kopieren und abspeichern. Ich habe es wie im ersten Link beschrieben in das Binn Verzeichnis des SQLServers gelegt.

Also hier:
C:\Program Files\Microsoft SQL Server\100\Tools\Binn

Danach folgendes machen:

  1. CMD als Admin aufrufen (also Rechtsklick => als Admin ausführen)
  2. cd C:\Program Files\Microsoft SQL Server\100\Tools\Binn
  3. sqlcmd -I -i WsusDBMaintenance.sql -S \\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query

Das SQL-Skript muss man natürlich vorher wie beschrieben dort abgespeichert haben. Die Ausgabe des Skripts zeigt an, dass ein Rebuild von Indexes gemacht wird. Fehler kamen bei mir nicht. Nach ca. 5 Minuten war das Skript durch.

Serverbereinigung


Jetzt ist es Zeit, nochmal die Serverbereinigung anzuwerfen. Neuester  Build, SUSDB reindexed ... wenn es jetzt nicht geht, dann .... geht es nie ;)

Also WSUS Konsole -> beim entsprechenden Host auf Optionen. In der Liste in der Mitte wählt man "Assistent für Serverbereinigung".

Im ersten Schritt fragt der Assistent was er tun soll. Ich habe alle Haken drin gelassen und das Ding gestartet. Während ich diesen Artikel schreibe läuft der Assistent vor sich hin. Er steht beim Schritt "Nicht verwendete Updates werden gelöscht". Der Taskmanager zeigt permanant ca. 50% CPU-Last an. Manchmal geht es auch gegen 100%. Da passiert also was.
In der Prozessliste sind der SQL Server und der IIS als aktiv zu erkennen. Jetzt hilft nur warten.

Ich lasse den Assistent jetzt einfach weitermachen. Morgen ist "Tag der Arbeit"  - also Feiertag und dann kommt das Wochenende. Der Assistent hat also ein paar Tage Zeit, um alles schön aufzuräumen. Ich bin gespannt ...


Was hats gebracht?

Leider nicht viel. Nachdem ich unter Optionen-Produkte und Klassifierungen im Reiter Klassifizierungen zusätzlich noch Updates angehakt habe (damit auch optionale Updates über den WSUS kommen) hat sich die Lage zugespitzt.
Prinzipiell schien der WSUS noch irgendwie zu funktionieren aber praktisch war er tot. Die Verwaltungskonsole hat ständig den Fehler "Die Verbindung wurde zurückgesetzt" gemeldet und konnte nur benutzt werden, nachdem der Update Service unter Dienste angehalten wurde.

Neuinstallation

Nach Rücksprache mit dem Kunden wurde der WSUS deinstalliert. Dies ging einfach über die Serververwaltungskonsole durch Entfernen der entsprechenden Rolle. Der Assistent fragt ob die SUSDB auch gelöscht werden soll. Natürlich JA!

Die Neuinstallation gestaltete sich nicht ganz so einfach wobei ich nicht am gesamten Prozess beteiligt war. Wichtig ist, dass man zunächst eine leere SUSDB im SQL-Server erstellt und diese bei der Installation des WSUS auswählt.

Nachdem der WSUS lief erschienen realtiv schnell die Clients und Server in der Verwaltung, nur Updaten wollte diese nicht.
Es lag am Ende daran, dass beim neu installierten WSUS noch keine Updates gemacht wurden (Build 226). Ich habe also wieder auf Build 276 gepatch und dann ging es weiter.
Wichtig ist, dass man vor der Erstsynchronisierung bei Produkte und Klassifizierungen die Produkte abschaltet, die man nicht im Einsatz hat. Das sind im Normalfall eine ganze Menge. In der Folge werden diese Updates gar nicht erst in die Datenbank geladen.


FAZIT: Wenn eine WSUS Installation nach ein paar Jahren immer träger wird und man mit schnellen Maßnahmen wie dem Bereinigungsassistenten keinen Erfolg hat, sollte man gleich eine Neuinstallation machen.

Ein guter Leitfaden für Installation und Ersteinrichtung findet sich hier:
http://www-pc.uni-regensburg.de/systemsw/wsus/3/WSUS30SP2StepbyStep.pdf



Keine Kommentare:

Kommentar veröffentlichen