Aktivera VM-insikter med hjälp av PowerShell
Den här artikeln beskriver hur du aktiverar VM-insikter på virtuella Azure-datorer med hjälp av PowerShell. Den här proceduren kan användas för:
- Azure Virtual Machines
- Skalningsuppsättningar för virtuella Microsoft Azure-datorer
Det här skriptet installerar VM-tillägg för Log Analytics/Azure Monitoring Agent (AMA) och, om det behövs, beroendeagenten för att aktivera VM Insights. Om AMA registreras associeras även en datainsamlingsregel (DCR) och en användartilldelad hanterad identitet (UAMI) med de virtuella datorerna och vm-skalningsuppsättningarna.
Viktigt!
Den äldre Log Analytics-agentenkommer att vara inaktuell i augusti 2024. Efter det här datumet kommer Microsoft inte längre att tillhandahålla någon support för Log Analytics-agenten. Migrera till Azure Monitor-agenten före augusti 2024 för att fortsätta mata in data.
Kommentar
Azure Monitor Agent stöds från version 1.10.1.
Förutsättningar
Du måste:
- Se Hantera Azure Monitor-agent för krav som rör Azure Monitor-agenten.
- Se Operativsystem som stöds för att säkerställa att operativsystemet för den virtuella datorn eller vm-skalningsuppsättningen som du aktiverar stöds.
- Information om hur du aktiverar nätverksisolering för Azure Monitor Agent finns i Aktivera nätverksisolering för Azure Monitor Agent med private link.
PowerShell-skript
Om du vill aktivera VM-insikter för flera virtuella datorer eller vm-skalningsuppsättningar använder du PowerShell-skriptet Install-VMInsights.ps1. Skriptet är tillgängligt från Azure PowerShell-galleriet. Det här skriptet itererar via de virtuella datorerna eller vm-skalningsuppsättningarna enligt de parametrar som du anger. Skriptet kan användas för att aktivera VM-insikter för:
- Varje VM- och VM-skalningsuppsättning i din prenumeration.
- De begränsade resursgrupper som anges av
-ResourceGroup
. - En VM- eller VM-skalningsuppsättning som anges av
-Name
. Du kan ange flera resursgrupper, virtuella datorer eller skalningsuppsättningar med jokertecken.
Kontrollera att du använder Az PowerShell-modul version 1.0.0 eller senare med Enable-AzureRM
kompatibilitetsalias aktiverade. Kör Get-Module -ListAvailable Az
för att hitta versionen. Information om hur du uppgraderar finns i Installera Azure PowerShell-modulen. Om du kör PowerShell lokalt kör du Connect-AzAccount
för att skapa en anslutning till Azure.
Om du vill ha en lista över skriptets argumentinformation och exempelanvändning kör du Get-Help
.
Get-Help Install-VMInsights.ps1 -Detailed
Använd skriptet för att aktivera VM-insikter med hjälp av Azure Monitoring Agent och Dependency Agent eller Log Analytics Agent.
När du aktiverar VM-insikter med Hjälp av Azure Monitor Agent associerar skriptet en datainsamlingsregel (DCR) och en användartilldelad hanterad identitet (UAMI) till VM/VM-skalningsuppsättningen. UAMI-inställningarna skickas till Azure Monitor Agent-tillägget.
Install-VMInsights.ps1 -SubscriptionId <SubscriptionId> `
[-ResourceGroup <ResourceGroup>] `
[-ProcessAndDependencies ] `
[-Name <VM or Virtual Machine Scale Set name>] `
-DcrResourceId <DataCollectionRuleResourceId> `
-UserAssignedManagedIdentityName <UserAssignedIdentityName> `
-UserAssignedManagedIdentityResourceGroup <UserAssignedIdentityResourceGroup>
Obligatoriska argument:
-SubscriptionId <String>
Azure-prenumerations-ID.-DcrResourceId <String>
ID för Azure-resurs-ID för datainsamlingsregel (DCR). Du kan ange domänkontrollanter från olika prenumerationer till de virtuella datorer eller vm-skalningsuppsättningar som aktiveras med Vm-Insights.-UserAssignedManagedIdentityResourceGroup <String>
Namn på UAMI-resursgruppen (User Assigned Managed Identity).-UserAssignedManagedIdentityName <String>
Namn på användartilldelad hanterad identitet (UAMI).
Valfria argument:
-ProcessAndDependencies
Ange den här flaggan för att registrera inställningarna för Beroendeagent med Azure Monitoring Agent (AMA). Om det inte anges registreras endast Azure Monitoring Agent (AMA).-Name <String>
Namnet på den virtuella datorn eller vm-skalningsuppsättningen som ska registreras. Om det inte anges registreras alla virtuella datorer och vm-skalningsuppsättningar i prenumerationen eller resursgruppen. Använd jokertecken för att ange flera virtuella datorer eller VM-skalningsuppsättningar.-ResourceGroup <String>
Namnet på resursgruppen som innehåller den virtuella datorn eller vm-skalningsuppsättningen som ska registreras. Om det inte anges registreras alla virtuella datorer och vm-skalningsuppsättningar i prenumerationen. Använd jokertecken för att ange flera resursgrupper.-PolicyAssignmentName <String>
Inkludera endast virtuella datorer som är associerade med den här principen. När parametern PolicyAssignmentName har angetts beaktas den virtuella datorns del av parametern SubscriptionId.-TriggerVmssManualVMUpdate [<SwitchParameter>]
Utlös uppdateringen av virtuella datorinstanser i en skalningsuppsättning vars uppgraderingsprincip är inställd på Manuell.-WhatIf [<SwitchParameter>]
Hämta information om den förväntade effekten av kommandona i skriptet.-Confirm [<SwitchParameter>]
Bekräfta varje åtgärd i skriptet.-Approve [<SwitchParameter>]
Ange godkännande för installationen för att starta utan någon bekräftelsefråga för den angivna virtuella datorns/vm-skalningsuppsättningar.
Skriptet stöder jokertecken för -Name
och -ResourceGroup
. Aktiverar till exempel -Name vm*
VM-insikter för alla virtuella datorer och vm-skalningsuppsättningar som börjar med "vm". Mer information finns i Jokertecken i Windows PowerShell.
Exempel:
Install-VMInsights.ps1 -SubscriptionId 12345678-abcd-abcd-1234-12345678 `
-ResourceGroup rg-AMAPowershell `
-ProcessAndDependencies `
-Name vmAMAPowershellWindows `
-DcrResourceId /subscriptions/12345678-abcd-abcd-1234-12345678/resourceGroups/rg-AMAPowershell/providers/Microsoft.Insights/dataCollectionRules/MSVMI-ama-vmi-default-dcr `
-UserAssignedManagedIdentityName miamatest1 `
-UserAssignedManagedIdentityResourceGroup amapowershell
Kommandot returnerar utdata med följande format:
Name Account SubscriptionName Environment TenantId
---- ------- ---------------- ----------- --------
AzMon001 12345678-abcd-123… MSI@9876 AzMon001 AzureCloud abcd1234-9876-abcd-1234-1234abcd5648
Getting list of VMs or VM Scale Sets matching specified criteria.
VMs and Virtual Machine Scale Sets matching selection criteria :
ResourceGroup : rg-AMAPowershell
vmAMAPowershellWindows
Confirm
Continue?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
(rg-AMAPowershell) : Assigning roles
(rg-AMAPowershell) vmAMAPowershellWindows : Assigning User Assigned Managed Identity edsMIAMATest
(rg-AMAPowershell) vmAMAPowershellWindows : Successfully assigned User Assigned Managed Identity edsMIAMATest
(rg-AMAPowershell) vmAMAPowershellWindows : Data Collection Rule Id /subscriptions/12345678-abcd-abcd-1234-12345678/resourceGroups/rg-AMAPowershell/providers/Microsoft.Insights/dataCollectionRules/MSVMI-ama-vmi-default-dcr already associated with the VM.
(rg-AMAPowershell) vmAMAPowershellWindows : Extension AzureMonitorWindowsAgent, type = Microsoft.Azure.Monitor.AzureMonitorWindowsAgent already installed. Provisioning State : Succeeded
(rg-AMAPowershell) vmAMAPowershellWindows : Installing/Updating extension AzureMonitorWindowsAgent, type = Microsoft.Azure.Monitor.AzureMonitorWindowsAgent
(rg-AMAPowershell) vmAMAPowershellWindows : Successfully installed/updated extension AzureMonitorWindowsAgent, type = Microsoft.Azure.Monitor.AzureMonitorWindowsAgent
(rg-AMAPowershell) vmAMAPowershellWindows : Installing/Updating extension DA-Extension, type = Microsoft.Azure.Monitoring.DependencyAgent.DependencyAgentWindows
(rg-AMAPowershell) vmAMAPowershellWindows : Successfully installed/updated extension DA-Extension, type = Microsoft.Azure.Monitoring.DependencyAgent.DependencyAgentWindows
(rg-AMAPowershell) vmAMAPowershellWindows : Successfully onboarded VM insights
Summary :
Total VM/VMSS to be processed : 1
Succeeded : 1
Skipped : 0
Failed : 0
VMSS Instance Upgrade Failures : 0
Kontrollera vm-/vm-skalningsuppsättningen i Azure-portalen för att se om tilläggen är installerade eller använd följande kommando:
az vm extension list --resource-group <resource group> --vm-name <VM name> -o table
Name ProvisioningState Publisher Version AutoUpgradeMinorVersion
------------------------ ------------------- ------------------------------------------ --------- -------------------------
AzureMonitorWindowsAgent Succeeded Microsoft.Azure.Monitor 1.16 True
DA-Extension Succeeded Microsoft.Azure.Monitoring.DependencyAgent 9.10 True
Nästa steg
- Se Använda VM Insights Map för att visa identifierade programberoenden.
- Se Visa prestanda för virtuella Azure-datorer för att identifiera flaskhalsar, övergripande användning och den virtuella datorns prestanda.