Beste praktijken voor Windows Server Update Services

Dit artikel bevat tips voor het vermijden van configuraties die slechte prestaties ondervinden vanwege ontwerp- of configuratiebeperkingen in WSUS.

Originele productversie: Configuration Manager (huidige tak), Windows Server Update Services
Origineel KB-nummer: 4490414

Capaciteitslimieten

Hoewel WSUS 100.000 clients per server kan ondersteunen (150.000 clients wanneer u Configuration Manager gebruikt), raden we u af deze limiet te benaderen.

Overweeg in plaats daarvan een configuratie van 2-4 servers te gebruiken die dezelfde SQL Server-database delen. Zo hebt u veiligheid in cijfers. Als één server uitvalt, zal deze uw weekend niet onmiddellijk bederven, omdat er geen client kan worden bijgewerkt terwijl u moet worden bijgewerkt tegen de nieuwste zero-day exploit.

Het gedeelde databasescenario voorkomt ook een scanstorm.

Een scanstorm kan optreden wanneer veel clients WSUS-servers wijzigen en de servers geen database delen. WSUS houdt de activiteit in de database bij, zodat beide weten wat er is veranderd sinds een client voor het laatst is gescand en alleen metagegevens verzendt die sindsdien zijn bijgewerkt.

Als clients overschakelen naar een andere WSUS-server die gebruikmaakt van een andere database, moeten ze een volledige scan uitvoeren. Een volledige scan kan grote overdrachten van metagegevens veroorzaken. In deze scenario's kunnen overdrachten van meer dan 1 GB per client plaatsvinden, vooral als de WSUS-server niet correct wordt onderhouden. Het kan voldoende belasting genereren om fouten te veroorzaken wanneer clients communiceren met een WSUS-instantie. En clients proberen het in dit geval herhaaldelijk opnieuw.

Het delen van een database betekent dat wanneer een client overschakelt naar een andere WSUS-instantie die dezelfde DB gebruikt, de scanpenalty niet wordt opgelopen. De toename van de belasting is geen grote penalty die u betaalt voor het schakelen tussen databases.

Configuration Manager-clientscans eisen meer van WSUS dan de zelfstandige automatische updates. Configuration Manager, omdat het nalevingscontrole omvat, vraagt scans aan met criteria die alle updates retourneren die een willekeurige status hebben, behalve geweigerd.

Wanneer de agent voor automatische updates scant of u Controleren op updates selecteert in het Configuratiescherm, verzendt de agent criteria om alleen die updates op te halen die zijn goedgekeurd voor installatie. De geretourneerde metagegevens zijn meestal minder dan wanneer de scan wordt gestart door Configuration Manager. De updateagent slaat de gegevens in de cache op en de volgende scanaanvragen retourneren de gegevens uit de clientcache.

Recyclen uitschakelen en geheugenlimieten configureren

WSUS implementeert een interne cache waarmee de metagegevens van de update worden opgehaald uit de database. Deze bewerking is duur en zeer geheugenintensief. Dit kan ertoe leiden dat de IIS-toepassingsgroep die als host fungeert voor WSUS (ook wel WSUSPool genoemd) wordt gerecycled wanneer WSUSPool de standaardlimieten voor privé- en virtueel geheugen overschrijdt.

Wanneer de groep wordt gerecycled, wordt de cache verwijderd en moet deze opnieuw worden opgebouwd. Het is geen groot probleem wanneer clients deltascans ondergaan. Maar als u in een scenario met een scanstorm terechtkomt, wordt de groep voortdurend gerecycled. En clients ontvangen fouten wanneer u scanaanvragen maakt, zoals de fout HTTP 503.

We raden u aan de standaard Wachtrijlengte te verhogen en zowel de limiet voor virtueel als privégeheugen uit te schakelen door ze in te stellen op 0. IIS implementeert elke 29 uur een automatische recycling van de toepassingsgroep, ping en time-outs voor inactiviteit, die allemaal moeten worden uitgeschakeld. Deze instellingen vindt u in GROEPEN van IIS-beheertoepassingen>>, kies WsusPool en klik vervolgens op de koppeling Geavanceerde instellingen in het rechterdeelvenster van IIS-beheer.

