Habilitar insights de VM usando o script do PowerShell
Este artigo descreve como habilitar insights de VM usando um script do PowerShell que pode habilitar várias VMs. Esse processo usa um script que instala extensões de VM para o Agente de Monitoramento do Azure (AMA) e, se necessário, o Agente de Dependência para habilitar o VM Insights. Se o AMA estiver integrado, uma Regra de Coleta de Dados (DCR) e uma UAMI (Identidade Gerenciada Atribuída pelo Usuário) também serão associadas às máquinas virtuais e aos conjuntos de dimensionamento de máquinas virtuais.
Nota
Para usar o PowerShell para habilitar insights de VM sem usar esse script, consulte Habilitar insights de VM usando modelos ARM
Máquinas suportadas
- Máquinas Virtuais do Microsoft Azure
- Conjuntos de Dimensionamento de Máquinas Virtuais do Azure
Nota
O Azure Monitor Agent é suportado a partir da versão 1.10.1.
Pré-requisitos
- Consulte Manage Azure Monitor Agent para obter os pré-requisitos relacionados ao Azure Monitor Agent.
- Consulte Sistemas operativos e ambientes suportados pelo agente do Azure Monitor para verificar se o seu sistema operativo é suportado pelo agente do Azure Monitor. Consulte Requisitos do Agente de Dependência para verificar se o seu sistema operacional é suportado pelo Agente de Dependência.
- Para habilitar o isolamento de rede para o Azure Monitor Agent, consulte Habilitar o isolamento de rede para o Azure Monitor Agent usando o Private Link.
Script do PowerShell
Use o script do PowerShell Install-VMInsights.ps1 para habilitar insights de VM para várias VMs ou conjuntos de dimensionamento de máquinas virtuais. Esse script itera pelas máquinas virtuais ou conjuntos de dimensionamento de máquinas virtuais de acordo com os parâmetros especificados. O script pode ser usado para habilitar insights de VM para:
- De cada máquina virtual e conjunto de dimensionamento de máquinas virtuais na sua subscrição.
- Os grupos de recursos com escopo especificados pelo
-ResourceGroup
. - Um conjunto de escala de VM ou máquina virtual especificado pelo
-Name
. Você pode especificar vários grupos de recursos, VMs ou conjuntos de dimensionamento usando curingas.
Verifique se você está usando o módulo Az PowerShell versão 1.0.0 ou posterior com Enable-AzureRM
aliases de compatibilidade habilitados. Executar Get-Module -ListAvailable Az
para localizar a versão. Para atualizar, consulte Instalar o módulo do Azure PowerShell. Se você estiver executando o PowerShell localmente, execute Connect-AzAccount
para criar uma conexão com o Azure.
Para obter uma lista dos detalhes do argumento do script e do uso de exemplo, execute Get-Help
.
Get-Help Install-VMInsights.ps1 -Detailed
Use o script para habilitar insights de VM usando o Agente de Monitoramento do Azure e o Agente de Dependência.
Quando você habilita insights de VM usando o Azure Monitor Agent, o script associa uma Regra de Coleta de Dados (DCR) e uma Identidade Gerenciada Atribuída ao Usuário (UAMI) ao Conjunto de Dimensionamento de VM/Máquina Virtual. As configurações do UAMI são passadas para a extensão do Agente do Azure Monitor.
Install-VMInsights.ps1 -SubscriptionId <SubscriptionId> `
[-ResourceGroup <ResourceGroup>] `
[-ProcessAndDependencies ] `
[-Name <VM or Virtual Machine Scale Set name>] `
-DcrResourceId <DataCollectionRuleResourceId> `
-UserAssignedManagedIdentityName <UserAssignedIdentityName> `
-UserAssignedManagedIdentityResourceGroup <UserAssignedIdentityResourceGroup>
Argumentos necessários:
-SubscriptionId <String>
ID de assinatura do Azure.-DcrResourceId <String>
Identificador de ID de recurso do Azure da Regra de Recolha de Dados (DCR). Você pode especificar DCRs de diferentes assinaturas para as VMs ou conjuntos de dimensionamento de máquinas virtuais que estão sendo habilitados com o Vm-Insights.-UserAssignedManagedIdentityResourceGroup <String>
Nome do grupo de recursos UAMI (User Assigned Managed Identity).-UserAssignedManagedIdentityName <String>
Nome da Identidade Gerenciada Atribuída ao Usuário (UAMI).
Argumentos opcionais:
-ProcessAndDependencies
Defina esse sinalizador para integrar o Agente de Dependência com as configurações do Agente de Monitoramento do Azure (AMA). Se não for especificado, apenas o Agente de Monitoramento do Azure (AMA) será integrado.-Name <String>
Nome da VM ou do Conjunto de Escala da Máquina Virtual a ser integrado. Se não for especificado, todas as VMs e o Conjunto de Dimensionamento de Máquina Virtual na assinatura ou no grupo de recursos serão integrados. Use curingas para especificar várias VMs ou Conjuntos de Dimensionamento de Máquina Virtual.-ResourceGroup <String>
Nome do grupo de recursos que contém a VM ou o Conjunto de Dimensionamento de Máquina Virtual a ser integrado. Se não for especificado, todas as VMs e o Conjunto de Escala de Máquina Virtual na assinatura serão integrados. Use curingas para especificar vários grupos de recursos.-PolicyAssignmentName <String>
Inclua apenas VMs associadas a esta política. Quando o parâmetro PolicyAssignmentName é especificado, a parte VMs do parâmetro SubscriptionId é considerada.-TriggerVmssManualVMUpdate [<SwitchParameter>]
Acione a atualização de instâncias de VM em um conjunto de escala cuja política de atualização esteja definida como Manual.-WhatIf [<SwitchParameter>]
Obtenha informações sobre o efeito esperado dos comandos no script.-Confirm [<SwitchParameter>]
Confirme cada ação no script.-Approve [<SwitchParameter>]
Forneça a aprovação para que a instalação seja iniciada sem nenhum prompt de confirmação para os conjuntos de escala de VM/máquina virtual listados.
O script suporta curingas para -Name
e -ResourceGroup
. Por exemplo, -Name vm*
habilita insights de VM para todas as VMs e Conjuntos de Escala de Máquina Virtual que começam com "vm". Para obter mais informações, consulte Curingas no Windows PowerShell.
Exemplo:
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
A saída tem o seguinte formato:
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
Verifique seu Conjunto de Escala de VM/Máquina Virtual no portal do Azure para ver se as extensões estão instaladas ou use o seguinte comando:
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
Próximos passos
- Consulte Usar mapa de insights de VM para exibir dependências de aplicativos descobertas.
- Consulte Exibir o desempenho da VM do Azure para identificar gargalos, a utilização geral e o desempenho da sua VM.