Panoramica dell'agente di macchine virtuali Windows di Azure

L'agente di macchine virtuali Windows di Microsoft Azure è un processo sicuro e leggero che gestisce l'interazione della macchina virtuale con il controller di Infrastruttura di Azure. L'agente di macchine virtuali Windows di Azure ha un ruolo primario per abilitare ed eseguire estensioni di macchine virtuali di Azure. Le estensioni macchina virtuale rendono possibile la configurazione post-distribuzione delle macchine virtuali, ad esempio l'installazione e la configurazione di software. Le estensioni macchina virtuale abilitano anche funzionalità di ripristino, ad esempio la reimpostazione della password amministrativa di una macchina virtuale. Senza l'agente di macchine virtuali Windows di Azure, non è possibile eseguire le estensioni della macchina virtuale.

Questo articolo descrive come installare e rilevare l'agente della macchina virtuale Windows di Azure.

Prerequisiti

L'agente vm Windows di Azure supporta l'architettura x64 per questi sistemi operativi Windows:

  • Windows 10
  • Windows 11
  • Windows Server 2008 SP2
  • Windows Server 2008 R2
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2016
  • Windows Server 2016 Core
  • Windows Server 2019
  • Windows Server 2019 Core
  • Windows Server 2022
  • Windows Server 2022 Core

Importante

  • L'agente vm Windows di Azure deve eseguire almeno Windows Server 2008 SP2 (a 64 bit) con .NET Framework 4.0. Vedere Supporto della versione minima per gli agenti di macchine virtuali in Azure.

  • Assicurarsi che la macchina virtuale abbia accesso all'indirizzo IP 168.63.129.16. Per altre informazioni, vedere Che cos'è l'indirizzo IP 168.63.129.16?.

  • Assicurarsi che DHCP sia abilitato all'interno della macchina virtuale guest. Questo è necessario per ottenere l'indirizzo host o dell'infrastruttura da DHCP per l'agente e le estensioni della macchina virtuale Windows di Azure per il funzionamento. Se è necessario un indirizzo IP privato statico, è necessario configurarlo tramite il portale di Azure o PowerShell e assicurarsi che l'opzione DHCP all'interno della macchina virtuale sia abilitata. Altre informazioni sulla configurazione di un indirizzo IP statico tramite PowerShell.

  • L'esecuzione dell'agente di macchine virtuali Windows di Azure in una macchina virtuale di virtualizzazione annidata potrebbe causare un comportamento imprevedibile, pertanto non è supportato in tale scenario di sviluppo/test.

Installare l'agente di macchine virtuali Windows di Azure

Immagine di Azure Marketplace

L'agente di macchine virtuali Windows di Azure viene installato per impostazione predefinita in qualsiasi macchina virtuale Windows distribuita da un'immagine Azure Marketplace. Quando si distribuisce un'immagine Azure Marketplace dall'portale di Azure, PowerShell, dall'interfaccia della riga di comando di Azure o da un modello di Resource Manager di Azure, viene installato anche l'agente di macchine virtuali Windows di Azure.

Il pacchetto agente vm windows di Azure include due parti:

  • Agente di provisioning di Windows di Azure (PA)
  • Agente guest di Windows di Azure (WinGA)

Per avviare una macchina virtuale, è necessario che l'app sia installata nella macchina virtuale. Non è tuttavia necessario installare WinGA. In fase di distribuzione della macchina virtuale, è possibile scegliere di non installare il WinGA. Nell'esempio seguente viene illustrato come selezionare l'opzione provisionVmAgent con un modello di Resource Manager di Azure:

{
	"resources": [{
		"name": ["parameters('virtualMachineName')"],
		"type": "Microsoft.Compute/virtualMachines",
		"apiVersion": "2016-04-30-preview",
		"location": ["parameters('location')"],
		"dependsOn": ["[concat('Microsoft.Network/networkInterfaces/', parameters('networkInterfaceName'))]"],
		"properties": {
			"osProfile": {
				"computerName": ["parameters('virtualMachineName')"],
				"adminUsername": ["parameters('adminUsername')"],
				"adminPassword": ["parameters('adminPassword')"],
				"windowsConfiguration": {
					"provisionVmAgent": "false"
				}
			}
		}
	}]
}

Se non sono installati gli agenti, non è possibile usare alcuni servizi di Azure, ad esempio Backup di Azure o Sicurezza di Azure. Per questi servizi è necessario installare un'estensione. Se si distribuisce una macchina virtuale senza WinGA, è possibile installare la versione più recente dell'agente in un secondo momento.

Installazione manuale

È possibile installare manualmente l'agente di macchine virtuali Windows di Azure usando un pacchetto di Windows Installer. L'installazione manuale potrebbe essere necessaria quando si crea un'immagine di macchina virtuale personalizzata distribuita in Azure.

Per installare manualmente l'agente della macchina virtuale Windows di Azure, scaricare il programma di installazione e selezionare la versione più recente. È anche possibile cercare una versione specifica nella pagina GitHub per le versioni dell'agente vm Windows di Azure. L'agente vm Windows di Azure è supportato in Windows Server 2008 (64 bit) e versioni successive.