Hier is een overzicht van aanbevolen wijzigingen en een gerelateerde schermopname. Raadpleeg Software-updates plannen in Configuration Manager voor meer informatie.

Naam instellen Waarde
Wachtrijlengte 2000 (vanaf standaard 1000)
Time-out voor inactiviteit (minuten) 0 (lager dan de standaardwaarde van 20)
Ping ingeschakeld Onwaar (van de standaardinstelling Waar)
Limiet voor privégeheugen (KB) 0 (onbeperkt, hoger dan de standaardwaarde van 1.843.200 KB)
Regulier tijdsinterval (minuten) 0 (om recyclen te voorkomen en gewijzigd van de standaardwaarde 1740)

Schermopname van de instellingen in het venster Geavanceerde Instellingen.

In een omgeving met ongeveer 17.000 updates in de cache, kan meer dan 24 GB geheugen nodig zijn terwijl de cache wordt opgebouwd totdat deze zich stabiliseert (ongeveer 14 GB).

Controleer of compressie is ingeschakeld (als u bandbreedte wilt besparen)

WSUS gebruikt een compressietype dat Xpress-versleuteling aanroept. Het implementeert compressie op metagegevens van updates en kan leiden tot aanzienlijke besparingen van bandbreedte.

Xpress-codering is ingeschakeld in IIS ApplicationHost.config met deze regel onder het element <httpCompression> en een registerinstelling:

  • ApplicationHost.Config

    <scheme name="xpress" doStaticCompression="false" doDynamicCompression="true" dll="C:\Program Files\Update Services\WebServices\suscomp.dll" staticCompressionLevel="10" dynamicCompressionLevel="0" />

  • Registersleutel

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\IIsDynamicCompression

Als beide niet aanwezig zijn, kan dit worden ingeschakeld door deze opdracht uit te voeren en vervolgens de WsusPool-toepassingsgroep in IIS opnieuw te starten.

cscript "%programfiles%\update services\setup\DynamicCompression.vbs" /enable "%programfiles%\Update Services\WebServices\suscomp.dll"

Xpress-codering voegt wat CPU-overhead toe en kan worden uitgeschakeld als bandbreedte geen probleem is, maar CPU-gebruik wel. Met de volgende opdracht wordt deze uitgeschakeld.

cscript "%programfiles%\update services\setup\DynamicCompression.vbs" /disable

Producten en categorieën configureren

Wanneer u WSUS configureert, kiest u alleen de producten en categorieën die u wilt implementeren. U kunt categorieën en producten die u later nodig hebt altijd synchroniseren. Als u ze toevoegt wanneer u niet van plan bent ze te implementeren, vergroot u de metagegevens en de overhead op de WSUS-servers.

Itanium-updates en andere onnodige updates uitschakelen

Het zou niet veel langer een probleem moeten zijn, omdat Windows Server 2008 R2 de laatste versie was die Itanium ondersteunde. Maar het is het vermelden waard.

Pas dit script aan en gebruik het in uw omgeving om updates van de Itanium-architectuur te weigeren. Het script kan ook updates weigeren die Preview of Bèta in de updatetitel bevatten.

Het leidt ertoe dat de WSUS-console sneller reageert, maar heeft geen invloed op de clientscan.

Achterhaalde updates weigeren en onderhoud uitvoeren

Een van de belangrijkste dingen die u kunt doen om WSUS beter te laten werken. Het langer dan nodig bewaren van updates die achterhaald zijn (bijvoorbeeld nadat u ze niet langer implementeert) is de belangrijkste oorzaak van WSUS-prestatieproblemen. Het is prima om ze in de te houden als u ze nog steeds implementeert. Verwijder deze nadat u klaar bent met ze.

Raadpleeg het artikel Volledige handleiding voor onderhoud van Microsoft WSUS en Configuration Manager SUP voor informatie over het weigeren van verouderde updates en andere WSUS-onderhoudsitems.

WSUS met SSL-installatie

WSUS is standaard niet geconfigureerd om SSL te gebruiken voor clientcommunicatie. De eerste stap na de installatie moet zijn om SSL op WSUS te configureren om te zorgen voor beveiliging tussen server-clientcommunicatie.

