Schaalbaar Windows patchbeheer voor virtuele machines

In dit artikel wordt de aanbevolen aanpak beschreven voor het operationeel maken van updates van besturingssystemen op Windows virtuele machines (VM's) in uw workload. Het aanbevolen proces biedt een consistente, schaalbare en beheerde oplossing voor patchbeheer voor de Windows VM's in uw workload. Hiermee kunt u updates valideren in preproductieomgevingen voordat u ze naar productie promoveert.

Effectief patchbeheer gaat verder dan het installeren van updates. Een strategie voor patchbeheer vereist ook consistente governance om ervoor te zorgen dat VM's worden toegevoegd aan de patchbeheeroplossing, geconfigureerd volgens workloadstandaarden en continu worden bewaakt op naleving.

Opmerking

Dit artikel richt zich op Azure Virtuele Machines. Hoewel Azure Update Manager ook ondersteuning biedt voor servers met Azure Arc, zijn er aanvullende overwegingen bij hybride scenario's betrokken en worden hier niet besproken.

Zie Azure automatische upgrades van installatiekopieën van het besturingssysteem voor Virtual Machine Scale Sets voor meer informatie over Virtual Machine Scale Sets.

Azure Update Manager

De aanbevolen methode voor het beheren van Windows besturingssysteemupdates op Azure Windows VM's is het gebruik van Updatebeheer. Deze service biedt gecentraliseerde plannings- en nalevingsrapportage en de mogelijkheid om gefaseerde besturingssysteemupdate-implementaties voor uw VM's uit te voeren. Updatebeheer werkt via een sidecar Azure VM-extensie die op elke VM in uw workload is geïnstalleerd. Update Manager host of distribueert patches zelf niet. Het beheert en activeert de systeemeigen Windows Update Agent (WUA) op elke VIRTUELE machine.

Update Manager geeft uw workloadteam een centrale weergave van de patchstatus van VM's in uw omgeving. U kunt uw patchdoelen en frequenties instellen en patch-implementatie op aanvraag inschakelen.

Tip

Update Manager installeert Windows updates met behulp van de WUA-API. Omdat deze updates de Windows Update orchestratorwerkstroom omzeilen die wordt gebruikt door Windows Instellingen, worden ze mogelijk niet weergegeven in instellingen>Windows Update>Updategeschiedenis. Dit gedrag wordt verwacht. Controleer de WindowsUpdateClient-gebeurtenissen in Windows Logboeken om de installatie van de update te controleren.

organisatie van Azure-resources

Updatebeheer is geen Azure resource. U implementeert deze niet in de abonnementen van uw workload. Deze is beschikbaar in de Azure-portal en de ervaring in de portal is gebaseerd op RBAC en abonnementsneutraal. U onderhoudt de onderhoudsconfiguraties, welke besturingssysteempatches van toepassing zijn, wanneer deze patches worden toegepast en de koppeling van de configuraties naar de VM's van uw workload als Azure resources.

Elke onderhoudsconfiguratie kan één planning hebben en kan een willekeurig aantal resources bereiken via koppelingen. Onderhoudsconfiguraties zijn regionale bronnen. Gebruik één onderhoudsconfiguratie en een set koppelingen om alleen VM's binnen dezelfde regio en hetzelfde abonnement op te nemen. Als u deze aanpak gebruikt, hebt u afzonderlijke onderhoudsconfiguratieresources voor alle omgevingen en mogelijk meer dan één resource per omgeving als uw workload meerdere regio's heeft of verschillende updateschema's heeft voor verschillende onderdelen van de workload.

Onderhoud uw onderhoudsconfiguratieresources als onderdeel van de IaC van uw workload voor die omgeving. Met deze aanpak kunt u wijzigingsbeheerprocessen en veilige implementatieprocedures uitvoeren en krijgt u een optie voor herstel na noodgevallen.

VM-vereisten

De Windows-VM's moeten een ondersteunde aangepaste of Azure Marketplace installatiekopieën gebruiken. Ongeacht de bron moet u het besturingssysteem configureren om updates te ondersteunen. De aanbevolen methode is via de IaC van uw VM, waarmee de vereiste besturingssysteeminstellingen worden geconfigureerd. Zorg er met name voor dat uw VM's ten minste de volgende instellingen hebben:

windowsConfiguration: {
  provisionVMAgent: true
  enableAutomaticUpdates: true

  patchSettings: {
    patchMode: 'AutomaticByPlatform'  // Turns off automatic updates in the OS; now platform triggers updates
    assessmentMode: 'AutomaticByPlatform' // Scans for missing updates every 24 hours

    automaticByPlatformSettings: {
      bypassPlatformSafetyChecksOnUserSchedule: true  // Allows Azure Update Management to honor defined schedules
      rebootSetting: 'IfRequired'  // Or 'Never' if required in your workload
    }
  }
}

De Windows Gastagent installeert een sidecar-extensie met de naam Microsoft.CPlat.Core.WindowsPatchExtension. Deze bevoegde extensie wordt uitgevoerd op uw VM's om de planning op te halen en de configuratie bij te werken. Ook worden de systeemeigen Windows API's voor het bijwerken van het besturingssysteem aangeroepen om de updates uit te voeren. U definieert deze extensie niet als onderdeel van uw VM IaC. Update Manager installeert het automatisch en onderhoudt de levenscyclus.

De WindowsPatchExtension extensie overschrijft de instellingen van de updatebron niet op de computer. U bent nog steeds verantwoordelijk voor het configureren van de updatebron voor uw VM's:

  • De Windows Update-opslagplaats (Windows besturingssysteem en specifieke stuurprogramma's)
  • De Microsoft Update-opslagplaats (Windows besturingssysteem, specifieke stuurprogramma's en specifieke Microsoft producten)
  • Als uw organisatie nog steeds workloads nodig heeft om er een te gebruiken, is er een Windows Server WSUS-server (Update Services) (nu afgeschaft)

Zie Ondersteunde updatebronnen, typen, Microsoft toepassingsupdates en niet-Microsoft-updates voor meer informatie over ondersteunde bronnen.

Schakel automatische evaluaties in zodat uw nalevingsrapportage de huidige gegevens weerspiegelt. Deze functie toont de status van elke VIRTUELE machine met betrekking tot uw patchbasislijn en markeert nieuwe blootstellingen vóór de volgende geplande uitvoering. Evaluatie omvat alleen actieve VM's. Vm's die zijn gestopt of de toewijzing ervan ongedaan maken, worden niet gescand.

Important

Omdat Update Manager rechtstreeks systeemeigen Windows besturingssysteemmogelijkheid aanroept, is het belangrijk dat besturingssysteeminstellingen correct zijn geconfigureerd om patches te ondersteunen.

  • Zorg ervoor dat groepsbeleid, Microsoft Intune of andere hulpprogramma's voor configuratiebeheer niet de instellingen van het besturingssysteem overschrijven die nodig zijn om UpdateBeheer correct te laten functioneren op uw VM's. Zie Windows Update-instellingen configureren in Azure Update Manager voor specifieke configuratiewaarden.
  • Firewalls op besturingssysteemniveau mogen updateverkeer niet blokkeren.

Beleidsafdwinging

Uw workload moet ook Azure Policy gebruiken om af te dwingen dat uw VM's correct worden geconfigureerd voor UpdateBeheer. Pas het ingebouwde Azure Update Manager-beleid toe om configuratiedrift te voorkomen. Het ingebouwde beleid biedt ondersteuning voor DINE (deployIfNotExists) en wijzig afdwinging om niet-compatibele VM's automatisch te herstellen.

Zie Periodieke evaluatie en geplande patching inschakelen op Azure VM's met behulp van een beleid voor een beleidsgestuurde benadering voor patchbeheer. Gebruik deze methode als uw workload geen IaC gebruikt om uw VM's te implementeren en te configureren.

Netwerkvereisten

Voor Azure-VM's met directe uitgaande internettoegang werkt Windows Update meestal zonder aanvullende netwerktoelatingslijsten, mits de updatebron voor het gastbesturingssysteem, DNS, proxy, TLS-inspectie en lokale beleidsinstellingen Windows Update-/Microsoft Update-verkeer toestaan. De meeste workloads werken echter in vergrendelde virtuele netwerken met beperkte uitgaande toegang. In dergelijke gevallen moet u verkeer toestaan om eindpunten bij te Microsoft in alle netwerkbeveiligingsgroepen en firewalls die u uitvoert.

Netwerkbeveiligingsgroepen

Standaardupdatebronnen, waaronder Windows Update, zijn gebaseerd op DNS en publiceren geen stabiele statische IP-lijsten. Daarom moet voor door internet gehoste updatebronnen een netwerkbeveiligingsgroep die is gekoppeld aan de NIC van de VIRTUELE machine of het subnet internetverkeer ondersteunen naar TCP:443 en TCP:80. U moet de toegang binnen uw firewall voor uitgaand verkeer verder beperken. Als uw updates afkomstig zijn van een statisch IP-adresbereik (zoals een on-premises bron), moet u deze uitgaande bestemming expliciet definiëren in uw netwerkbeveiligingsgroep.

Uitgaande firewall

Uw uitgaande firewall moet verkeer naar de FQDN's toestaan die worden gebruikt door uw updatebron. Als u Azure Firewall en een door Microsoft geleverde updatebron gebruikt, gebruikt u de FQDN-tag WindowsUpdate om uitgaande toegang tot Windows Update eindpunten toe te staan. Zie Firewalls configureren voor meer informatie over het configureren van andere uitgaande firewalls in uw netwerkpad. U moet dit verkeer alleen toestaan wanneer het afkomstig is van uw Windows VM's, niet van niet-gerelateerde subnetten in uw workload.

VM's koppelen aan een onderhoudsconfiguratie

Hoewel u statische koppelingen tussen een onderhoudsconfiguratie en uw VM's kunt maken, gebruikt u in plaats daarvan dynamisch bereik. Dynamische bereiken bepalen welke VM's zijn gekoppeld aan de onderhoudsconfiguratie op basis van kenmerken zoals resourcegroep, locatie en tags. De onderhoudsconfiguratie, niet het dynamische bereik, definieert welke updates worden geïnstalleerd en wanneer ze worden geïnstalleerd. Dynamische scoping neemt automatisch overeenkomende nieuwe VM's op, zonder dat u resources voor configuratiekoppelingen per VM hoeft te beheren.

Wanneer u dynamische bereikregels gebruikt, volgt u deze aanbevelingen:

  • Beheer de dynamische bereikregels in IaC als onderdeel van uw workload.
  • Als u afhankelijkheden tussen omgevingen wilt voorkomen, moet u alleen VM's uit uw omgeving opnemen, configuratie en dynamische bereikregels dupliceren voor omgevingen, indien nodig.
  • Gebruik tags als het primaire mechanisme voor koppeling en dwing hun gebruik af met behulp van Azure Policy.

Een gefaseerd patchschema ontwerpen

Een typisch patchschema voor een workload maakt gebruik van gefaseerde implementatieschema's. Pas na de maandelijkse Microsoft updaterelease eerst updates toe op ontwikkel- en test-VM's. Nadat u deze updates hebt gevalideerd, promoveert u dezelfde classificatie van updates voor preproductie en productie in afzonderlijke onderhoudsvensters.

Maak onderhoudsconfiguraties om het terugkeerpatroon, onderhoudsvenster, updateclassificaties en het gedrag van opnieuw opstarten te definiëren. Maak vervolgens uw dynamische bereikkoppeling om vm's in uw workload te richten om uw routinepatchingschema uit te voeren.

Een patch op dinsdag afgestemd schema staat doorgaans een paar dagen voor validatie toe voordat de productie-implementatie wordt geïmplementeerd. Omdat Microsoft maandelijkse beveiligingsupdates over het algemeen op de tweede dinsdag van elke maand worden uitgebracht, kan een voorgestelde benadering er als volgt uitzien. In dit voorbeeld worden de doel-VM's beheerd via een dynamische bereikregel die gebruikmaakt van tags.

Environment Schema resourcetag van VM Updates Opnieuw opstarten
Ontwikkeling Tweede dinsdag
2200-0000
PatchGroup = Backend of PatchGroup=Frontend Kritiek en beveiliging Indien nodig
Test Tweede woensdag
2200-0000
PatchGroup = Backend of PatchGroup=Frontend Kritiek en beveiliging Indien nodig
Productieback-end (fase 1) Tweede zaterdag
2200-0100
PatchGroup=Backend Kritiek en beveiliging Indien nodig
Productiefront-end (Wave 2) Volgende zondag
2200-0100
PatchGroup=Frontend Kritiek en beveiliging Indien nodig

Gelijktijdigheid van updates verwerken

Met een onderhoudsconfiguratie worden updates op alle gekoppelde VM's tegelijk gestart. Azure voert herstarts alleen per updatedomein sequentieel uit voor VM's in dezelfde beschikbaarheidsset. De Backend- en Frontend-golven in dit voorbeeld verdelen het schema per laag, niet op basis van redundante capaciteit, waardoor elk exemplaar in een laag tegelijk opnieuw kan opstarten en die laag onder de vereiste capaciteit kan brengen.

Splits binnen elke productielaag patching in golven met capaciteitsbehoud die zijn afgestemd op uw beschikbaarheidszones, updatedomeinen of workloadgedefinieerde exemplaargroepen. Gebruik voor elke uitrolgolf een afzonderlijke tagwaarde en onderhoudsconfiguratie.

Implementatieconsistentie overwegen

Update Manager voert bij elke uitvoering een nieuwe evaluatie uit. Planningen op basis van classificatie kunnen daarom updatepakketten selecteren die zijn gekoppeld aan een ander Kb-artikel (Knowledge Base) in latere golven. Als elke golf de exacte gevalideerde updateset moet installeren, configureert u expliciete KB-insluitingen in plaats van alleen te vertrouwen op classificaties.

U kunt deze configuratie automatiseren met behulp van de Update Manager REST API om de evaluatieresultaten van de eerste golf op te vragen en vervolgens de onderhoudsconfiguratie voor volgende golven bij te werken.

Het compromis dat u moet sluiten om volledige consistentie tussen waves te bereiken, is een aanzienlijke complexiteit van de orkestratie. Als uw workload het risico kan tolereren dat een latere golf een ander updatepakket installeert dan de eerste golf, gebruikt u het schema op basis van classificatie.

Het opnieuw opstarten verminderen met hotpatching

Opnieuw opstarten is vaak het meest verstorende onderdeel van een patchplanning. Ze bepalen de grootte van het onderhoudsvenster en het gedrag van opnieuw opstarten in de voorgaande tabel. Op ondersteunde installatiekopieën installeert hotpatching Windows beveiligingsupdates door de in-memory code van actieve processen te patchen, zodat updates voor de meeste maanden van toepassing zijn zonder opnieuw op te starten. Hotpatch is een uitbreiding van Windows Update, dus Update Manager installeert hotpatches met behulp van dezelfde onderhoudsconfiguraties en dynamische scoping die u voor uw andere VM's gebruikt.

Als uw workload gevoelig is voor opnieuw opstarten, moet u een SKU voor het besturingssysteem en het ontwerp gebruiken dat ondersteuning biedt voor hotpatching:

  • Hotpatch is alleen beschikbaar voor specifieke Windows-installatiekopieën. U kunt hotpatch niet inschakelen op een willekeurige aangepaste image.
  • Alleen beveiligingsupdates voor Windows worden via hotpatching toegepast. Niet-beveiligingsupdates, .NET updates en stuurprogramma- of firmware-updates vereisen nog steeds opnieuw opstarten in de maanden wanneer ze worden uitgebracht. Driemaandelijkse hotpatchbasislijnen en elke ongeplande basislijn die Microsoft uitbrengt voor een oplossing van een zero-daylek, vereisen ook een herstart. Houd een onderhoudsvenster dat een herstart kan absorberen.

Problemen 'voor' en 'na' afhandelen

Update Manager evalueert en installeert updates van het besturingssysteem, maar een geslaagd patchproces kan activiteiten voor en na het onderhoudsvenster omvatten om de vereiste herstarts of toepassingsspecifieke problemen correct af te handelen. Update Manager biedt pregebeurtenissen en postgebeurtenissen die u kunt gebruiken in de automatisering van uw workload. U voegt een gebeurtenis-handler, zoals een Azure-functie, toe aan de architectuur van uw workload. De gebeurtenis-handler reageert op Azure Event Grid meldingen vóór en na de geplande patchuitvoering.

Gebruik Update Manager-activiteiten vooraf patchen om taken als deze uit te voeren:

  • Start een gestopte of gedealloceerde VM. Vm's die zijn gestopt of de toewijzing ervan ongedaan gemaakt, kunnen niet worden gepatcht en worden overgeslagen.
  • Controleer of er back-upherstelpunten beschikbaar zijn.
  • Vm- en toepassingsstatus valideren.
  • Monitoringswaarschuwingen tijdelijk onderdrukken om valse positieven tijdens het onderhoudsvenster te voorkomen.

Nadat updates zijn geïnstalleerd, gebruikt u activiteiten na patches om taken als deze uit te voeren:

  • Bewaking herstellen.
  • Statuscontroles van toepassingen en services uitvoeren.
  • Plaats een kennisgeving op een Microsoft Teams-kanaal.

Event Grid en de rekenkracht van uw gebeurtenis-handler behandelen als workloadresources. Implementeer ze met IaC en isoleer ze tussen omgevingen.

Bereid je voor op updates op aanvraag

Update Manager biedt ondersteuning voor patchinstallatie op aanvraag buiten een gepland onderhoudsvenster. Deze functie is handig voor het toepassen van patches voor noodgevallen of kritieke out-of-cycle fixes, of voor het valideren van patchgedrag op één VIRTUELE machine vóór een bredere geplande implementatie. U kunt updates op aanvraag rechtstreeks vanuit de Azure-portal of de Update Manager REST API activeren op een of meer VM's tegelijk. Het workloadteam moet richtlijnen opstellen voor het uitvoeren van een out-of-band-update en hoe dit proces wordt ingedeeld in uw workload.

Updates terugdraaien

Update Manager biedt geen terugdraaiactie voor besturingssysteempatchs. Nadat u patches hebt toegepast, is er geen ingebouwd mechanisme om ze rechtstreeks via Updatebeheer te verwijderen.

Als uw workload de status 'laatst bekend goed' moet ondersteunen, maakt u een momentopname of herstelpunt voordat er onderhoud wordt uitgevoerd. Automatiseer het maken van momentopnamen voordat elk patchvenster wordt uitgevoerd om ervoor te zorgen dat er altijd een herstelpunt bestaat voordat patches worden toegepast. U kunt de VIRTUELE machine ook opnieuw implementeren zonder de patch, de problematische KB-patch uitsluiten van de implementatie en de updates opnieuw toepassen.

Important

Plan uw herstelstrategie voordat u geplande patches in productie inschakelt.

Nalevingsrapportage

Update Manager pusht zowel evaluatie- als patchinstallatieresultaten naar Azure Resource Graph, waarin wachtende updates gedurende 7 dagen en installatieresultaten gedurende 30 dagen worden opgeslagen. UpdateBeheer bevat ingebouwde rapportage- en beheerweergaven voor naleving die inzicht bieden in de updatestatus in uw omgeving. Met deze dashboards kunnen beheerders patchcompatibiliteit bewaken, computers identificeren die aandacht vereisen en de voortgang van de update-implementatie bijhouden vanaf een centrale locatie.

De vooraf gedefinieerde werkmappen bevatten belangrijke informatie over uw workload:

  • Een algemeen overzicht van de machinestatus en -configuratie
  • Een uitsplitsing van updates die in behandeling zijn op ernst en classificatie
  • Een overzicht van schema's, onderhoudsconfiguraties en de machines die aan elke planning zijn gekoppeld
  • Een historisch overzicht van eerdere installatieuitvoeringen, inclusief slagingspercentages en eventuele fouten

Veel organisaties vereisen dat hun toepassingsteams nalevingsrapportage bieden. In het ideale geval gebruikt uw organisatie Update Manager al voor die tracering, omdat de updatebeheerportal-ervaring en werkmappen over abonnementsgrenzen kunnen werken en u geen aangepaste patchstatusrapportage in uw workload hoeft op te geven.

Als u of uw organisatie aangepaste rapportage nodig heeft buiten de vooraf gedefinieerde weergaven, kunt u werkmappen aanpassen. Voeg aangepaste werkmappen toe aan de IaC-bestanden van uw workload om een wijzigingsbeheerproces toe te passen en een optie voor herstel na noodgevallen te bieden. U kunt ook de vereiste rapportagegegevens voor naleving opgeven via Resource Graph-query's.

Als uw workload de patchgeschiedenis langer moet bewaren dan Resource Graph behoudt, maakt u een proces om de gegevens te exporteren naar een archief dat u beheert.

Alternatieve benadering

Als u besluit de geplande, gefaseerde Update Manager-benadering voor uw workload niet te gebruiken, evalueert u automatische VM-gastpatching voordat u een aangepaste oplossing ontwerpt. Als u deze optie gebruikt, Azure patches voor u indelen. U geeft echter de volgende voordelen op als u deze aanpak gebruikt:

  • Gefaseerde implementatie. Updates worden niet gepromoveerd via ontwikkelings-, test- en productiegolven, zodat u validatiepoorten kwijtraakt.
  • Besturingselement voor onderhoudsvensters. Azure bepaalt wanneer patches worden uitgevoerd tijdens daluren in de tijdzone van elke VM.
  • Besturingselement voor updateclassificatie. Alleen essentiële en beveiligingsupdates worden toegepast. Andere updates worden niet automatisch geïnstalleerd.

Bijdragers

Microsoft onderhoudt dit artikel. De volgende inzenders hebben dit artikel geschreven.

Hoofdauteur:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen