PowerShell kullanarak planlı bakımı işleme
Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Windows VM'leri ✔️ Esnek ölçek kümeleri ✔️ Tekdüzen ölçek kümeleri
VM'lerin bakım için zamanlandığı zamanı görmek için Azure PowerShell kullanabilirsiniz. Planlı bakım bilgileri, parametresini kullandığınızda Get-AzVM cmdlet'inden -status
kullanılabilir.
Bakım bilgileri yalnızca bakım planlıysa döndürülür. VM'yi etkileyen bir bakım zamanlanmazsa, cmdlet herhangi bir bakım bilgisi döndürmez.
Get-AzVM -ResourceGroupName myResourceGroup -Name myVM -Status
Çıktı
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
MaintenanceRedeployStatus altında aşağıdaki özellikler döndürülür:
Değer | Açıklama |
---|---|
IsCustomerInitiatedMaintenanceAllowed | Şu anda VM'de bakımı başlatıp başlatamayacağınızı gösterir |
PreMaintenanceWindowStartTime | VM'nizde bakım başlatabileceğiniz bakım self servis penceresinin başlangıcı |
PreMaintenanceWindowEndTime | VM'nizde bakım başlatabileceğiniz bakım self servis penceresinin sonu |
MaintenanceWindowStartTime | Azure'ın VM'nizde bakım başlattığı zamanlanan bakımın başlangıcı |
MaintenanceWindowEndTime | Azure'ın VM'nizde bakım başlattığı bakım zamanlanmış penceresinin sonu |
LastOperationResultCode | VM'de bakımı başlatmaya yönelik son denemenin sonucu |
Get-AzVM kullanarak ve VM belirtmeyerek bir kaynak grubundaki tüm VM'lerin bakım durumunu da alabilirsiniz.
Get-AzVM -ResourceGroupName myResourceGroup -Status
Aşağıdaki PowerShell örneği abonelik kimliğinizi alır ve bakım için zamanlanıp zamanlanmadıklarını belirten bir VM listesi döndürür.
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
}
}
}
}
PowerShell kullanarak VM'nizde bakımı başlatma
IsCustomerInitiatedMaintenanceAllowed değeri true olarak ayarlandıysa, önceki bölümdeki işlevden alınan bilgiler kullanıldığında, aşağıdakiler VM'de bakım başlatır.
MaintenanceIterator -SubscriptionId <Subscription ID> |
Where-Object -FilterScript {$_.IsCustomerMaintenanceAllowed} |
Restart-AzVM -PerformMaintenance
Klasik dağıtımlar
Önemli
Klasik dağıtım modeliyle oluşturulan VM'ler 1 Eylül 2023'te kullanımdan kaldırılacaktır.
Azure Hizmet Yönetimi'nden IaaS kaynaklarını kullanıyorsanız lütfen geçişinizi 1 Eylül 2023'e kadar tamamlayın. Azure Resource Manager'daki birçok özellik geliştirmelerinden yararlanmak için geçişi daha erken yapmanızı öneririz.
Daha fazla bilgi için bkz. IaaS kaynaklarınızı 1 Eylül 2023'e kadar Azure Resource Manager geçirme.
Klasik dağıtım modeli kullanılarak dağıtılan eski VM'leriniz hala varsa, PowerShell'i kullanarak VM'leri sorgulayabilir ve bakımı başlatabilirsiniz.
Bir VM'nin bakım durumunu almak için şunu yazın:
Get-AzureVM -ServiceName <Service name> -Name <VM name>
Klasik VM'nizde bakımı başlatmak için şunu yazın:
Restart-AzureVM -InitiateMaintenance -ServiceName <service name> -Name <VM name>
Sonraki adımlar
Planlı bakımı Azure CLI veya portalı kullanarak da işleyebilirsiniz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin