Zarządzanie rozszerzeniem maszyny wirtualnej Network Watcher Agent

Rozszerzenie maszyny wirtualnej agenta usługi Network Watcher jest wymagane w przypadku niektórych funkcji usługi Azure Network Watcher, które przechwytują ruch sieciowy w celu diagnozowania i monitorowania maszyn wirtualnych platformy Azure. Aby uzyskać więcej informacji, zobacz Co to jest usługa Azure Network Watcher?

W tym artykule dowiesz się, jak instalować, aktualizować i odinstalować Network Watcher Agent dla Windows i Linux. Instalacja agenta nie zakłóca ani nie wymaga ponownego uruchomienia maszyny wirtualnej. Jeśli maszyna wirtualna jest wdrażana przez usługę Azure, sprawdź dokumentację tej usługi, aby ustalić, czy usługa pozwala na instalację rozszerzeń w maszynie wirtualnej.

Note

Rozszerzenie Network Watcher Agent nie jest obsługiwane na klastrzach AKS.

Wymagania wstępne

  • Wirtualna maszyna Azure (VM) działająca na obsługiwanym systemie operacyjnym. Więcej informacji można znaleźć w sekcji Obsługiwane systemy operacyjne.

  • Wychodząca łączność TCP z 169.254.169.254 za pośrednictwem port 80 i 168.63.129.16 za pośrednictwem port 8037. Agent używa tych adresów IP do komunikowania się z platformą Azure.

  • Łączność z Internetem: Network Watcher Agent wymaga połączenia z internetem, aby niektóre funkcje działały poprawnie. Na przykład wymaga łączności z kontem magazynu w celu przesyłania przechwyconych pakietów.

Obsługiwane systemy operacyjne

Możesz zainstalować rozszerzenie Network Watcher Agent dla Windows na następujących systemach operacyjnych:

  • Systemy Windows Server w wersjach 2012, 2012 R2, 2016, 2019, 2022 i 2025.
  • Wersje systemu Windows 10 i 11.

Note

Obecnie serwer Nano Server nie jest obsługiwany.

Możesz zainstalować rozszerzenie Network Watcher Agent dla Linuksa na następujących dystrybucjach Linuksa:

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

1 CentOS Linux osiągnął koniec swojego życia (EOL) 30 czerwca 2024 roku. Aby uzyskać więcej informacji, zobacz wskazówki dotyczące zakończenia życia systemu CentOS.

2Rozszerzona obsługa cyklu życia (ELS) dla systemu Oracle Linux w wersji 6.X zakończyła się 1 lipca 2024 r.

3Wsparcie rozszerzonego cyklu życia (ELS) dla systemu Red Hat Enterprise Linux 6.X zakończyło się 30 czerwca 2024 r.

Note

Monitorowanie protokołu Internet Control Message Protocol (ICMP) nie jest obecnie obsługiwane w Network Watcher Agent na Oracle Linux ze względu na znane ograniczenia na poziomie jądra specyficzne dla dystrybucji.

Schemat rozszerzenia

Poniższy kod JSON przedstawia schemat rozszerzenia agenta usługi Network Watcher. Rozszerzenie nie wymaga ani nie obsługuje żadnych ustawień dostarczanych przez użytkownika i opiera się na swojej domyślnej konfiguracji.

{
    "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"
    }
}

Wyświetlanie listy zainstalowanych rozszerzeń

Na stronie maszyny wirtualnej w portalu Azure możesz zobaczyć zainstalowane rozszerzenia, wykonując następujące kroki:

  1. W obszarze Ustawienia wybierz Rozszerzenia i aplikacje.

  2. Na karcie Rozszerzenia można wyświetlić wszystkie zainstalowane rozszerzenia na maszynie wirtualnej. Jeśli lista jest długa, użyj pola wyszukiwania, aby ją przefiltrować.

Instalacja rozszerzenia agenta usługi Network Watcher dla maszyny wirtualnej (VM)

Na stronie maszyny wirtualnej w witrynie Azure Portal możesz zainstalować rozszerzenie maszyny wirtualnej agenta usługi Network Watcher, wykonując następujące kroki:

  1. W obszarze Ustawienia wybierz Rozszerzenia i aplikacje.

  2. Wybierz + Dodaj, wyszukaj Network Watcher Agent i zainstaluj go. Jeśli rozszerzenie jest już zainstalowane, można go zobaczyć na liście rozszerzeń.

    Zrzut ekranu przedstawiający stronę rozszerzeń maszyny wirtualnej w witrynie Azure Portal.

  3. W polu wyszukiwania Install an Extension wpisz Network Watcher Agent, wybierz odpowiadające rozszerzenie dla swojego systemu operacyjnego z listy, a następnie wybierz Dalej.

  4. Wybierz pozycję Przeglądanie i tworzenie, a następnie wybierz pozycję Utwórz.

