Zpracování plánované údržby pomocí PowerShellu
Platí pro: ✔️ Virtuální počítače s Linuxem ✔️ – Flexibilní škálovací sady ✔️ s Windows ✔️ – Jednotné škálovací sady
Pomocí Azure PowerShell můžete zjistit, kdy je naplánována údržba virtuálních počítačů. Informace o plánované údržbě jsou k dispozici v rutině Get-AzVM , když použijete -status
parametr .
Informace o údržbě se vrátí jenom v případě, že je plánovaná údržba. Pokud není naplánovaná žádná údržba, která má vliv na virtuální počítač, rutina nevrátí žádné informace o údržbě.
Get-AzVM -ResourceGroupName myResourceGroup -Name myVM -Status
Výstup
MaintenanceRedeployStatus :
IsCustomerInitiatedMaintenanceAllowed : True
PreMaintenanceWindowStartTime : 5/14/2018 12:30:00 PM
PreMaintenanceWindowEndTime : 5/19/2018 12:30:00 PM
MaintenanceWindowStartTime : 5/21/2018 4:30:00 PM
MaintenanceWindowEndTime : 6/4/2018 4:30
LastOperationResultCode : None
V části MaintenanceRedeployStatus se vrátí následující vlastnosti:
Hodnota | Popis |
---|---|
IsCustomerInitiatedMaintenanceAllowed | Určuje, jestli můžete v tuto chvíli zahájit údržbu virtuálního počítače. |
PreMaintenanceWindowStartTime | Začátek časového období samoobslužné údržby, kdy můžete zahájit údržbu virtuálního počítače |
PreMaintenanceWindowEndTime | Konec časového období samoobslužné údržby, kdy můžete zahájit údržbu virtuálního počítače |
MaintenanceWindowStartTime | Začátek plánované údržby, ve které Azure zahájí údržbu vašeho virtuálního počítače |
MaintenanceWindowEndTime | Konec časového období plánované údržby, ve kterém Azure zahájí údržbu virtuálního počítače |
LastOperationResultCode | Výsledek posledního pokusu o zahájení údržby virtuálního počítače |
Stav údržby pro všechny virtuální počítače ve skupině prostředků můžete získat také pomocí rutiny Get-AzVM a nezadáte virtuální počítač.
Get-AzVM -ResourceGroupName myResourceGroup -Status
Následující příklad PowerShellu vezme VAŠE ID předplatného a vrátí seznam virtuálních počítačů, které udávají, jestli jsou naplánované na údržbu.
function MaintenanceIterator {
param (
$SubscriptionId
)
Select-AzSubscription -SubscriptionId $SubscriptionId | Out-Null
$rgList = Get-AzResourceGroup
foreach ($rg in $rgList) {
$vmList = Get-AzVM -ResourceGroupName $rg.ResourceGroupName
foreach ($vm in $vmList) {
$vmDetails = Get-AzVM -ResourceGroupName $rg.ResourceGroupName -Name $vm.Name -Status
[pscustomobject]@{
Name = $vmDetails.Name
ResourceGroupName = $rg.ResourceGroupName
IsCustomerInitiatedMaintenanceAllowed = [bool]$vmDetails.MaintenanceRedeployStatus.IsCustomerInitiatedMaintenanceAllowed
LastOperationMessage = $vmDetails.MaintenanceRedeployStatus.LastOperationMessage
}
}
}
}
Zahájení údržby virtuálního počítače pomocí PowerShellu
Na základě informací z funkce v předchozí části spustí následující příkaz údržbu virtuálního počítače, pokud je vlastnost IsCustomerInitiatedMaintenanceAllowed nastavená na hodnotu true.
MaintenanceIterator -SubscriptionId <Subscription ID> |
Where-Object -FilterScript {$_.IsCustomerMaintenanceAllowed} |
Restart-AzVM -PerformMaintenance
Nasazení Classic
Důležité
Virtuální počítače vytvořené pomocí modelu nasazení Classic budou vyřazeny 1. září 2023.
Pokud používáte prostředky IaaS ze správy služeb Azure, dokončete migraci do 1. září 2023. Doporučujeme, abyste přechod provedli dříve, abyste mohli využívat řadu vylepšení funkcí v Azure Resource Manager.
Další informace najdete v tématu Migrace prostředků IaaS do Azure Resource Manager do 1. září 2023.
Pokud stále máte starší virtuální počítače nasazené pomocí modelu nasazení Classic, můžete pomocí PowerShellu zadat dotaz na virtuální počítače a zahájit údržbu.
Pokud chcete zjistit stav údržby virtuálního počítače, zadejte:
Get-AzureVM -ServiceName <Service name> -Name <VM name>
Pokud chcete zahájit údržbu klasického virtuálního počítače, zadejte:
Restart-AzureVM -InitiateMaintenance -ServiceName <service name> -Name <VM name>
Další kroky
Plánovanou údržbu můžete také zpracovat pomocí Azure CLI nebo portálu.