Jak programově spravovat aktualizace pro servery s podporou služby Azure Arc
Tento článek vás provede procesem použití rozhraní Azure REST API k aktivaci posouzení a nasazení aktualizací na serverech s podporou Azure Arc pomocí Azure Update Manageru v Azure. Pokud s Azure Update Managerem začínáte a chcete se dozvědět víc, podívejte se na přehled Update Manageru. Pokud chcete ke správě virtuálních počítačů Azure použít rozhraní Azure REST API, přečtěte si, jak programově pracovat s virtuálními počítači Azure.
Update Manager v Azure umožňuje programově používat rozhraní Azure REST API pro přístup. Kromě toho můžete použít příslušné příkazy REST z Azure PowerShellu a Azure CLI.
Podpora rozhraní Azure REST API pro správu serverů s podporou Služby Azure Arc je dostupná prostřednictvím rozšíření virtuálního počítače Update Manageru.
Posouzení aktualizací
Pokud chcete na serveru s podporou Azure Arc aktivovat posouzení aktualizací, zadejte následující požadavek POST:
POST on `subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/machineName/assessPatches?api-version=2020-08-15-preview`
{
}
K zadání požadavku POST můžete použít příkaz Azure CLI az rest .
az rest --method post --url https://management.azure.com/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/machineName/assessPatches?api-version=2020-08-15-preview --body @body.json
Formát textu požadavku pro verzi 2020-08-15 je následující:
{
}
Nasazení aktualizací
Pokud chcete aktivovat nasazení aktualizace na server s podporou Služby Azure Arc, zadejte následující požadavek POST:
POST on `subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/machineName/installPatches?api-version=2020-08-15-preview`
Text požadavku
Následující tabulka popisuje prvky textu požadavku:
Vlastnost | Popis |
---|---|
maximumDuration |
Maximální doba v minutách, po kterou může operace aktualizace operačního systému trvat. Musí se jednat o řetězec doby trvání vyhovující standardu ISO 8601, například PT100M . |
rebootSetting |
Pokud chcete počítač restartovat, označte příznakem, a pokud instalace aktualizace hostovaného operačního systému vyžaduje dokončení. Přijatelné hodnoty jsou: IfRequired, NeverReboot, AlwaysReboot . |
windowsParameters |
Možnosti parametrů pro aktualizaci hostovaného operačního systému na počítači s podporovaným operačním systémem Microsoft Windows Server |
windowsParameters - classificationsToInclude |
Seznamkategoriích Přijatelné hodnoty jsou: Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools, Update |
windowsParameters - kbNumbersToInclude |
Seznam ID služba Windows Update kB, které jsou k dispozici pro počítač a které potřebujete nainstalovat. Pokud jste zahrnuli nějaké klasifikaceToInclude, nainstalují se znalostní báze dostupné v kategorii. "kbNumbersToInclude" je možnost zadat seznam konkrétních ID znalostní báze a vyšší, které chcete nainstalovat. Příklad: 1234 |
windowsParameters - kbNumbersToExclude |
Seznam služba Windows Update ID znalostní báze, které jsou k dispozici pro počítač a které by se neměly instalovat. Pokud jste zahrnuli nějaké klasifikaceToInclude, nainstalují se znalostní báze dostupné v kategorii. "kbNumbersToExclude" je možnost zadat seznam konkrétních ID znalostní báze, které chcete zajistit, aby se nenainstaloval. Příklad: 5678 |
maxPatchPublishDate |
Používá se k instalaci oprav publikovaných dne nebo před tímto datem maximálního publikování. |
linuxParameters |
Možnosti parametrů pro aktualizaci hostovaného operačního systému, když počítač používá podporovanou distribuci Linuxu |
linuxParameters - classificationsToInclude |
Seznamkategoriích Přijatelné hodnoty jsou: Critical, Security, Others . Další informace najdete v tématu Správce balíčků Linuxu a podpora operačního systému. |
linuxParameters - packageNameMasksToInclude |
Seznam linuxových balíčků, které jsou k dispozici pro počítač a je třeba je nainstalovat. Pokud jste zahrnuli nějaké klasifikaceToInclude, balíčky dostupné v kategorii se nainstalují. PackageNameMasksToInclude je možnost poskytnout seznam balíčků, které chcete nainstalovat. Příklad: mysql, libc=1.0.1.1, kernel* |
linuxParameters - packageNameMasksToExclude |
Seznam linuxových balíčků, které jsou k dispozici pro počítač a neměly by být nainstalovány. Pokud jste zahrnuli nějaké klasifikaceToInclude, balíčky dostupné v kategorii se nainstalují. PackageNameMasksToExclude je možnost zadat seznam konkrétních balíčků, které chcete zajistit, aby se nenainstaloval. Příklad: mysql, libc=1.0.1.1, kernel* |
K zadání požadavku POST můžete použít následující volání rozhraní Azure REST API s platnými parametry a hodnotami.
POST on 'subscriptions/subscriptionI/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/machineName/installPatches?api-version=2020-08-15-preview
{
"maximumDuration": "PT120M",
"rebootSetting": "IfRequired",
"windowsParameters": {
"classificationsToInclude": [
"Security",
"UpdateRollup",
"FeaturePack",
"ServicePack"
],
"kbNumbersToInclude": [
"11111111111",
"22222222222222"
],
"kbNumbersToExclude": [
"333333333333",
"55555555555"
]
}
}'
Vytvoření plánu konfigurace údržby
Pokud chcete vytvořit plán konfigurace údržby, zadejte následující požadavek PUT:
PUT on `/subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.Maintenance/maintenanceConfigurations/<maintenanceConfigurationsName>?api-version=2021-09-01-preview`
Text požadavku
Následující tabulka popisuje prvky textu požadavku:
Vlastnost | Popis |
---|---|
id |
Plně kvalifikovaný identifikátor prostředku |
location |
Získá nebo nastaví umístění prostředku. |
name |
Název prostředku |
properties.extensionProperties |
Získá nebo nastaví rozšířeníProperties údržbyConfiguration |
properties.maintenanceScope |
Získá nebo nastaví maintenanceScope konfigurace. |
properties.maintenanceWindow.duration |
Doba trvání časového období údržby ve formátu HH:mm. Pokud není zadaný, použije se výchozí hodnota na základě zadaného rozsahu údržby. Příklad: 05:00. |
properties.maintenanceWindow.expirationDateTime |
Platné datum vypršení platnosti časového období údržby ve formátu RRRR-MM-DD hh:MM. Okno se vytvoří v časovém pásmu poskytnutém letnímu času podle daného časového pásma. Datum vypršení platnosti musíte nastavit na budoucí datum. Pokud není zadáno, nastaví se na maximální datum a čas 9999-12-31 23:59:59. |
properties.maintenanceWindow.recurEvery |
Míra, s jakou se očekává, že se bude opakovat časové období údržby. Sazba se dá vyjádřit jako denní, týdenní nebo měsíční plány. Denní plány můžete formátovat jako recurEvery: [Frequency as integer]['Day(s)]. Pokud není zadána žádná frekvence, výchozí frekvence je 1. Příklady denního plánu jsou recurEvery: Day, recurEvery: 3Days. Týdenní plán je formátovaný jako recurEvery: [Frequency as integer]['Week(s)' [Optional comma separated list of weekdays Monday-Sunday]. Příklady týdenního plánu jsou recurEvery: 3Weeks, recurEvery: Week Saturday, Sunday. Měsíční plány můžete formátovat jako [Frequency as integer]['Month(s)'] [Čárka oddělený seznam dnů měsíce] nebo [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday]. Příklady měsíčního plánu jsou recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23, day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday. |
properties.maintenanceWindow.startDateTime |
Platné datum zahájení časového období údržby ve formátu RRRR-MM-DD hh:mm. Počáteční datum můžete nastavit na aktuální datum nebo budoucí datum. Okno se vytvoří v poskytnutém časovém pásmu a upraví se na letní čas podle daného časového pásma. |
properties.maintenanceWindow.timeZone |
Název časového pásma. Seznam časových pásem můžete získat spuštěním příkazu [System.TimeZoneInfo]:GetSystemTimeZones() v PowerShellu. Příklad: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Austrálie – standardní čas. |
properties.namespace |
Získá nebo nastaví obor názvů prostředku. |
properties.visibility |
Získá nebo nastaví viditelnost konfigurace. Výchozí hodnota je Custom. |
systemData |
Metadata Azure Resource Manageru obsahující informace createdBy a modifiedBy |
tags |
Získá nebo nastaví značky prostředku. |
type |
Typ prostředku |
K zadání požadavku POST můžete použít následující volání rozhraní Azure REST API s platnými parametry a hodnotami.
PUT on '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/atscalepatching/providers/Microsoft.Maintenance/maintenanceConfigurations/TestAzureInGuestAdv2?api-version=2021-09-01-preview
{
"location": "eastus2euap",
"properties": {
"namespace": null,
"extensionProperties": {
"InGuestPatchMode" : "User"
},
"maintenanceScope": "InGuestPatch",
"maintenanceWindow": {
"startDateTime": "2021-08-21 01:18",
"expirationDateTime": "2221-05-19 03:30",
"duration": "01:30",
"timeZone": "India Standard Time",
"recurEvery": "Day"
},
"visibility": "Custom",
"installPatches": {
"rebootSetting": "IfRequired",
"windowsParameters": {
"classificationsToInclude": [
"Security",
"Critical",
"UpdateRollup"
]
},
"linuxParameters": {
"classificationsToInclude": [
"Other"
]
}
}
}
}'
Přidružení virtuálního počítače k plánu
Pokud chcete virtuální počítač přidružit k plánu konfigurace údržby, zadejte následující požadavek PUT:
PUT on `<ARC or Azure VM resourceId>/providers/Microsoft.Maintenance/configurationAssignments/<configurationAssignment name>?api-version=2021-09-01-preview`
K zadání požadavku PUT můžete použít následující volání rozhraní Azure REST API s platnými parametry a hodnotami.
PUT on '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/atscalepatching/providers/Microsoft.Compute/virtualMachines/win-atscalepatching-1/providers/Microsoft.Maintenance/configurationAssignments/TestAzureInGuestAdv?api-version=2021-09-01-preview
{
"properties": {
"maintenanceConfigurationId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/atscalepatching/providers/Microsoft.Maintenance/maintenanceConfigurations/TestAzureInGuestIntermediate2"
},
"location": "eastus2euap"
}'
Odebrání počítače z plánu
Pokud chcete počítač z plánu odebrat, získejte všechny názvy přiřazení konfigurace pro počítač, který jste vytvořili pro přidružení počítače k aktuálnímu plánu z Azure Resource Graphu, jak je uvedeno v seznamu:
maintenanceresources
| where type =~ "microsoft.maintenance/configurationassignments"
| where properties.maintenanceConfigurationId =~ "<maintenance configuration Resource ID>"
| where properties.resourceId =~ "<Machine Resource Id>"
| project name, id
Po získání výše uvedeného názvu odstraňte přiřazení konfigurace podle požadavku DELETE –
DELETE on `<ARC or Azure VM resourceId>/providers/Microsoft.Maintenance/configurationAssignments/<configurationAssignment name>?api-version=2021-09-01-preview`
Další kroky
- Pokud chcete zobrazit protokoly posouzení aktualizací a nasazení vygenerované nástrojem Update Manager, podívejte se na protokoly dotazů.
- Pokud chcete řešit problémy, prohlédnou si správce aktualizací.