Řízení aktualizací pomocí konfigurací údržby a Azure CLI
Platí pro: ✔️ Virtuální počítače s Windows s Linuxem ✔️ ✔️ – Flexibilní škálovací sady Uniform Scale Sets ✔️
Pomocí funkce Konfigurace údržby můžete řídit, kdy použít aktualizace platformy na různé prostředky Azure. Tento článek popisuje možnosti Azure CLI pro použití této funkce. Další informace o výhodách používání konfigurací údržby, jejích omezení a dalších možností správy najdete v tématu Správa aktualizací platformy pomocí konfigurací údržby.
Důležité
Konkrétní obory podporují určité typy a plány počítačů. Nezapomeňte vybrat správný obor pro váš virtuální počítač.
Vytvoření konfigurace údržby
Prvním krokem při vytváření konfigurace údržby je vytvoření skupiny prostředků jako kontejneru pro vaši konfiguraci. Tento příklad vytvoří skupinu prostředků myMaintenanceRG v eastus. Pokud už máte skupinu prostředků, kterou chcete použít, můžete tuto část přeskočit a ve zbývajících příkladech nahradit název skupiny prostředků vlastním názvem.
az group create \
--location eastus \
--name myMaintenanceRG
Po vytvoření skupiny prostředků použijte az maintenance configuration create
k vytvoření konfigurace údržby.
Hostitelský počítač
Tento příklad vytvoří konfiguraci údržby s názvem myConfig vymezenou na hostitelské počítače s naplánovaným oknem 5 hodin v čtvrtém pondělí každého měsíce:
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"
Použití --maintenance-scope host
zajišťuje, že se konfigurace údržby používá k řízení aktualizací hostitelské infrastruktury. Pokud se pokusíte vytvořit konfiguraci se stejným názvem, ale v jiném umístění, zobrazí se chyba. Názvy konfigurací musí být jedinečné pro vaši skupinu prostředků.
Pokud chcete zkontrolovat, jestli jste konfiguraci údržby úspěšně vytvořili, můžete pomocí následujícího příkazu zadat dotaz na dostupné konfigurace údržby az maintenance configuration list
:
az maintenance configuration list
--query "[].{Name:name, ID:id}"
--output table
Opakování údržby můžete vyjádřit jako denní, týdenní nebo měsíční. Několik příkladů:
- Denně:
maintenance-window-recur-every
Hodnota"Day"
nebo"3Days"
. - Týdně:
maintenance-window-recur-every
Hodnota nebo"Week Saturday,Sunday"
."3Weeks"
- Měsíčně:
maintenance-window-recur-every
Hodnota"Month day23,day24"
nebo"Month Last Sunday"
Month Fourth Monday
.
Škálovací sady virtuálních počítačů
Tento příklad vytvoří konfiguraci údržby s názvem myConfig s oborem image operačního systému pro škálovací sady virtuálních počítačů s naplánovaným oknem 5 hodin v čtvrtém pondělí každého měsíce:
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"
Hostovaný virtuální počítač
Tento příklad vytvoří konfiguraci údržby s názvem myConfig vymezenou na hostované počítače (virtuální počítače a servery s podporou Azure Arc) s naplánovaným oknem 2 hodiny každých 20 dnů. Přečtěte si další informace o konfiguracích údržby na hostujících virtuálních počítačích.
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"
Přiřazení konfigurace
Slouží az maintenance assignment create
k přiřazení konfigurace k počítači.
Izolovaný virtuální počítač
Použijte konfiguraci na izolovaný hostitelský virtuální počítač pomocí ID konfigurace. Zadejte --resource-type virtualMachines
. Zadejte název virtuálního počítače pro --resource-name
skupinu prostředků --resource-group
virtuálního počítače a umístění virtuálního počítače pro --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"
Vyhrazený hostitel
Pokud chcete použít konfiguraci pro vyhrazeného hostitele, musíte zahrnout --resource-type hosts
, --resource-parent-name
s názvem skupiny hostitelů a --resource-parent-type hostGroups
.
--resource-id
Parametr je ID hostitele. K získání ID vyhrazeného hostitele můžete použít az-vm-host-get-instance-view .
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
Škálovací sady virtuálních počítačů
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"
Hostovaný virtuální počítač
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"
Kontrola konfigurace
Pomocí příkazu az maintenance assignment list
Izolovaný virtuální počítač
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Vyhrazený hostitel
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
Škálovací sady virtuálních počítačů
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVMSS \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Hostovaný virtuální počítač
az maintenance assignment list \
--provider-name Microsoft.Compute \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--query "[].{resource:resourceGroup, configName:name}" \
--output table
Kontrola čekajících aktualizací
Umožňuje az maintenance update list
zjistit, jestli nejsou čekající aktualizace. Aktualizujte --subscription
id předplatného, které obsahuje virtuální počítač.
Pokud nejsou k dispozici žádné aktualizace, příkaz vrátí chybovou zprávu obsahující text Resource not found...StatusCode: 404
.
Pokud existují aktualizace, příkaz vrátí pouze jeden, i když čeká na vyřízení více aktualizací. Data pro tuto aktualizaci se vrátí v objektu:
[
{
"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"
}
]
Izolovaný virtuální počítač
Zkontrolujte čekající aktualizace pro izolovaný virtuální počítač. V tomto příkladu je výstup formátován jako tabulka pro čitelnost:
az maintenance update list \
--subscription {subscription ID} \
--resource-group myMaintenanceRg \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute \
--output table
Vyhrazený hostitel
Zkontrolujte čekající aktualizace pro vyhrazeného hostitele. V tomto příkladu je výstup formátován jako tabulka pro čitelnost. Nahraďte hodnoty prostředků vlastními.
az maintenance update list \
--subscription {subscription ID} \
--resource-group myHostResourceGroup \
--resource-name myHost \
--resource-type hosts \
--provider-name Microsoft.Compute \
--resource-parentname myHostGroup \
--resource-parent-type hostGroups \
--output table
Instalace aktualizací
Slouží az maintenance apply update
k instalaci čekajících aktualizací. V případě úspěchu vrátí tento příkaz JSON, který obsahuje podrobnosti o aktualizaci. Dokončení volání k instalaci aktualizací může trvat až 2 hodiny.
Izolovaný virtuální počítač
Vytvořte žádost o použití aktualizací na izolovaný virtuální počítač:
az maintenance applyupdate create \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVM \
--resource-type virtualMachines \
--provider-name Microsoft.Compute
Vyhrazený hostitel
Aktualizace použijte u vyhrazeného hostitele:
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
Škálovací sady virtuálních počítačů
Použití aktualizací pro škálovací sadu:
az maintenance applyupdate create \
--subscription {subscriptionID} \
--resource-group myMaintenanceRG \
--resource-name myVMSS \
--resource-type virtualMachineScaleSets \
--provider-name Microsoft.Compute
Kontrola stavu instalace aktualizací
Průběh aktualizací můžete zkontrolovat pomocí funkce az maintenance applyupdate get
.
Pokud chcete zobrazit výsledky poslední aktualizace, použijte default
jako název aktualizace. Nebo nahraďte myUpdateName
názvem aktualizace, která byla vrácena při spuštění 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
je čas dokončení aktualizace, ať už jste zahájili aktualizaci nebo platformu, protože jste nepoužíli časové období samoobslužné údržby. Pokud se aktualizace nikdy nepoužila prostřednictvím konfigurace údržby, LastUpdateTime
zobrazí se výchozí hodnota.
Izolovaný virtuální počítač
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
Vyhrazený hostitel
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
Škálovací sady virtuálních počítačů
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
Odstranění konfigurace údržby
Pokud chcete odstranit konfiguraci údržby, použijte az maintenance configuration delete
. Odstraněním konfigurace odeberete ovládací prvek údržby z přidružených prostředků.
az maintenance configuration delete \
--subscription 1111abcd-1a11-1a2b-1a12-123456789abc \
-resource-group myResourceGroup \
--resource-name myConfig
Další kroky
Další informace najdete v tématu Údržba virtuálních počítačů v Azure.