Abilitare informazioni dettagliate sulle macchine virtuali usando lo script di PowerShell
Questo articolo descrive come abilitare le informazioni dettagliate sulle macchine virtuali usando uno script di PowerShell in grado di abilitare più macchine virtuali. Questo processo usa uno script per installare le estensioni di macchina virtuale per l'agente di monitoraggio di Azure e, se necessario, Dependency Agent per abilitare Informazioni dettagliate macchina virtuale. Se si esegue l'onboarding dell'agente di Monitoraggio di Azure, vengono associate anche una regola di raccolta dati e un'identità gestita assegnata dall'utente (UAMI) alle macchine virtuali e ai set di scalabilità di macchine virtuali.
Nota
Per usare PowerShell per abilitare le informazioni dettagliate sulle macchine virtuali senza usare questo script, vedere Abilitare informazioni dettagliate sulle macchine virtuali usando i modelli di Resource Manager
Computer supportati
- Macchine virtuali di Azure
- Set di scalabilità di macchine virtuali di Azure
Nota
L'agente di Monitoraggio di Azure è supportato dalla versione 1.10.1.
Prerequisiti
- Vedere Gestire l'agente di Monitoraggio di Azure per i prerequisiti correlati all'agente di Monitoraggio di Azure.
- Vedere Agente di Monitoraggio di Azure supportato da sistemi operativi e ambienti per verificare che il sistema operativo sia supportato dall'agente di Monitoraggio di Azure. Vedere Requisiti di Dependency Agent per verificare che il sistema operativo sia supportato da Dependency Agent.
- Per abilitare l'isolamento di rete per l'agente di Monitoraggio di Azure, vedere Abilitare l'isolamento di rete per l'agente di Monitoraggio di Azure tramite collegamento privato.
Script di PowerShell
Usare lo script di PowerShell Install-VMInsights.ps1 per abilitare informazioni dettagliate sulle macchine virtuali per più macchine virtuali o set di scalabilità di macchine virtuali. Questo script esegue l'iterazione delle macchine virtuali o dei set di scalabilità di macchine virtuali in base ai parametri specificati. Lo script può essere usato per abilitare Informazioni dettagliate macchina virtuale per:
- Ogni macchina virtuale e set di scalabilità di macchine virtuali nella sottoscrizione.
- Gruppi di risorse con ambito specificati da
-ResourceGroup
. - Una macchina virtuale o un set di scalabilità di macchine virtuali specificato da
-Name
. È possibile specificare più gruppi di risorse, macchine virtuali o set di scalabilità usando caratteri jolly.
Verificare di usare il modulo Az PowerShell versione 1.0.0 o successiva con alias di compatibilità Enable-AzureRM
abilitati. Eseguire Get-Module -ListAvailable Az
per trovare la versione. Se è necessario eseguire l'aggiornamento, vedere Installare il modulo Azure PowerShell. Se si esegue PowerShell in locale, eseguire Connect-AzAccount
per creare una connessione con Azure.
Per un elenco di dettagli sugli argomenti dello script con esempi di utilizzo, eseguire Get-Help
.
Get-Help Install-VMInsights.ps1 -Detailed
Usare lo script per abilitare Informazioni dettagliate macchina virtuale usando l'agente di monitoraggio di Azure e Dependency Agent.
Quando si abilita Informazioni dettagliate macchina virtuale usando l'agente di Monitoraggio di Azure, lo script associa una regola di raccolta dati (DCR) e un'identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali / alle macchine virtuali. Le impostazioni UAMI vengono passate all'estensione agente di Monitoraggio di Azure.
Install-VMInsights.ps1 -SubscriptionId <SubscriptionId> `
[-ResourceGroup <ResourceGroup>] `
[-ProcessAndDependencies ] `
[-Name <VM or Virtual Machine Scale Set name>] `
-DcrResourceId <DataCollectionRuleResourceId> `
-UserAssignedManagedIdentityName <UserAssignedIdentityName> `
-UserAssignedManagedIdentityResourceGroup <UserAssignedIdentityResourceGroup>
Argomenti obbligatori:
-SubscriptionId <String>
ID della sottoscrizione di Azure.-DcrResourceId <String>
Identificatore dell'ID risorsa di Azure della regola di raccolta dati (DCR). È possibile specificare i DCR da sottoscrizioni diverse alle macchine virtuali o ai set di scalabilità di macchine virtuali abilitati con Informazioni dettagliate macchina virtuale.-UserAssignedManagedIdentityResourceGroup <String>
Nome del gruppo di risorse di identità gestita assegnata dall'utente (UAMI).-UserAssignedManagedIdentityName <String>
Nome dell'identità gestita assegnata dall'utente (UAMI).
Argomenti facoltativi:
-ProcessAndDependencies
Impostare questo flag per eseguire l'onboarding del Dependency Agent con le impostazioni dell'agente di Monitoraggio di Azure. Se il valore non è specificato, viene eseguito solo l'onboarding dell'agente di Monitoraggio di Azure.-Name <String>
Nome della macchina virtuale o del set di scalabilità di macchine virtuali per cui eseguire l'onboarding. Se il valore non è specificato, viene eseguito l'onboarding di tutte le macchine virtuali e del set di scalabilità di macchine virtuali nella sottoscrizione o nel gruppo di risorse. Usare i caratteri jolly per specificare più macchine virtuali o set di scalabilità di macchine virtuali.-ResourceGroup <String>
Nome del gruppo di risorse che contiene la macchina virtuale o il set di scalabilità di macchine virtuali di cui eseguire l'onboarding. Se il valore non è specificato, viene eseguito l'onboarding di tutte le macchine virtuali e del set di scalabilità di macchine virtuali nella sottoscrizione. Usare i caratteri jolly per specificare più gruppi di risorse.-PolicyAssignmentName <String>
Includere solo le macchine virtuali associate a questo criterio. Quando viene specificato il parametro PolicyAssignmentName, vengono considerate le macchine virtuali che fanno parte del parametro SubscriptionId.-TriggerVmssManualVMUpdate [<SwitchParameter>]
Attivare l'aggiornamento delle istanze di macchina virtuale in un set di scalabilità i cui criteri di aggiornamento sono impostati su Manuale.-WhatIf [<SwitchParameter>]
Ottenere informazioni sull'effetto previsto dei comandi nello script.-Confirm [<SwitchParameter>]
Confermare ogni azione nello script.-Approve [<SwitchParameter>]
Fornire l'approvazione per l'installazione per iniziare senza una richiesta di conferma per i set di scalabilità di macchine virtuali / le macchine virtuali elencati.
Lo script supporta i caratteri jolly per -Name
e -ResourceGroup
. Ad esempio, -Name vm*
abilita Informazioni dettagliate macchina virtuale per tutte le macchine virtuali e i set di scalabilità di macchine virtuali che iniziano con "vm". Per altre informazioni, vedere Caratteri jolly in Windows PowerShell.
Esempio:
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
L'output presenta il formato seguente:
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
Controllare il set di scalabilità di macchine virtuali / le macchine virtuali nel portale di Azure per verificare se le estensioni sono installate o usare il comando seguente:
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
Passaggi successivi
- Vedere Usare la mappa di Informazioni dettagliate macchina virtuale per visualizzare le dipendenze delle applicazioni individuate.
- Vedere Visualizzare le prestazioni delle macchine virtuali di Azure per identificare i colli di bottiglia e l'utilizzo complessivo e le prestazioni della propria macchina virtuale.