Skicka mått för gästoperativsystem till Azure Monitor-måttarkivet med hjälp av en ARM-mall för en virtuell Windows-dator
Kommentar
Azure Monitor Agent (AMA) samlar in övervakningsdata från gästoperativsystemet i Azure och virtuella hybriddatorer och levererar dem till Azure Monitor för användning av funktioner, insikter och andra tjänster som Microsoft Sentinel och Microsoft Defender för molnet.
Vi rekommenderar att du använder Azure Monitor-agenten för att samla in loggar och mått från virtuella datorer. Mer information finns i Översikt över Azure Monitor Agent.
Prestandadata från gästoperativsystemet för virtuella Azure-datorer samlas inte in automatiskt som andra plattformsmått. Installera Azure Monitor Diagnostics-tillägget för att samla in mått för gästoperativsystem i måttdatabasen så att det kan användas med alla funktioner i Azure Monitor Metrics. Dessa funktioner omfattar nästan realtidsaviseringar, diagram, routning och åtkomst från ett REST-API. Den här artikeln beskriver processen för att skicka prestandamått för gästoperativsystem för en virtuell Windows-dator till måttdatabasen med hjälp av en Azure Resource Manager-mall (ARM-mall).
Kommentar
Mer information om hur du konfigurerar diagnostiktillägget för att samla in mått för gästoperativsystem med hjälp av Azure Portal finns i Installera och konfigurera WAD-tillägget (Windows Azure Diagnostics).
Om du inte har använt ARM-mallar tidigare kan du lära dig mer om malldistributioner och deras struktur och syntax.
Förutsättningar
- Din prenumeration måste vara registrerad hos Microsoft.Insights.
- Du måste ha antingen Azure PowerShell eller Azure Cloud Shell installerat.
Konfigurera Azure Monitor som en datamottagare
Azure Diagnostics-tillägget använder en funktion som kallas datamottagare för att dirigera mått och loggar till olika platser. Följande steg visar hur du använder en ARM-mall och PowerShell för att distribuera en virtuell dator med hjälp av den nya Azure Monitor-datamottagaren.
ARM-mall
I det här exemplet kan du använda en offentligt tillgänglig exempelmall. Startmallarna finns på GitHub.
- Azuredeploy.json: En förkonfigurerad ARM-mall för distribution av en virtuell dator.
- Azuredeploy.parameters.json: En parameterfil som lagrar information som vilket användarnamn och lösenord du vill ange för den virtuella datorn. Under distributionen använder ARM-mallen de parametrar som anges i den här filen.
Ladda ned och spara båda filerna lokalt.
Ändra azuredeploy.parameters.json
Öppna filen azuredeploy.parameters.json .
Ange värden för
adminUsername
ochadminPassword
för den virtuella datorn. Dessa parametrar används för fjärråtkomst till den virtuella datorn. Undvik att kapa den virtuella datorn genom att inte använda värdena i den här mallen. Robotar söker igenom Internet efter användarnamn och lösenord i offentliga GitHub-lagringsplatser. De kommer sannolikt att testa virtuella datorer med dessa standardvärden.Skapa en unik
dnsname
för den virtuella datorn.
Ändra azuredeploy.json
Öppna filen azuredeploy.json .
Lägg till ett lagringskonto-ID i
variables
avsnittet i mallen efter posten förstorageAccountName
.// Find these lines. "variables": { "storageAccountName": "[concat(uniquestring(resourceGroup().id), 'sawinvm')]", // Add this line directly below. "accountid": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
Lägg till det här MSI-tillägget (Managed Service Identity) i mallen överst i
resources
avsnittet. Tillägget säkerställer att Azure Monitor accepterar de mått som genereras.//Find this code. "resources": [ // Add this code directly below. { "type": "Microsoft.Compute/virtualMachines/extensions", "name": "[concat(variables('vmName'), '/', 'WADExtensionSetup')]", "apiVersion": "2017-12-01", "location": "[resourceGroup().location]", "dependsOn": [ "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]" ], "properties": { "publisher": "Microsoft.ManagedIdentity", "type": "ManagedIdentityExtensionForWindows", "typeHandlerVersion": "1.0", "autoUpgradeMinorVersion": true, "settings": { "port": 50342 } } },
Lägg till konfigurationen
identity
i den virtuella datorresursen för att säkerställa att Azure tilldelar en systemidentitet till MSI-tillägget. Det här steget säkerställer att den virtuella datorn kan generera gästmått om sig själv till Azure Monitor.// Find this section "subnet": { "id": "[variables('subnetRef')]" } } } ] } }, { "apiVersion": "2017-03-30", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", // add these 3 lines below "identity": { "type": "SystemAssigned" }, //end of added lines "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts/', variables('storageAccountName'))]", "[resourceId('Microsoft.Network/networkInterfaces/', variables('nicName'))]" ], "properties": { "hardwareProfile": { ...
Lägg till följande konfiguration för att aktivera diagnostiktillägget på en virtuell Windows-dator. För en enkel Resource Manager-baserad virtuell dator kan du lägga till tilläggskonfigurationen i resursmatrisen för den virtuella datorn. Med raden
"sinks": "AzMonSink"
och motsvarande"SinksConfig"
senare i avsnittet kan tillägget generera mått direkt till Azure Monitor. Lägg gärna till eller ta bort prestandaräknare efter behov."networkProfile": { "networkInterfaces": [ { "id": "[resourceId('Microsoft.Network/networkInterfaces',variables('nicName'))]" } ] }, "diagnosticsProfile": { "bootDiagnostics": { "enabled": true, "storageUri": "[reference(resourceId('Microsoft.Storage/storageAccounts/', variables('storageAccountName'))).primaryEndpoints.blob]" } } }, //Start of section to add "resources": [ { "type": "Microsoft.Compute/virtualMachines/extensions", "name": "[concat(variables('vmName'), '/', 'Microsoft.Insights.VMDiagnosticsSettings')]", "apiVersion": "2017-12-01", "location": "[resourceGroup().location]", "dependsOn": [ "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]" ], "properties": { "publisher": "Microsoft.Azure.Diagnostics", "type": "IaaSDiagnostics", "typeHandlerVersion": "1.12", "autoUpgradeMinorVersion": true, "settings": { "WadCfg": { "DiagnosticMonitorConfiguration": { "overallQuotaInMB": 4096, "DiagnosticInfrastructureLogs": { "scheduledTransferLogLevelFilter": "Error" }, "Directories": { "scheduledTransferPeriod": "PT1M", "IISLogs": { "containerName": "wad-iis-logfiles" }, "FailedRequestLogs": { "containerName": "wad-failedrequestlogs" } }, "PerformanceCounters": { "scheduledTransferPeriod": "PT1M", "sinks": "AzMonSink", "PerformanceCounterConfiguration": [ { "counterSpecifier": "\\Memory\\Available Bytes", "sampleRate": "PT15S" }, { "counterSpecifier": "\\Memory\\% Committed Bytes In Use", "sampleRate": "PT15S" }, { "counterSpecifier": "\\Memory\\Committed Bytes", "sampleRate": "PT15S" } ] }, "WindowsEventLog": { "scheduledTransferPeriod": "PT1M", "DataSource": [ { "name": "Application!*" } ] }, "Logs": { "scheduledTransferPeriod": "PT1M", "scheduledTransferLogLevelFilter": "Error" } }, "SinksConfig": { "Sink": [ { "name" : "AzMonSink", "AzureMonitor" : {} } ] } }, "StorageAccount": "[variables('storageAccountName')]" }, "protectedSettings": { "storageAccountName": "[variables('storageAccountName')]", "storageAccountKey": "[listKeys(variables('accountid'),'2015-06-15').key1]", "storageAccountEndPoint": "https://core.windows.net/" } } } ] //End of section to add
Spara och stäng båda filerna.
Distribuera ARM-mallen
Kommentar
Du måste köra Azure Diagnostics-tillägget version 1.5 eller senare och ha autoUpgradeMinorVersion:
egenskapen inställd true
på i ARM-mallen. Azure läser sedan in rätt tillägg när den virtuella datorn startas. Om du inte har de här inställningarna i mallen ändrar du dem och distribuerar om mallen.
För att distribuera ARM-mallen använder vi Azure PowerShell.
Starta PowerShell.
Logga in på Azure med hjälp
Login-AzAccount
av .Hämta din lista över prenumerationer med hjälp
Get-AzSubscription
av .Ange den prenumeration som du använder för att skapa/uppdatera den virtuella datorn i:
Select-AzSubscription -SubscriptionName "<Name of the subscription>"
Om du vill skapa en ny resursgrupp för den virtuella dator som distribueras kör du följande kommando:
New-AzResourceGroup -Name "<Name of Resource Group>" -Location "<Azure Region>"
Kommentar
Kom ihåg att använda en Azure-region som är aktiverad för anpassade mått.
Kör följande kommandon för att distribuera den virtuella datorn med hjälp av ARM-mallen.
Kommentar
Om du vill uppdatera en befintlig virtuell dator lägger du till -Mode Incremental i slutet av följande kommando.
New-AzResourceGroupDeployment -Name "<NameThisDeployment>" -ResourceGroupName "<Name of the Resource Group>" -TemplateFile "<File path of your Resource Manager template>" -TemplateParameterFile "<File path of your parameters file>"
När distributionen har slutförts bör den virtuella datorn finnas i Azure Portal och generera mått till Azure Monitor.
Kommentar
Du kan stöta på fel runt den valda
vmSkuSize
. Om det här felet inträffar går du tillbaka till din azuredeploy.json-fil och uppdaterar standardvärdet för parameternvmSkuSize
. I det här fallet rekommenderar vi att du provar"Standard_DS1_v2"
).
Diagram över dina mått
Logga in på Azure-portalen.
Välj Övervaka på den vänstra menyn.
På sidan Övervaka väljer du Mått.
Ändra aggregeringsperioden till Senaste 30 minuterna.
I den nedrullningsbara resursmenyn väljer du den virtuella dator som du skapade. Om du inte har ändrat namnet i mallen bör det vara SimpleWinVM2.
I listrutan namnområden väljer du azure.vm.windows.guestmetrics.
I listrutan mått väljer du Minne%Bekräftade byte i Använd.
Nästa steg
Läs mer om anpassade mått.