# Windows Server Health Check: Methodik & Optimierung

TL;DR / Management Summary Ein “laufender” Server ist nicht zwingend ein “gesunder” Server. Wir führen methodische Health Checks durch, um schleichende Performance-Einbußen (Bottlenecks) und Konfigurations-Drift zu erkennen. Ein Senior Admin nutzt dafür automatisierte Berichte, prüft die Hardware-Integrität via WMI und optimiert den Kernel für den spezifischen Workload (z.B. Webserver vs. SQL). Ziel ist eine Proaktive Administration, bevor der User den Fehler bemerkt.


# 1. Einführung & Das Health-Modell

Die 4 Säulen der Gesundheit.

Ein Health Check umfasst immer diese Bereiche:

  1. OS Integrity: Systemdateien, Updates, Boot-Stabilität.
  2. Resources: CPU, RAM, Disk, Network (Warteschlangen!).
  3. Roles: Läuft das AD sauber? Antwortet der DNS?
  4. Security: Sind Logs aktiv? Gibt es unautorisierte Admin-Logins?

# 2. Der 5-Minuten Quick-Check

CLI-Diagnose für zwischendurch.

Nutzen Sie diese PowerShell-Befehle für eine schnelle Bestandsaufnahme:

# 1. Uptime und Boot-Status
(Get-CimInstance Win32_OperatingSystem).LastBootUpTime

# 2. Disk Health (Volume Status)
Get-Volume | Select-Object DriveLetter, FileSystemLabel, HealthStatus, SizeRemaining

# 3. Fehlende kritische Dienste
Get-Service | Where-Object { $_.StartType -eq "Automatic" -and $_.Status -ne "Running" }

# 4. Letzte 5 Systemfehler im Log
Get-WinEvent -LogName System -MaxEvents 5 | Where-Object {$_.LevelDisplayName -eq "Error"}

# 3. Deep Dive: Ressourcen-Optimierung

Bottlenecks isolieren.

# Speicher-Optimierung

Windows Server nutzt freien RAM als File System Cache. Wenn “Available MBytes” niedrig ist, ist das meist gut. Erst wenn die “Harten Fehler/Sek” (Hard Page Faults) steigen, fehlt physischer RAM (Artikel 448).

# Disk-Latenz (Die echte Wahrheit)

Vergessen Sie die CPU-Last. In virtuellen Umgebungen (Proxmox) ist die Disk-Latenz das Hauptproblem.


# 4. Day-2 Operations: Best Practices Analyzer (BPA)

Der Rat des Herstellers.

Microsoft liefert für fast jede Rolle einen BPA mit.

Invoke-Bpa -BestPracticeAnalyzerId Microsoft/Windows/DirectoryServices
Get-BpaResult -BestPracticeAnalyzerId Microsoft/Windows/DirectoryServices | Where-Object {$_.Severity -eq "Error"}

# 5. Troubleshooting & “War Stories”

Wenn der Health-Check Alarm schlägt.

# Top 3 Fehlerbilder

  1. Symptom: Server ist träge, obwohl CPU bei 5%.

    • Ursache: Lock-Contention oder hohe DPC-Latenz (Treiber-Problem).
    • Lösung: LatencyMon nutzen, um den schuldigen Treiber zu finden.
  2. Symptom: “Cluster-Health” ist kritisch.

    • Ursache: Quorum-Loss oder asynchrone Zeit (NTP).
    • Lösung: w32tm /query /status prüfen (Artikel 487).
  3. Symptom: Applikation meldet “Out of Memory”, Task Manager zeigt 50% frei.

    • Ursache: Desktop Heap Exhaustion oder Handles Leak.
    • Tool: testlimit.exe (Sysinternals).

# “War Story”: Die “Schatten” CPU-Last

Ein App-Server hatte 100% CPU-Last auf Kern 0, alle anderen Kerne waren bei 0%. Die User klagten über Lags. Die Entdeckung: Eine alte Netzwerkkarte nutzte keine Receive Side Scaling (RSS). Der gesamte Traffic wurde von einem einzigen Kern verarbeitet. Lösung: Enable-NetAdapterRss ausgeführt. Die Last verteilte sich sofort auf alle 8 Kerne, die Latenz sank von 200ms auf 2ms. Lehre: Hardware-Offloading (RSS, VMQ) ist bei 10G-Netzen entscheidend für die Systemgesundheit.


# 6. Monitoring & Reporting

Regelmäßige Berichte.

# Der ‘Automated Health Report’

Lassen Sie sich jeden Morgen eine Zusammenfassung per Email schicken:


# 7. Fazit & Empfehlung

Ein Health Check ist keine Einmal-Aktion, sondern ein Rhythmus.


# Anhang: Checkliste für den monatlichen Health-Check

  1. [ ] BPA für alle Rollen ohne Errors?
  2. [ ] Windows Updates aktuell (Patch-Stand)?
  3. [ ] Disk-Latenz im Schnitt < 15ms?
  4. [ ] Keine “Unexpected Shutdowns” im Reliability Monitor?
  5. [ ] Event Log “System” frei von massiven Warnungen?

# Referenzen