U moet een van de volgende acties ondernemen:

  • Maak een zelfondertekend certificaat. Het is niet ideaal omdat elke client dit certificaat moet vertrouwen.
  • Verkrijg er een van een externe certificaatprovider.
  • Haal er een op uit uw interne certificaatinfrastructuur.

Uw certificaat moet de korte servernaam, FQDN- en SAN-namen (aliassen) hebben die worden gebruikt.

Nadat u het certificaat hebt geïnstalleerd, voert u een upgrade uit van het groepsbeleid (of de instellingen voor clientconfiguratie voor software-updates in Configuration Manager) om het adres en de SSL-poort van de WSUS-server te gebruiken. De poort is doorgaans 8531 of 443.

Configureer bijvoorbeeld GPO Geef locatie van microsoft-updateservice voor intranet op in <https://wsus.contoso.com:8531>.

Raadpleeg Beveiligde WSUS met het Secure Sockets Layer Protocol om aan de slag te gaan.

Antivirusuitsluitingen configureren

Over cumulatieve updates en maandelijkse rollups

Mogelijk ziet u de termen Maandelijkse rollups en Cumulatieve update die worden gebruikt voor Windows-besturingssysteemupdates. Ze kunnen door elkaar worden gebruikt. Rollups verwijzen naar de updates die zijn gepubliceerd voor Windows 7, Windows 8.1, Windows Server 2008 R2 en Windows Server 2012 R2 die slechts gedeeltelijk cumulatief zijn.

Zie de volgende blogberichten voor meer informatie:

Met Windows 10 en Windows Server 2016 waren de updates vanaf het begin cumulatief:

Cumulatief betekent dat: u de releaseversie van het besturingssysteem installeert en alleen de laatste cumulatieve update hoeft toe te passen om volledig te worden gepatcht. Voor de oudere besturingssystemen hebben we dergelijke updates nog niet, hoewel dit in de toekomst wel zo zou kunnen zijn.

Voor Windows 7 en Windows 8.1 betekent dit dat er na de installatie van het meest recente maandelijkse rollup nog steeds meer updates nodig zijn. Hier is een voorbeeld voor Windows 7 en Windows Server 2008 R2 over wat er nodig is om een bijna volledig gepatcht systeem te hebben.

De volgende tabel bevat de lijst met maandelijkse rollups en cumulatieve updates van Windows. U kunt ze ook vinden door te zoeken naar Geschiedenis van windows-versie-updates<>.

Windows-versie Update
Windows 7 SP1 en Windows Server 2008 R2 SP1 Geschiedenis van Windows 7 SP1 and Windows Server 2008 R2 SP1-updates
Windows 8.1 en Windows Server 2012 R2 Geschiedenis van Windows 8.1 and Windows Server 2012 R2-updates
Windows 10 en Windows Server 2016 Geschiedenis van updates van Windows 10 en Windows Server
Windows Server 2019 Geschiedenis van updates van Windows 10 and Windows Server 2019

Een ander punt om te overwegen is dat niet alle updates worden gepubliceerd, zodat ze automatisch worden gesynchroniseerd met WSUS. Cumulatieve updates van week C en D zijn bijvoorbeeld preview-updates en worden niet gesynchroniseerd met WSUS, maar moeten in plaats daarvan handmatig worden geïmporteerd. Raadpleeg het gedeelte Maandelijkse kwaliteitsupdates van Onderhoudsinterval voor Windows 10-updates.

PowerShell gebruiken om verbinding te maken met een WSUS-server

Hier is een codevoorbeeld om u op weg te helpen met PowerShell en de WSUS API. Deze kan worden uitgevoerd waar de WSUS-beheerconsole is geïnstalleerd.

[void][reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$WSUSServer = 'WSUS'
# This is your WSUS Server Name
$Port = 8530
# This is 8531 when SSL is enabled
$UseSSL = $False
#This is $True when SSL is enabled
Try
{
    $Wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer($WSUSServer,$UseSSL,$Port)
}
Catch
{
    Write-Warning "$($WSUSServer)<$($Port)>: $($_)"
    Break
}

Verwijzingen