Nota

È importante aggiornare l'opzione AllowExtensionOperations dopo aver installato manualmente l'agente macchina virtuale Windows di Azure in una macchina virtuale distribuita dall'immagine senza ProvisionVMAgent abilitare.

$vm.OSProfile.AllowExtensionOperations = $true
$vm | Update-AzVM

Rilevare l'agente di macchine virtuali Windows di Azure

PowerShell

È possibile usare il modulo di Azure Resource Manager PowerShell per ottenere informazioni sulle macchine virtuali di Azure. Per visualizzare informazioni su una macchina virtuale, ad esempio lo stato di provisioning per l'agente vm Windows di Azure, usare Get-AzVM:

Get-AzVM

L'output dell'esempio condensato seguente mostra la ProvisionVMAgent proprietà annidata all'interno OSProfiledi . È possibile usare questa proprietà per determinare se l'agente della macchina virtuale è stato distribuito nella macchina virtuale.

OSProfile                  :
  ComputerName             : myVM
  AdminUsername            : myUserName
  WindowsConfiguration     :
    ProvisionVMAgent       : True
    EnableAutomaticUpdates : True

Usare lo script seguente per restituire un elenco conciso di nomi di macchine virtuali (che eseguono il sistema operativo Windows) e lo stato dell'agente della macchina virtuale Windows di Azure:

$vms = Get-AzVM

foreach ($vm in $vms) {
    $agent = $vm | Select -ExpandProperty OSProfile | Select -ExpandProperty Windowsconfiguration | Select ProvisionVMAgent
    Write-Host $vm.Name $agent.ProvisionVMAgent
}

Usare lo script seguente per restituire un elenco conciso dei nomi delle macchine virtuali (che eseguono il sistema operativo Linux) e lo stato dell'agente di macchine virtuali Windows di Azure:

$vms = Get-AzVM

foreach ($vm in $vms) {
    $agent = $vm | Select -ExpandProperty OSProfile | Select -ExpandProperty Linuxconfiguration | Select ProvisionVMAgent
    Write-Host $vm.Name $agent.ProvisionVMAgent
}

Rilevamento manuale

Quando si è connessi a una macchina virtuale Windows, è possibile usare Task Manager per esaminare i processi in esecuzione. Per verificare la presenza dell'agente della macchina virtuale Windows di Azure, aprire Task Manager, selezionare la scheda Dettagli e cercare un processo denominato WindowsAzureGuestAgent.exe. La presenza di questo processo indica che l'agente di macchine virtuali è installato.

Aggiornare l'agente di macchine virtuali Windows di Azure

L'agente di macchine virtuali Windows di Azure per Windows viene aggiornato automaticamente nelle immagini distribuite da Azure Marketplace. Le nuove versioni vengono archiviate in Archiviazione di Azure, quindi assicurarsi di non avere firewall che bloccano l'accesso. In quanto nuove macchine virtuali distribuite in Azure, ricevono la versione più recente dell'agente di macchine virtuali al momento del provisioning della macchina virtuale. Se l'agente è stato installato manualmente o si distribuiscono immagini di macchine virtuali personalizzate, è necessario aggiornare manualmente per includere il nuovo agente di vm in fase di creazione dell'immagine.

Raccolta di log automatica dell'agente guest di Windows di Azure

L'agente guest di Windows di Azure ha una funzionalità per raccogliere automaticamente alcuni log. Il processo diCollectGuestLogs.exe controlla questa funzionalità. Esiste sia per i servizi cloud paaS (Platform as a Service) che per le macchine virtuali IaaS (Infrastructure as a Service). L'obiettivo è quello di raccogliere rapidamente e automaticamente i log di diagnostica da una macchina virtuale, in modo che possano essere usati per l'analisi offline.

I log raccolti sono log eventi, log del sistema operativo, log di Azure e alcune chiavi del Registro di sistema. L'agente produce un file ZIP trasferito all'host della macchina virtuale. I team di progettazione e i professionisti del supporto possono quindi usare questo file ZIP per analizzare i problemi relativi alla richiesta del cliente che possiede la macchina virtuale.

Certificati dell'agente guest di Windows di Azure e del sistema operativoProfile

L'agente di macchine virtuali Windows di Azure installa i certificati a cui fa riferimento nel OSProfile valore di una macchina virtuale o di un set di scalabilità di macchine virtuali. Se si rimuove manualmente questi certificati dallo snap-in Certificati di Microsoft Management Console (MMC) all'interno della macchina virtuale guest, l'agente guest di Windows di Azure li aggiungerà di nuovo. Per rimuovere definitivamente un certificato, è necessario rimuoverlo da OSProfilee quindi rimuoverlo dall'interno del sistema operativo guest.

Per una macchina virtuale, usare Remove-AzVMSecret per rimuovere i certificati da OSProfile.

Per altre informazioni sui certificati per i set di scalabilità di macchine virtuali, vedere Azure set di scalabilità di macchine virtuali - Ricerca per categorie rimuovere certificati deprecati?.

Passaggi successivi

Per altre informazioni sulle estensioni della macchina virtuale, vedere Estensioni e funzionalità delle macchine virtuali di Azure.