Gestire l'estensione della macchina virtuale Network Watcher Agent

L'estensione macchina virtuale Network Watcher Agent è un requisito per alcune delle funzionalità di Azure Network Watcher che acquisiscono il traffico di rete per diagnosticare e monitorare le macchine virtuali di Azure. Per altre informazioni, vedere Che cos'è Azure Network Watcher?

In questo articolo impari come installare, aggiornare e disinstallare Network Watcher Agent per Windows e Linux. L'installazione dell'agente non causa l'interruzione, né richiede il riavvio della macchina virtuale. Se la macchina virtuale viene distribuita da un servizio Azure, verifica la documentazione del servizio per determinare se il servizio consente l'installazione di estensioni nella macchina virtuale.

Note

L'estensione Network Watcher Agent non è supportata nei cluster AKS.

Prerequisiti

  • Una macchina virtuale Azure (VM) che esegue un sistema operativo supportato. Per ulteriori informazioni, vedi Sistemi operativi supportati.

  • Connettività TCP in uscita per 169.254.169.254 su port 80 e 168.63.129.16 su port 8037. L'agente usa questi indirizzi IP per comunicare con la piattaforma Azure.

  • Connettività Internet: Network Watcher Agent richiede connettività internet affinché alcune funzionalità funzionino correttamente. Ad esempio, richiede la connettività all'account di archiviazione per caricare pacchetti di dati.

Sistemi operativi supportati

Puoi installare l'estensione Network Watcher Agent per Windows sui seguenti sistemi operativi:

  • Versioni di Windows Server 2012, 2012 R2, 2016, 2019, 2022 e 2025.
  • Versioni di Windows 10 e 11.

Note

Attualmente Nano Server non è supportato.

Puoi installare l'estensione Network Watcher Agent per Linux sulle seguenti distribuzioni Linux:

Distribution Versione
AlmaLinux 9.2
Azure Linux 2.0
CentOS 1 6.10 e 7
Debian 7 e 8
openSUSE Leap 42.3+
Oracle Linux 6.10 2, 7, 8 e 9+
Red Hat Enterprise Linux (RHEL) 6.10 3, 7, 8 e 9.2
Rocky Linux 9.1
SUSE Linux Enterprise Server (SLES) 12 e 15 (SP2, SP3 e SP4)
Ubuntu 16+

1 CentOS Linux ha raggiunto la fine della sua vita (EOL) il 30 giugno 2024. Per ulteriori informazioni, consultare la Guida alla fine del ciclo di vita di CentOS.

2Il supporto del ciclo di vita esteso (ELS) per Oracle Linux versione 6.X è terminato il 1° luglio 2024.

3Il supporto del ciclo di vita esteso (ELS) per Red Hat Enterprise Linux 6.X è terminato il 30 giugno 2024.

Note

Il monitoraggio dell'Internet Control Message Protocol (ICMP) attualmente non è supportato nel Network Watcher Agent su Oracle Linux a causa di limitazioni note a livello di kernel specifiche della distribuzione.

Schema dell'estensione

Lo schema JSON seguente illustra lo schema dell'estensione Network Watcher Agent. L'estensione non richiede né supporta alcuna impostazione fornita dall'utente e si basa sulla configurazione predefinita.

{
    "name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
    "type": "Microsoft.Compute/virtualMachines/extensions",
    "apiVersion": "2023-03-01",
    "location": "[resourceGroup().location]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachines/', parameters('vmName'))]"
    ],
    "properties": {
        "autoUpgradeMinorVersion": true,
        "publisher": "Microsoft.Azure.NetworkWatcher",
        "type": "NetworkWatcherAgentWindows",
        "typeHandlerVersion": "1.4"
    }
}
{
    "name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
    "type": "Microsoft.Compute/virtualMachines/extensions",
    "apiVersion": "2023-03-01",
    "location": "[resourceGroup().location]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachines/', parameters('vmName'))]"
    ],
    "properties": {
        "autoUpgradeMinorVersion": true,
        "publisher": "Microsoft.Azure.NetworkWatcher",
        "type": "NetworkWatcherAgentLinux",
        "typeHandlerVersion": "1.4"
    }
}

Elencare le estensioni installate