Aktualizacja rozszerzenia maszyny maszynowej Network Watcher Agent

Sprawdzanie wersji rozszerzenia

Możesz sprawdzić wersję rozszerzenia przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu PowerShell.

  1. Przejdź do Rozszerzenia + aplikacje swojej maszyny wirtualnej w portalu Azure.

  2. Na liście rozszerzeń sprawdź kolumnę Version dla AzureNetworkWatcherExtension. Jeśli dostępna jest nowsza wersja, kolumna Ostatnia wersja pokazuje (Dostępna aktualizacja).

    Zrzut ekranu pokazujący rozszerzenie Network Watcher.

Note

Najnowszą wersją rozszerzenia usługi Network Watcher jest 1.4.4011.1.

Włącz automatyczną aktualizację

Automatyczna aktualizacja pozwala platformie Azure zaktualizować rozszerzenie do najnowszej wersji bez ręcznej ingerencji. Użyj poniższych kroków, aby sprawdzić, czy automatyczna aktualizacja jest włączona, a jeśli nie, włącz ją.

  1. W Ustawieniach maszyny wirtualnej w portalu Azure wybierz Rozszerzenia + aplikacje.

  2. Wybierz rozszerzenie AzureNetworkWatcherExtension z listy rozszerzeń i sprawdź kolumnę Automatyczny status aktualizacji .

  3. Jeśli pokazuje Wyłączone, wybierz Włącz automatyczną aktualizację na pasku narzędzi.

    Zrzut ekranu pokazujący rozszerzenie Network Watcher.

  4. Wybierz Tak, aby potwierdzić.

    Zrzut ekranu pokazuje okno potwierdzenia włączenia automatycznej aktualizacji w rozszerzeniu Network Watcher.

Note

Po włączeniu automatycznej aktualizacji Azure aktualizuje rozszerzenie automatycznie, bez konieczności restartu maszyny wirtualnej. Proces ten może trwać do 30 dni po wydaniu nowej wersji.

Aktualizuj ręcznie

  1. W Ustawieniach maszyny wirtualnej w portalu Azure wybierz Rozszerzenia + aplikacje.

  2. Wybierz AzureNetworkWatcherExtension z listy rozszerzeń, a następnie wybierz Aktualizuj z paska narzędzi.

    Zrzut ekranu pokazujący rozszerzenie Network Watcher.

  3. Wybierz Tak, aby potwierdzić.

    Zrzut ekranu pokazuje okno potwierdzenia aktualizacji rozszerzenia Network Watcher do najnowszej wersji.

  4. Po zakończeniu aktualizacji kolumny Wersja i Najnowsze Wersje pokazują ten sam numer wersji.

    Zrzut ekranu pokazujący rozszerzenie Network Watcher po aktualizacji do najnowszej wersji.

Jeśli aktualizacja nie zastosuje najnowszej wersji, usuń rozszerzenie i zainstaluj je ponownie:

  1. Wybierz pozycję AzureNetworkWatcherExtension z listy rozszerzeń, a następnie wybierz pozycję Odinstaluj.
  2. Wybierz + Dodaj, wyszukaj Network Watcher Agent i zainstaluj go ponownie. Platforma automatycznie instaluje najnowszą dostępną wersję. Więcej informacji można znaleźć w artykule Install Network Watcher Agent VM extension.

Aktualizacja na dużą skalę za pomocą skryptu PowerShell

Jeśli masz duże wdrożenia, użyj skryptu PowerShell, aby zaktualizować wiele maszyn wirtualnych w subskrypcji jednocześnie. Poniższy skrypt aktualizuje rozszerzenie Network Watcher na wszystkich nieaktualnych maszynach wirtualnych w subskrypcji:

<#
    .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"
}

Odinstaluj rozszerzenie agenta Network Watcher dla maszyny wirtualnej

Na stronie maszyny wirtualnej w witrynie Azure Portal możesz odinstalować rozszerzenie maszyny wirtualnej agenta usługi Network Watcher, wykonując następujące kroki:

  1. W obszarze Ustawienia wybierz Rozszerzenia i aplikacje.

  2. Wybierz pozycję AzureNetworkWatcherExtension z listy rozszerzeń, a następnie wybierz pozycję Odinstaluj.

    Note

    Być może zobaczysz rozszerzenie maszyny wirtualnej agenta usługi Network Watcher o nazwie innej niż AzureNetworkWatcherExtension.

Najczęściej zadawane pytania (FAQ)

Aby uzyskać odpowiedzi na najczęściej zadawane pytania dotyczące Network Watcher Agent, zobacz FAQ Network Watcher Agent.