Aktivera Uppdateringshantering via en Azure Resource Manager-mall
Viktigt!
Automation Update Management har dragits tillbaka den 31 augusti 2024 och vi rekommenderar att du använder Azure Update Manager. Följ riktlinjerna för migrering från Automation Update Management till Azure Update Manager.
Du kan använda en Azure Resource Manager-mall för att aktivera funktionen Azure Automation Update Management i resursgruppen. Den här artikeln innehåller en exempelmall som automatiserar följande:
- Automatiserar skapandet av en Azure Monitor Log Analytics-arbetsyta.
- Automatiserar skapandet av ett Azure Automation-konto.
- Länkar Automation-kontot till Log Analytics-arbetsytan.
- Lägger till exempel på Automation-runbooks i kontot.
- Aktiverar funktionen Uppdateringshantering.
Om du redan har en Log Analytics-arbetsyta och ett Automation-konto distribuerat i en region som stöds i din prenumeration är de inte länkade. Med den här mallen skapas länken och uppdateringshantering distribueras.
Kommentar
Skapande av Automation Kör som-kontot stöds inte när du använder en ARM-mall. Information om hur du skapar ett Kör som-konto manuellt från portalen eller med PowerShell finns i Skapa Kör som-konto.
När du har slutfört de här stegen måste du konfigurera diagnostikinställningar för ditt Automation-konto för att skicka runbook-jobbstatus och jobbströmmar till den länkade Log Analytics-arbetsytan.
API-versioner
I följande tabell visas API-versionen för de resurser som används i det här exemplet.
Resurs | Resurstyp | API-version |
---|---|---|
Arbetsyta | arbetsytor | Förhandsversion 2020-03-01 |
Automation-konto | automatisering | Förhandsversion 2020-01-13 |
Länkade tjänster för arbetsyta | arbetsytor | Förhandsversion 2020-03-01 |
Lösningar | lösningar | Förhandsversion 2015-11-01 |
Innan du använder mallen
JSON-mallen har konfigurerats för att fråga dig om:
- Namnet på arbetsytan.
- Den region som arbetsytan ska skapas i.
- Namnet på Automation-kontot.
- Den region som automationskontot ska skapas i.
Följande parametrar i mallen anges med ett standardvärde för Log Analytics-arbetsytan:
- sku :n är som standard prisnivån per GB som släpptes i prismodellen april 2018.
- dataRetention är som standard 30 dagar.
Varning
Om du vill skapa eller konfigurera en Log Analytics-arbetsyta i en prenumeration som har valt prismodellen april 2018 är den enda giltiga Log Analytics-prisnivån PerGB2018.
JSON-mallen anger ett standardvärde för de andra parametrar som sannolikt skulle användas som standardkonfiguration i din miljö. Du kan lagra mallen på ett Azure Storage-konto för delad åtkomst i din organisation. Mer information om hur du arbetar med mallar finns i Distribuera resurser med ARM-mallar och Azure CLI.
Om du inte har använt Azure Automation och Azure Monitor tidigare är det viktigt att du förstår följande konfigurationsinformation. De kan hjälpa dig att undvika fel när du försöker skapa, konfigurera och använda en Log Analytics-arbetsyta som är länkad till ditt nya Automation-konto.
Granska ytterligare information för att förstå konfigurationsalternativ för arbetsytor fullt ut, till exempel åtkomstkontrollläge, prisnivå, kvarhållning och kapacitetsreservationsnivå.
Granska arbetsytemappningar för att ange de regioner som stöds infogade eller i en parameterfil. Endast vissa regioner stöds för att länka en Log Analytics-arbetsyta och ett Automation-konto i din prenumeration.
Om du är nybörjare på Azure Monitor-loggar och inte redan har distribuerat en arbetsyta bör du läsa designvägledningen för arbetsytan. Det hjälper dig att lära dig mer om åtkomstkontroll och förstå de strategier för designimplementering som vi rekommenderar för din organisation.
Distribuera mallen
Kopiera och klistra in följande JSON-syntax i filen:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "workspaceName": { "type": "string", "metadata": { "description": "Workspace name" } }, "sku": { "type": "string", "defaultValue": "pergb2018", "allowedValues": [ "pergb2018", "Free", "Standalone", "PerNode", "Standard", "Premium" ], "metadata": { "description": "Pricing tier: perGB2018 or legacy tiers (Free, Standalone, PerNode, Standard or Premium), which are not available to all customers." } }, "dataRetention": { "type": "int", "defaultValue": 30, "minValue": 7, "maxValue": 730, "metadata": { "description": "Number of days to retain data." } }, "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "Specifies the location in which to create the workspace." } }, "automationAccountName": { "type": "string", "metadata": { "description": "Automation account name" } }, "sampleGraphicalRunbookName": { "type": "String", "defaultValue": "AzureAutomationTutorial" }, "sampleGraphicalRunbookDescription": { "type": "String", "defaultValue": "An example runbook that gets all the Resource Manager resources by using the Run As account (service principal)." }, "samplePowerShellRunbookName": { "type": "String", "defaultValue": "AzureAutomationTutorialScript" }, "samplePowerShellRunbookDescription": { "type": "String", "defaultValue": "An example runbook that gets all the Resource Manager resources by using the Run As account (service principal)." }, "samplePython2RunbookName": { "type": "String", "defaultValue": "AzureAutomationTutorialPython2" }, "samplePython2RunbookDescription": { "type": "String", "defaultValue": "An example runbook that gets all the Resource Manager resources by using the Run As account (service principal)." }, "_artifactsLocation": { "type": "string", "defaultValue": "[deployment().properties.templateLink.uri]", "metadata": { "description": "URI to artifacts location" } }, "_artifactsLocationSasToken": { "type": "securestring", "defaultValue": "", "metadata": { "description": "The sasToken required to access _artifactsLocation. When the template is deployed using the accompanying scripts, a sasToken will be automatically generated" } } }, "variables": { "Updates": { "name": "[concat('Updates', '(', parameters('workspaceName'), ')')]", "galleryName": "Updates" } }, "resources": [ { "type": "Microsoft.OperationalInsights/workspaces", "apiVersion": "2020-08-01", "name": "[parameters('workspaceName')]", "location": "[parameters('location')]", "properties": { "sku": { "name": "[parameters('sku')]" }, "retentionInDays": "[parameters('dataRetention')]", "features": { "searchVersion": 1, "legacy": 0 } } }, { "apiVersion": "2015-11-01-preview", "location": "[parameters('location')]", "name": "[variables('Updates').name]", "type": "Microsoft.OperationsManagement/solutions", "id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.OperationsManagement/solutions/', variables('Updates').name)]", "dependsOn": [ "[concat('Microsoft.OperationalInsights/workspaces/', parameters('workspaceName'))]" ], "properties": { "workspaceResourceId": "[resourceId('Microsoft.OperationalInsights/workspaces/', parameters('workspaceName'))]" }, "plan": { "name": "[variables('Updates').name]", "publisher": "Microsoft", "promotionCode": "", "product": "[concat('OMSGallery/', variables('Updates').galleryName)]" } }, { "type": "Microsoft.Automation/automationAccounts", "apiVersion": "2020-01-13-preview", "name": "[parameters('automationAccountName')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('workspaceName')]" ], "identity": { "type": "SystemAssigned" }, "properties": { "sku": { "name": "Basic" } }, "resources": [ { "type": "runbooks", "apiVersion": "2020-01-13-preview", "name": "[parameters('sampleGraphicalRunbookName')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('automationAccountName')]" ], "properties": { "runbookType": "GraphPowerShell", "logProgress": "false", "logVerbose": "false", "description": "[parameters('sampleGraphicalRunbookDescription')]", "publishContentLink": { "uri": "[uri(parameters('_artifactsLocation'), concat('scripts/AzureAutomationTutorial.graphrunbook', parameters('_artifactsLocationSasToken')))]", "version": "1.0.0.0" } } }, { "type": "runbooks", "apiVersion": "2020-01-13-preview", "name": "[parameters('samplePowerShellRunbookName')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('automationAccountName')]" ], "properties": { "runbookType": "PowerShell", "logProgress": "false", "logVerbose": "false", "description": "[parameters('samplePowerShellRunbookDescription')]", "publishContentLink": { "uri": "[uri(parameters('_artifactsLocation'), concat('scripts/AzureAutomationTutorial.ps1', parameters('_artifactsLocationSasToken')))]", "version": "1.0.0.0" } } }, { "type": "runbooks", "apiVersion": "2020-01-13-preview", "name": "[parameters('samplePython2RunbookName')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('automationAccountName')]" ], "properties": { "runbookType": "Python2", "logProgress": "false", "logVerbose": "false", "description": "[parameters('samplePython2RunbookDescription')]", "publishContentLink": { "uri": "[uri(parameters('_artifactsLocation'), concat('scripts/AzureAutomationTutorialPython2.py', parameters('_artifactsLocationSasToken')))]", "version": "1.0.0.0" } } } ] }, { "type": "Microsoft.OperationalInsights/workspaces/linkedServices", "apiVersion": "2020-08-01", "name": "[concat(parameters('workspaceName'), '/' , 'Automation')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('workspaceName')]", "[parameters('automationAccountName')]" ], "properties": { "resourceId": "[resourceId('Microsoft.Automation/automationAccounts', parameters('automationAccountName'))]" } } ] }
Redigera mallen för att uppfylla dina krav. Överväg att skapa en Resource Manager-parameterfil i stället för att skicka parametrar som infogade värden.
Spara filen i en lokal mapp som deployUMSolutiontemplate.json.
Nu är det dags att distribuera den här mallen. Du kan använda antingen PowerShell eller Azure CLI. När du uppmanas att ange en arbetsyta och ett Automation-kontonamn anger du ett namn som är globalt unikt för alla Azure-prenumerationer.
PowerShell
New-AzResourceGroupDeployment ` -Name <deployment-name> ` -ResourceGroupName <resource-group-name> ` -TemplateFile deployUMSolutiontemplate.json ` -_artifactsLocation "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.automation/101-automation/azuredeploy.json"
Azure CLI
az deployment group create --resource-group <my-resource-group> --name <my-deployment-name> --template-file deployUMSolutiontemplate.json --parameters _artifactsLocation="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.automation/101-automation/azuredeploy.json"
Det kan ta några minuter att slutföra distributionen. När det är klart visas ett meddelande som liknar följande som innehåller resultatet:
Granska distribuerade resurser
Logga in på Azure-portalen.
Öppna automationskontot som du skapade i Azure Portal.
Välj Runbooks i den vänstra rutan. På sidan Runbooks visas tre självstudier som skapats med Automation-kontot.
I den vänstra rutan väljer du Länkad arbetsyta. På sidan Länkad arbetsyta visas den Log Analytics-arbetsyta som du angav tidigare länkad till ditt Automation-konto.
I den vänstra rutan väljer du Uppdateringshantering. På sidan Uppdateringshantering visas utvärderingssidan utan information som ett resultat av att bara aktiveras och datorer inte har konfigurerats för hantering.
Rensa resurser
När du inte längre behöver dem tar du bort lösningen Uppdateringar på Log Analytics-arbetsytan, avlänkar Automation-kontot från arbetsytan och tar sedan bort Automation-kontot och arbetsytan.
Nästa steg
Information om hur du använder uppdateringshantering för virtuella datorer finns i Hantera uppdateringar och korrigeringar för dina virtuella datorer.
Om du inte längre vill använda uppdateringshantering och vill ta bort den kan du läsa anvisningarna i Ta bort uppdateringshanteringsfunktionen.
Information om hur du tar bort virtuella datorer från Uppdateringshantering finns i Ta bort virtuella datorer från uppdateringshantering.