Dalla pagina della macchina virtuale nel portale Azure, puoi visualizzare le estensioni installate seguendo questi passaggi:

  1. In Impostazioni selezionare Estensioni e applicazioni.

  2. Nella scheda Estensioni è possibile visualizzare tutte le estensioni installate nella macchina virtuale. Se la lista è lunga, usa la casella di ricerca per filtrare la lista.

Installare l'estensione macchina virtuale Network Watcher Agent

Dalla pagina della macchina virtuale nel portale di Azure è possibile installare l'estensione macchina virtuale Network Watcher Agent seguendo questa procedura:

  1. In Impostazioni selezionare Estensioni e applicazioni.

  2. Seleziona + Aggiungi, cerca Network Watcher Agent e installalo. Se l'estensione è già installata, è possibile visualizzarla nell'elenco delle estensioni.

    Screenshot che mostra la pagina delle estensioni della macchina virtuale nel portale di Azure.

  3. Nella casella di ricerca di Installa un'estensione, inserisci Network Watcher Agent, seleziona l'estensione corrispondente per il tuo sistema operativo dalla lista e poi seleziona Avanti.

  4. Selezionare Rivedi e crea e quindi Crea.

Aggiorna l'estensione VM Network Watcher Agent

Controllare la versione dell'estensione

È possibile controllare la versione dell'estensione usando il portale di Azure, l'interfaccia della riga di comando di Azure o PowerShell.

  1. Vai su Estensioni + applicazioni della tua VM nel portale Azure.

  2. Nella lista delle estensioni, controlla la colonna Versione per AzureNetworkWatcherExtension. Se è disponibile una versione più recente, la colonna Ultima Versione appare (Aggiornamento disponibile).

    Screenshot che mostra l'estensione Network Watcher.

Note

L’ultima versione dell'estensione Network Watcher è 1.4.4011.1.

Abilita l'aggiornamento automatico

L'aggiornamento automatico consente alla piattaforma Azure di aggiornare l'estensione all'ultima versione senza interventi manuali. Usa i seguenti passaggi per verificare se l'aggiornamento automatico è abilitato e per attivarlo se non lo è.

  1. Nelle impostazioni della tua VM nel portale Azure, seleziona Estensioni + applicazioni.

  2. Seleziona AzureNetworkWatcherExtension dall'elenco delle estensioni e seleziona la colonna Stato dell'aggiornamento automatico .

  3. Se risulta Disabilitato, seleziona Abilita aggiornamento automatico dalla barra degli strumenti.

    Screenshot che mostra l'estensione Network Watcher.

  4. Seleziona per confermare.

    Screenshot che mostra la finestra di conferma per abilitare l'aggiornamento automatico sull'estensione Network Watcher.

Note

Dopo aver abilitato l'aggiornamento automatico, Azure aggiorna l'estensione automaticamente senza dover riavviare la macchina virtuale. Questo processo può richiedere fino a 30 giorni dopo il rilascio di una nuova versione.

Aggiorna manualmente

  1. Nelle impostazioni della tua VM nel portale Azure, seleziona Estensioni + applicazioni.

  2. Seleziona AzureNetworkWatcherExtension dall'elenco delle estensioni, poi seleziona Aggiorna dalla barra degli strumenti.

    Screenshot che mostra l'estensione Network Watcher.

  3. Seleziona per confermare.

    Screenshot che mostra la finestra di dialogo di conferma per aggiornare l'estensione Network Watcher all'ultima versione.

  4. Quando l'aggiornamento termina, le colonne Versione e Ultima Versione mostrano lo stesso numero di versione.

    Screenshot che mostra l'estensione Network Watcher dopo che è stata aggiornata all'ultima versione.

Se l'aggiornamento non applica l'ultima versione, rimuovi l'estensione e reinstallala:

  1. Selezionare AzureNetworkWatcherExtension dall'elenco delle estensioni e quindi selezionare Disinstalla.
  2. Seleziona + Aggiungi, cerca Network Watcher Agent e installalo di nuovo. La piattaforma installa automaticamente l'ultima versione disponibile. Per ulteriori informazioni, consulta Installa l'estensione VM di Network Watcher Agent.

Aggiornamento su larga scala con uno script PowerShell

