Dela via


Uppdatera Azure Network Watcher-tillägget till den senaste versionen

Azure Network Watcher är en tjänst för övervakning av nätverksprestanda, diagnostik och analys som övervakar Azure-nätverk. Tillägget virtuell dator (VM) för Network Watcher Agent är ett krav för att samla in nätverkstrafik på begäran och använda andra avancerade funktioner på virtuella Azure-datorer. Den används av anslutningsövervakaren, anslutningsfelsökningen och paketinsamlingen.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Om du inte har en skapar du ett kostnadsfritt konto.
  • En virtuell Azure-dator (VM) som har Network Watcher-tillägget installerat.

Senaste versionen

Den senaste versionen av Network Watcher-tillägget är 1.4.3422.1.

Identifiera den senaste versionen

Använd kommandot az vm extension image list för att identifiera den senaste versionen av Network Watcher-tillägget för den virtuella datorns operativsystem.

# Identify latest version of Network Watcher extension for Linux.
az vm extension image list --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher' --latest --location 'eastus'

Uppdatera tillägget med hjälp av ett PowerShell-skript

Om du har stora distributioner använder du ett PowerShell-skript för att uppdatera flera virtuella datorer samtidigt. Följande PowerShell-skript uppdaterar Network Watcher-tillägget för alla virtuella Windows-datorer i en prenumeration:

<# 
    .SYNOPSIS 
    This script will scan all VMs in the provided subscription and upgrade any out of date AzureNetworkWatcherExtensions  
    .DESCRIPTION 
    This script should be no-op if AzureNetworkWatcherExtensions are up to date 
    Requires Azure PowerShell 4.2 or higher to be installed (e.g. Install-Module AzureRM). 
    .EXAMPLE 
    .\UpdateVMAgentsInSub.ps1 -SubID F4BC4873-5DAB-491E-B713-1358EF4992F2 -NoUpdate 
#>
 
