Az Azure Network Watcher bővítmény frissítése a legújabb verzióra

Az Azure Network Watcher egy hálózati teljesítményfigyelési, diagnosztikai és elemzési szolgáltatás, amely az Azure-hálózatokat figyeli. A Network Watcher Agent virtuális gép (VM) bővítménye követelmény a hálózati forgalom igény szerinti rögzítéséhez és az Azure-beli virtuális gépek egyéb speciális funkcióinak használatához. Ezt a kapcsolatfigyelő, a kapcsolat hibaelhárítása és a csomagrögzítés használja.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Ha még nincs előfizetése, hozzon létre egy ingyenes fiókot.
  • Egy Azure-beli virtuális gép (VM), amely a Network Watcher bővítményt telepítette.

Legutóbbi verzió

A Network Watcher bővítmény legújabb verziója.1.4.3206.1

A legújabb verzió azonosítása

Használja az az vm extension image list parancsot a Network Watcher bővítmény legújabb verziójának azonosításához a virtuális gép operációs rendszerének.

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

Bővítmény frissítése PowerShell-szkripttel

Ha nagy méretű üzemelő példányokkal rendelkezik, egy PowerShell-szkripttel egyszerre több virtuális gépet is frissíthet. Az alábbi PowerShell-szkript frissíti az előfizetésben lévő összes Windows rendszerű virtuális gép Network Watcher-bővítményét:

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

A bővítmény manuális frissítése

A bővítmény frissítéséhez ismernie kell a bővítmény verzióját.

A bővítmény verziójának ellenőrzése

A bővítményverziót az Azure Portal, az Azure CLI vagy a PowerShell használatával ellenőrizheti.

Az Azure Portal használata

  1. Nyissa meg a virtuális gép Bővítmények panelét az Azure Portalon.
  2. Válassza ki az AzureNetworkWatcher bővítményt a részletek panel megtekintéséhez.
  3. Keresse meg a verziószámot a Verzió mezőben.  

Az Azure parancssori felületének használata

Futtassa a következő parancsot egy Azure CLI-parancssorból:

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

Keresse meg az "AzureNetworkWatcherExtension" értéket a kimenetben, és azonosítsa a verziószámot a kimenet "TypeHandlerVersion" mezőjéből. 

A bővítmény adatai többször is megjelennek a JSON-kimenetben. A bővítmény teljes verziószáma a Bővítmények blokkban érhető el.

Az alábbihoz hasonlót kell látnia: Az Azure CLI képernyőképe

A PowerShell használata

Futtassa a következő parancsokat egy PowerShell-parancssorból:

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

Keresse meg az Azure Network Watcher bővítményt a kimenetben, és azonosítsa a verziószámot a kimenet "TypeHandlerVersion" mezőjéből.  

Az alábbihoz hasonlót kell látnia: PowerShell-képernyőkép

A bővítmény frissítése

Ha a verzió a fent említett legújabb verzió alatt van, frissítse a bővítményt az alábbi lehetőségek bármelyikével.

1. lehetőség: A PowerShell használata

Futtassa az alábbi parancsot:

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

Ha ez nem működik. Távolítsa el és telepítse újra a bővítményt az alábbi lépésekkel a legújabb verzió telepítéséhez.

A bővítmény eltávolítása

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

A bővítmény ismételt telepítése

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

2. lehetőség: Az Azure CLI használata

Frissítés kényszerítése.

#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

Ha ez nem működik, távolítsa el és telepítse újra a bővítményt, és kövesse az alábbi lépéseket a legújabb verzió automatikus hozzáadásához.

Távolítsa el a bővítményt.

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

Telepítse újra a bővítményt.

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

3. lehetőség: A virtuális gépek újraindítása

Ha a Network Watcher bővítmény automatikus frissítése igaz értékre van állítva, indítsa újra a virtuális gép telepítését a legújabb bővítményre.

Támogatás

Ha a cikk bármely pontján további segítségre van szüksége, tekintse meg a Network Watcher linuxos vagy windowsos bővítményének dokumentációját. Az MSDN Azure és a Stack Overflow fórumain az Azure szakértőivel is kapcsolatba léphet. Másik lehetőségként küldjön be egy Azure-támogatás incidenst. Lépjen a Azure-támogatás webhelyre, és válassza a Támogatás kérése lehetőséget. Az Azure-támogatás használatáról a Microsoft Azure-támogatás GYIK-ben talál további információt.