Se hai grandi deployment, usa uno script PowerShell per aggiornare più VM in un abbonamento contemporaneamente. Il seguente script aggiorna l'estensione Network Watcher su tutte le VM obsolete in un abbonamento:

<#
    .SYNOPSIS
    This script scans all VMs in the provided subscription and upgrades any out-of-date AzureNetworkWatcherExtensions to the latest available version.
    .DESCRIPTION
    This script is a no-op if AzureNetworkWatcherExtensions are already up to date.
    Requires Azure PowerShell 4.2 or higher to be installed.
    .EXAMPLE
    .\UpdateVMAgentsInSub.ps1 -SubID aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e -NoUpdate
#>

[CmdletBinding()]
param(
    [Parameter(Mandatory=$true)]
    [string] $SubID,
    [Parameter(Mandatory=$false)]
    [Switch] $NoUpdate = $false
)
function Get-LatestExtensionVersion($location, $extensionType)
{
    $latestImage = Get-AzVMExtensionImage -Location $location -PublisherName "Microsoft.Azure.NetworkWatcher" -Type $extensionType |
        Sort-Object -Property { [Version]$_.Version } -Descending |
        Select-Object -First 1
    return $latestImage.Version
}
Write-Host "Scanning all VMs in the subscription: $($SubID)"
Set-AzContext -SubscriptionId $SubID
$vms = Get-AzVM
$foundVMs = $false
Write-Host "Starting VM search, this may take a while"
foreach ($vmName in $vms)
{
    # Get Detailed VM info
    $vm = Get-AzVM -ResourceGroupName $vmName.ResourceGroupName -Name $vmName.name -Status
    $isitWindows = $vm.OsName -like "*Windows*"
    $type = if ($isitWindows) { "NetworkWatcherAgentWindows" } else { "NetworkWatcherAgentLinux" }
    $latestVersion = Get-LatestExtensionVersion -location $vmName.Location -extensionType $type

    foreach ($extension in $vm.Extensions)
    {
        if ($extension.Name -eq "AzureNetworkWatcherExtension")
        {
            if ([Version]$extension.TypeHandlerVersion -lt [Version]$latestVersion)
            {
                $foundVMs = $true
                if (-not ($NoUpdate))
                {
                    Write-Host "Found VM that needs to be updated: subscriptions/$($SubID)/resourceGroups/$($vm.ResourceGroupName)/providers/Microsoft.Compute/virtualMachines/$($vm.Name) -> Updating to $latestVersion " -NoNewline
                    Remove-AzVMExtension -ResourceGroupName $vm.ResourceGroupName -VMName $vm.Name -Name "AzureNetworkWatcherExtension" -Force
                    Write-Host "... " -NoNewline
                    Set-AzVMExtension -ResourceGroupName $vm.ResourceGroupName -Location $vmName.Location -VMName $vm.Name -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type $type -TypeHandlerVersion $latestVersion
                    Write-Host "Done"
                }
                else
                {
                    Write-Host "Found $(if ($isitWindows) {"Windows"} else {"Linux"}) VM that needs to be updated to $($latestVersion): subscriptions/$($SubID)/resourceGroups/$($vm.ResourceGroupName)/providers/Microsoft.Compute/virtualMachines/$($vm.Name)"
                }
            }
        }
    }
}

if ($foundVMs)
{
    Write-Host "Finished $(if ($NoUpdate) {"searching"} else {"updating"}) out of date AzureNetworkWatcherExtension on VMs"
}
else
{
    Write-Host "All AzureNetworkWatcherExtensions up to date"
}

Disinstallare l'estensione VM Network Watcher Agent

Dalla pagina della macchina virtuale nel portale di Azure è possibile disinstallare l'estensione macchina virtuale Network Watcher Agent seguendo questa procedura:

  1. In Impostazioni selezionare Estensioni e applicazioni.

  2. Selezionare AzureNetworkWatcherExtension dall'elenco delle estensioni e quindi selezionare Disinstalla.

    Note

    È possibile che venga visualizzata l'estensione macchina virtuale Network Watcher Agent con un nome diverso da AzureNetworkWatcherExtension.

Domande frequenti

Per trovare risposte alle domande più frequenti su Network Watcher Agent, consulta le FAQ su Network Watcher Agent.