[CmdletBinding()] 
param( 
    [Parameter(Mandatory=$true)] 
    [string] $SubID, 
    [Parameter(Mandatory=$false)] 
    [Switch] $NoUpdate = $false, 
    [Parameter(Mandatory=$false)] 
    [string] $MinVersion = "1.4.2573.1" 
)  
function NeedsUpdate($version) 
{ 
    if ([Version]$version -lt [Version]$MinVersion)
	{ 
        $lessThan = $true 
    }else{ 
        $lessThan = $false 
    } 
    return $lessThan 
}   
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*"
 
    foreach ($extension in $vm.Extensions) 
    { 
        if ($extension.Name -eq "AzureNetworkWatcherExtension") 
        { 
            if (NeedsUpdate($extension.TypeHandlerVersion)) 
            { 
                $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 " -NoNewline 
                    Remove-AzVMExtension -ResourceGroupName $vm.ResourceGroupName -VMName $vm.Name -Name "AzureNetworkWatcherExtension" -Force 
                    Write-Host "... " -NoNewline 
                    $type = if ($isitWindows) { "NetworkWatcherAgentWindows" } else { "NetworkWatcherAgentLinux" } 
                    Set-AzVMExtension -ResourceGroupName $vm.ResourceGroupName -Location $vmName.Location -VMName $vm.Name -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type $type -typeHandlerVersion $MinVersion
                    Write-Host "Done" 
                } 
                else 
                { 
                    Write-Host "Found $(if ($isitWindows) {"Windows"} else {"Linux"}) VM that needs to be updated: 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" 
}

Uppdatera tillägget manuellt

Om du vill uppdatera tillägget måste du känna till din tilläggsversion.

Kontrollera tilläggsversionen

Du kan kontrollera tilläggsversionen med hjälp av Azure Portal, Azure CLI eller PowerShell.

Använda Azure Portal

  1. Gå till fönstret Tillägg för den virtuella datorn i Azure Portal.
  2. Välj AzureNetworkWatcher-tillägget för att se informationsfönstret.
  3. Leta upp versionsnumret i fältet Version .  

Använda Azure CLI

Kör följande kommando från en Azure CLI-prompt:

az vm get-instance-view --resource-group  "SampleRG" --name "Sample-VM"

Leta upp "AzureNetworkWatcherExtension" i utdata och identifiera versionsnumret från fältet "TypeHandlerVersion" i utdata. 

Information om tillägget visas flera gånger i JSON-utdata. Det fullständiga versionsnumret för tillägget är tillgängligt under blocket Tillägg.

Du bör se något som liknar följande: Skärmbild av Azure CLI

Använda PowerShell

Kör följande kommandon från en PowerShell-prompt:

Get-AzVM -ResourceGroupName "SampleRG" -Name "Sample-VM" -Status

Leta upp Azure Network Watcher-tillägget i utdata och identifiera versionsnumret från fältet "TypeHandlerVersion" i utdata.  

Du bör se något som liknar följande: Skärmbild av PowerShell

Uppdatera tillägget

Om din version är lägre än den senaste versionen som nämns ovan uppdaterar du tillägget med något av följande alternativ.

Alternativ 1: Använd PowerShell

Kör följande kommandon:

#Linux command
Set-AzVMExtension -ResourceGroupName "myResourceGroup1" -Location "WestUS" -VMName "myVM1" -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type "NetworkWatcherAgentLinux"

#Windows command
Set-AzVMExtension -ResourceGroupName "myResourceGroup1" -Location "WestUS" -VMName "myVM1" -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type "NetworkWatcherAgentWindows" -ForceRerun "True"

Om det inte fungerar. Ta bort och installera tillägget igen med hjälp av stegen nedan för att installera den senaste versionen.

Ta bort tillägget

#Same command for Linux and Windows
Remove-AzVMExtension -ResourceGroupName "SampleRG" -VMName "Sample-VM" -Name "AzureNetworkWatcherExtension"

Installera tillägget igen

#Linux command
Set-AzVMExtension -ResourceGroupName "SampleRG" -Location "centralus" -VMName "Sample-VM" -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type "NetworkWatcherAgentLinux" -typeHandlerVersion "1.4"

#Windows command
Set-AzVMExtension -ResourceGroupName "SampleRG" -Location "centralus" -VMName "Sample-VM" -Name "AzureNetworkWatcherExtension" -Publisher "Microsoft.Azure.NetworkWatcher" -Type "NetworkWatcherAgentWindows" -typeHandlerVersion "1.4"

Alternativ 2: Använd Azure CLI

Framtvinga en uppgradering.

#Linux command
az vm extension set --resource-group "myResourceGroup1" --vm-name "myVM1" --name "NetworkWatcherAgentLinux" --publisher "Microsoft.Azure.NetworkWatcher" --force-update

#Windows command
az vm extension set --resource-group "myResourceGroup1" --vm-name "myVM1" --name "NetworkWatcherAgentWindows" --publisher "Microsoft.Azure.NetworkWatcher" --force-update

Om det inte fungerar tar du bort och installerar tillägget igen och följer dessa steg för att automatiskt lägga till den senaste versionen.

Ta bort tillägget.

#Same for Linux and Windows
az vm extension delete --resource-group "myResourceGroup1" --vm-name "myVM1" -n "AzureNetworkWatcherExtension"

Installera tillägget igen.

#Linux command
az vm extension set --resource-group "DALANDEMO" --vm-name "Linux-01" --name "NetworkWatcherAgentLinux" --publisher "Microsoft.Azure.NetworkWatcher"

#Windows command
az vm extension set --resource-group "DALANDEMO" --vm-name "Linux-01" --name "NetworkWatcherAgentWindows" --publisher "Microsoft.Azure.NetworkWatcher"

Alternativ 3: Starta om dina virtuella datorer

Om du har konfigurerat automatisk uppgradering till true för Network Watcher-tillägget startar du om installationen av den virtuella datorn till det senaste tillägget.

Support

Om du behöver mer hjälp när som helst i den här artikeln kan du läsa dokumentationen om Network Watcher-tillägget för Linux eller Windows. Du kan också kontakta Azure-experterna på MSDN Azure- och Stack Overflow-forumen. Alternativt kan du skapa en Azure Support incident. Gå till webbplatsen Azure Support och välj Hämta support. Information om hur du använder Azure Support finns i Vanliga frågor och svar om Microsoft Azure Support.