다음을 통해 공유


PowerShell 스크립트를 사용하여 VM 인사이트 사용

이 문서에서는 여러 VM을 사용하도록 설정할 수 있는 PowerShell 스크립트를 사용하여 VM 인사이트를 사용하도록 설정하는 방법을 설명합니다. 이 프로세스에서는 스크립트를 사용하여 AMA(Azure Monitoring Agent)용 VM 확장을 설치하고 필요한 경우 종속성 에이전트를 사용하여 VM 인사이트를 사용하도록 설정합니다. AMA가 온보딩된 경우 DCR(데이터 수집 규칙) 및 UAMI(사용자 할당 관리 ID)도 가상 머신 및 가상 머신 확장 집합과 연결됩니다.

지원되는 머신

  • Azure Virtual Machines
  • Azure Virtual Machine Scale Sets

참고 항목

Azure Monitor 에이전트는 버전 1.10.1에서 지원됩니다.

필수 조건

PowerShell 스크립트

PowerShell 스크립트 Install-VMInsights.ps1 을 사용하여 여러 VM 또는 가상 머신 확장 집합에 대한 VM 인사이트를 사용하도록 설정합니다. 이 스크립트는 지정한 매개 변수에 따라 가상 머신 또는 가상 머신 확장 집합을 반복합니다. 이 스크립트를 사용하여 다음에 대해 VM 인사이트를 사용하도록 설정할 수 있습니다.

  • 구독의 모든 가상 머신 및 가상 머신 확장 집합.
  • -ResourceGroup으로 지정된 범위가 지정된 리소스 그룹
  • -Name로 지정된 VM 또는 가상 머신 확장 집합. 와일드카드를 사용하여 여러 리소스 그룹, VM 또는 확장 집합을 지정할 수 있습니다.

Enable-AzureRM 호환성 별칭이 사용하도록 설정된 Az PowerShell 모듈 버전 1.0.0 이상을 사용하고 있는지 확인합니다. Get-Module -ListAvailable Az을 실행하여 버전을 찾습니다. 업그레이드해야 하는 경우 Azure PowerShell 모듈 설치를 참조하세요. PowerShell을 로컬로 실행하는 경우 Connect-AzAccount를 실행하여 Azure와 연결합니다.

스크립트의 인수 세부 정보 및 사용법 예제 목록을 보려면 Get-Help를 실행합니다.

Get-Help Install-VMInsights.ps1 -Detailed

스크립트를 통해 Azure Monitoring Agent 및 Dependency Agent를 사용하여 VM 인사이트를 활성화하세요.

Azure Monitor 에이전트를 사용하여 VM 인사이트를 사용하도록 설정하면 이 스크립트는 DCR(데이터 수집 규칙) 및 UAMI(사용자 할당 관리 ID)를 VM/Virtual Machine Scale Set에 연결합니다. UAMI 설정은 Azure Monitor 에이전트 확장에 전달됩니다.

Install-VMInsights.ps1 -SubscriptionId <SubscriptionId> `
[-ResourceGroup <ResourceGroup>] `
[-ProcessAndDependencies ] `
[-Name <VM or Virtual Machine Scale Set name>] `
-DcrResourceId <DataCollectionRuleResourceId> `
-UserAssignedManagedIdentityName <UserAssignedIdentityName> `
-UserAssignedManagedIdentityResourceGroup <UserAssignedIdentityResourceGroup> 

필수 인수:

  • -SubscriptionId <String> Azure 구독 ID.
  • -DcrResourceId <String> DCR(데이터 수집 규칙) Azure 리소스 ID 식별자. 다양한 구독에서 Vm-Insights를 사용하여 설정되는 VM 또는 가상 머신 확장 집합으로의 DCR을 지정할 수 있습니다.
  • -UserAssignedManagedIdentityResourceGroup <String> UAMI(사용자 할당 관리 ID) 리소스 그룹의 이름
  • -UserAssignedManagedIdentityName <String> UAMI(사용자 할당 관리 ID)의 이름

선택적 인수:

  • -ProcessAndDependencies AMA(Azure Monitoring 에이전트) 설정을 사용하여 Dependency Agent를 온보딩하도록 이 플래그를 설정합니다. 지정하지 않으면 AMA(Azure Monitoring 에이전트)만 온보딩됩니다.
  • -Name <String> 온보딩할 VM 또는 Virtual Machine Scale Set의 이름. 지정하지 않으면 구독 또는 리소스 그룹의 모든 VM 및 Virtual Machine Scale Set이 온보딩됩니다. 와일드카드를 사용하여 여러 VM 또는 Virtual Machine Scale Sets를 지정합니다.
  • -ResourceGroup <String> 온보딩할 VM 또는 Virtual Machine Scale Set을 포함하는 리소스 그룹의 이름. 지정하지 않으면 구독의 모든 VM 및 Virtual Machine Scale Set이 온보딩됩니다. 와일드카드를 사용하여 여러 리소스 그룹을 지정합니다.
  • -PolicyAssignmentName <String> 이 정책과 연결된 VM만 포함합니다. PolicyAssignmentName 매개 변수를 지정하면 SubscriptionId 매개 변수의 VM 부분이 고려됩니다.
  • -TriggerVmssManualVMUpdate [<SwitchParameter>] 업그레이드 정책이 수동으로 설정된 확장 집합에서 VM 인스턴스의 업데이트를 트리거합니다.
  • -WhatIf [<SwitchParameter>] 스크립트에서 명령의 예상 효과에 대한 정보를 가져옵니다.
  • -Confirm [<SwitchParameter>] 스크립트의 각 작업을 확인합니다.
  • -Approve [<SwitchParameter>] 나열된 VM/Virtual Machine Scale Sets에 대한 확인 프롬프트 없이 설치가 시작되도록 승인을 제공합니다.

스크립트는 -Name-ResourceGroup에 대한 와일드카드를 지원합니다. 예를 들어 -Name vm*은 "vm"으로 시작하는 모든 VM 및 Virtual Machine Scale Sets에 대해 VM 인사이트를 사용하도록 설정합니다. 자세한 내용은 Windows PowerShell의 와일드카드를 참조하세요.

예시:

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

출력 형식은 다음과 같습니다.

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

Azure Portal에서 VM/Virtual Machine Scale Set을 확인하여 확장이 설치되어 있는지 확인하거나 다음 명령을 사용합니다.


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

다음 단계