Updates beheren met onderhoudsconfiguraties en de Azure CLI
Van toepassing op: ✔️ Linux-VM's ✔️ Windows-VM's ✔️ Flexibele schaalsets ✔️ Uniforme schaalsets
Met onderhoudsconfiguraties kunt u bepalen wanneer u platformupdates wilt toepassen op verschillende Azure-resources. In dit onderwerp worden de Azure CLI-opties voor het gebruik van deze service besproken. Zie Platformupdates beheren met onderhoudsconfiguraties voor meer informatie over de voordelen van het gebruik van onderhoudsconfiguraties, de beperkingen en andere beheeropties.
Belangrijk
Er zijn verschillende bereiken die ondersteuning bieden voor bepaalde machinetypen en schema's, dus zorg ervoor dat u het juiste bereik voor uw virtuele machine selecteert.
Een onderhoudsconfiguratie maken
De eerste stap voor het maken van een onderhoudsconfiguratie is het maken van een resourcegroep als container voor uw configuratie. In dit voorbeeld wordt een resourcegroep met de naam myMaintenanceRG gemaakt in eastus. Als u al een resourcegroep hebt die u wilt gebruiken, kunt u dit gedeelte overslaan en de naam van de resourcegroep vervangen door uw eigen resourcegroep in de rest van de voorbeelden.
az group create \
--location eastus \
--name myMaintenanceRG
Nadat u de resourcegroep hebt gemaakt, gebruikt az maintenance configuration create
u om een onderhoudsconfiguratie te maken.
Host
In dit voorbeeld wordt een onderhoudsconfiguratie gemaakt met de naam myConfig die is gericht op het hosten van machines met een geplande periode van 5 uur op de vierde maandag van elke maand.
az maintenance configuration create \
--resource-group myMaintenanceRG \
--resource-name myConfig \
--maintenance-scope host \
--location eastus \
--maintenance-window-duration "05:00" \
--maintenance-window-recur-every "Month Fourth Monday" \
--maintenance-window-start-date-time "2020-12-30 08:00" \
--maintenance-window-time-zone "Pacific Standard Time"
Met behulp --maintenance-scope host
van zorgt u ervoor dat de onderhoudsconfiguratie wordt gebruikt voor het beheren van updates voor de hostinfrastructuur. Als u een configuratie probeert te maken met dezelfde naam, maar op een andere locatie, krijgt u een foutmelding. Configuratienamen moeten uniek zijn voor uw resourcegroep.
U kunt controleren of u de onderhoudsconfiguratie hebt gemaakt door een query uit te voeren op beschikbare onderhoudsconfiguraties met behulp van az maintenance configuration list
.
az maintenance configuration list
--query "[].{Name:name, ID:id}"
--output table
Notitie
Onderhoudspatroon kan worden uitgedrukt als dagelijks, wekelijks of maandelijks. Een aantal voorbeelden:
- daily- maintenance-window-recur-every: "Day" or "3Days"
- wekelijks- maintenance-window-recur-every: "3Weeks" of "Week saturday,Sunday"
- maandelijks- onderhoud-venster-recur-every: "Maand dag23, dag24" of "Maand Laatste zondag" of "Maand vierde maandag"
Virtuele-machineschaalsets
In dit voorbeeld wordt een onderhoudsconfiguratie met de naam myConfig gemaakt met het osimage-bereik voor virtuele-machineschaalsets met een gepland venster van 5 uur op de vierde maandag van elke maand.
az maintenance configuration create \
--resource-group myMaintenanceRG \
--resource-name myConfig \
--maintenance-scope osimage \
--location eastus \
--maintenance-window-duration "05:00" \
--maintenance-window-recur-every "Month Fourth Monday" \
--maintenance-window-start-date-time "2020-12-30 08:00" \
--maintenance-window-time-zone "Pacific Standard Time"
Gast-VM's
In dit voorbeeld wordt een onderhoudsconfiguratie met de naam myConfig gemaakt die is gericht op gastmachines (VM's en servers met Arc) met een geplande periode van 2 uur per 20 dagen. Zie Gast voor meer informatie over deze onderhoudsconfiguraties op gast-VM's.
az maintenance configuration create \
--resource-group myMaintenanceRG \
--resource-name myConfig \
--maintenance-scope InGuestPatch \
--location eastus \
--maintenance-window-duration "02:00" \
--maintenance-window-recur-every "20days" \
--maintenance-window-start-date-time "2022-12-30 07:00" \
--maintenance-window-time-zone "Pacific Standard Time" \
--install-patches-linux-parameters package-name-masks-to-exclude="ppt" package-name-masks-to-include="apt" classifications-to-include="Other" \
--install-patches-windows-parameters kb-numbers-to-exclude="KB123456" kb-numbers-to-include="KB123456" classifications-to-include="FeaturePack" \
--reboot-setting "IfRequired" \
--extension-properties InGuestPatchMode="User"
De configuratie toewijzen
Gebruik az maintenance assignment create
om de configuratie toe te wijzen aan uw computer.
Geïsoleerde VM
Pas de configuratie toe op een geïsoleerde host-VM met behulp van de id van de configuratie. Geef --resource-type virtualMachines
de naam van de VM op voor --resource-name
en geef de resourcegroep voor op de VM in --resource-group
en de locatie van de VM voor --location
.
az maintenance assignment create \
--resource-group myMaintenanceRG \
--location eastus \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute \
--configuration-assignment-name myConfig \
--maintenance-configuration-id "/subscriptions/{subscription ID}/resourcegroups/myMaintenanceRG/providers/Microsoft.Maintenance/maintenanceConfigurations/myConfig"
Toegewezen host
Als u een configuratie wilt toepassen op een toegewezen host, moet u opnemen--resource-type hosts
--resource-parent-name
, met de naam van de hostgroep en --resource-parent-type hostGroups
.
De parameter --resource-id
is de id van de host. U kunt az-vm-host-get-instance-view gebruiken om de id van uw toegewezen host op te halen.
az maintenance assignment create \
--resource-group myDHResourceGroup \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--configuration-assignment-name myConfig \
--maintenance-configuration-id "/subscriptions/{subscription ID}/resourcegroups/myDhResourceGroup/providers/Microsoft.Maintenance/maintenanceConfigurations/myConfig" \
--location eastus \
--resource-parent-name myHostGroup \
--resource-parent-type hostGroups
Virtuele-machineschaalsets
az maintenance assignment create \
--resource-group myMaintenanceRG \
--location eastus \
--resource-name myVMSS \
--resource-type virtualMachineScaleSets \
--provider-name Microsoft.Compute \
--configuration-assignment-name myConfig \
--maintenance-configuration-id "/subscriptions/{subscription ID}/resourcegroups/myMaintenanceRG/providers/Microsoft.Maintenance/maintenanceConfigurations/myConfig"
Gast-VM's
az maintenance assignment create \
--resource-group myMaintenanceRG \
--location eastus \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute \
--configuration-assignment-name myConfig \
--maintenance-configuration-id "/subscriptions/{subscription ID}/resourcegroups/myMaintenanceRG/providers/Microsoft.Maintenance/maintenanceConfigurations/myConfig"
Configuratie controleren
U kunt controleren of de configuratie correct is toegepast of controleren welke configuratie momenteel wordt toegepast met behulp van az maintenance assignment list
.
Geïsoleerde VM
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Toegewezen host
az maintenance assignment list \
--resource-group myDHResourceGroup \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--resource-parent-name myHostGroup \
--resource-parent-type hostGroups \
--query "[].{ResourceGroup:resourceGroup,configName:name}" \
--output table
Virtuele-machineschaalsets
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVMSS \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Gast-VM's
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Controleren op updates die in behandeling zijn
Gebruik az maintenance update list
om te zien of er updates in behandeling zijn. Werk --subscription bij als de id voor het abonnement dat de VM bevat.
Als er geen updates zijn, retourneert de opdracht een foutbericht, dat de tekst bevat: Resource not found...StatusCode: 404
.
Als er updates zijn, wordt er slechts één geretourneerd, zelfs als er meerdere updates in behandeling zijn. De gegevens voor deze update worden geretourneerd in een -object:
[
{
"impactDurationInSec": 9,
"impactType": "Freeze",
"maintenanceScope": "Host",
"notBefore": "2020-03-03T07:23:04.905538+00:00",
"resourceId": "/subscriptions/9120c5ff-e78e-4bd0-b29f-75c19cadd078/resourcegroups/DemoRG/providers/Microsoft.Compute/hostGroups/demoHostGroup/hosts/myHost",
"status": "Pending"
}
]
Geïsoleerde VM
Controleer op updates die in behandeling zijn voor een geïsoleerde VM. In dit voorbeeld is de uitvoer opgemaakt als een tabel voor leesbaarheid.
az maintenance update list \
--subscription {subscription ID} \
--resourcegroup myMaintenanceRg \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute \
--output table
Toegewezen host
Controleren op updates die in behandeling zijn voor een toegewezen host. In dit voorbeeld is de uitvoer opgemaakt als een tabel voor leesbaarheid. Vervang de waarden voor de resources door uw eigen waarden.
az maintenance update list \
--subscription {subscription ID} \
--resourcegroup myHostResourceGroup \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--resource-parentname myHostGroup \
--resource-parent-type hostGroups \
--output table
Updates toepassen
Gebruik az maintenance apply update
om in behandeling zijnde updates toe te passen. Als dit lukt, retourneert deze opdracht JSON met de details van de update. Het kan tot 2 uur duren voordat het toepassen van update-aanroepen is voltooid.
Geïsoleerde VM
Maak een aanvraag om updates toe te passen op een geïsoleerde VM.
az maintenance applyupdate create \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute
Toegewezen host
Updates toepassen op een toegewezen host.
az maintenance applyupdate create \
--subscription {subscriptionID} \
--resource-group myHostResourceGroup \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--resource-parent-name myHostGroup \
--resource-parent-type hostGroups
Virtuele-machineschaalsets
Update toepassen op een schaalset
az maintenance applyupdate create \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVMSS \
--resource-type virtualMachineScaleSets \
--provider-name Microsoft.Compute
De status van het toepassen van updates controleren
U kunt de voortgang van de updates controleren met behulp van az maintenance applyupdate get
.
U kunt gebruiken default
als de naam van de update om resultaten voor de laatste update te bekijken of vervangen door myUpdateName
de naam van de update die is geretourneerd toen u uitvoerde az maintenance applyupdate create
.
Status : Completed
ResourceId : /subscriptions/12ae7457-4a34-465c-94c1-17c058c2bd25/resourcegroups/TestShantS/providers/Microsoft.Comp
ute/virtualMachines/DXT-test-04-iso
LastUpdateTime : 1/1/2020 12:00:00 AM
Id : /subscriptions/12ae7457-4a34-465c-94c1-17c058c2bd25/resourcegroups/TestShantS/providers/Microsoft.Comp
ute/virtualMachines/DXT-test-04-iso/providers/Microsoft.Maintenance/applyUpdates/default
Name : default
Type : Microsoft.Maintenance/applyUpdates
LastUpdateTime is het tijdstip waarop de update is voltooid, geïnitieerd door u of door het platform voor het geval het venster voor zelfonderhoud niet is gebruikt. Als er nog nooit een update is toegepast via onderhoudsbeheer, wordt de standaardwaarde weergegeven.
Geïsoleerde VM
az maintenance applyupdate get \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute \
--apply-update-name myUpdateName \
--query "{LastUpdate:lastUpdateTime, Name:name, ResourceGroup:resourceGroup, Status:status}" \
--output table
Toegewezen host
az maintenance applyupdate get \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--resource-parent-name myHostGroup \
--resource-parent-type hostGroups \
--apply-update-name myUpdateName \
--query "{LastUpdate:lastUpdateTime, Name:name, ResourceGroup:resourceGroup, Status:status}" \
--output table
Virtuele-machineschaalsets
az maintenance applyupdate get \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVMSS \
--resource-type virtualMachineScaleSets \
--provider-name Microsoft.Compute \
--apply-update-name myUpdateName \
--query "{LastUpdate:lastUpdateTime, Name:name, ResourceGroup:resourceGroup, Status:status}" \
--output table
Een onderhoudsconfiguratie verwijderen
Gebruik az maintenance configuration delete
om een onderhoudsconfiguratie te verwijderen. Als u de configuratie verwijdert, wordt het onderhoudsbeheer van de gekoppelde resources verwijderd.
az maintenance configuration delete \
--subscription 1111abcd-1a11-1a2b-1a12-123456789abc \
-resource-group myResourceGroup \
--resource-name myConfig
Volgende stappen
Zie Onderhoud en updates voor meer informatie.