Network Watcher Agent仮想マシン拡張の管理

Network Watcher エージェントの仮想マシン拡張機能は、Azure 仮想マシン (VM) を診断および監視するためのネットワーク トラフィックをキャプチャする一部の Azure Network Watcher 機能の要件です。 詳細については、「Azure Network Watcher とは」を参照してください。

この記事では、WindowsおよびLinux向けにNetwork Watcher Agentのインストール、更新、アンインストール方法を学びます。 エージェントのインストールによって、仮想マシンが中断されることも、再起動が必要になることもありません。 仮想マシンがAzureサービスによってデプロイされている場合は、サービスのドキュメントを確認し、そのサービスが仮想マシンに拡張機能のインストールを許可しているかどうかを確認してください。

Note

Network Watcher Agent拡張機能はAKSクラスターではサポートされていません。

前提条件

  • サポートされているオペレーティングシステムを実行するAzure仮想マシン(VM)。 詳細については、「 サポートされているオペレーティングシステム」をご覧ください。

  • 169.254.169.254 を経由して port 80 へ、および 168.63.129.16 を経由して port 8037 への送信 TCP 接続です。 エージェントは、これらの IP アドレスを使用して Azure プラットフォームと通信します。

  • インターネット接続:Network Watcher Agentは一部の機能が正常に動作するためにインターネット接続を必要とします。 たとえば、パケット キャプチャをアップロードするには、ストレージ アカウントへの接続が必要です。

サポートされるオペレーティング システム

Windows用のNetwork Watcher Agent拡張機能は以下のオペレーティングシステムにインストールできます:

  • Windows Server 2012、2012 R2、2016、2019、2022、2025のリリースです。
  • Windows 10 および 11 リリース。

Note

現在、Nano Server はサポートされていません。

以下のLinuxディストリビューションでNetwork Watcher Agent for Linuxをインストールできます:

Distribution バージョン
アルマリナックス 9.2
Azure Linux 2.0
CentOS 1 6.10、7
Debian 7、8
openSUSE Leap 42.3 以降
Oracle Linux 6.10 2、7、8、9+
レッドハットエンタープライズLinux(RHEL) 6.10 3、7、8、9.2
ロッキー・リナックス 9.1
SUSE Linux Enterprise Server(SLES) 12、15 (SP2、SP3、SP4)
Ubuntu 16 以降

1 CentOS Linuxは2024年6月30日にサービス終了(EOL)を迎えました。 詳細については、「CentOS のサポート終了に関するガイダンス」を参照してください。

2 Oracle Linux バージョン 6.X の拡張ライフサイクル (ELS) サポートは、2024 年 7 月 1 日に終了しました。

3 Red Hat Enterprise Linux 6.X の拡張ライフサイクル (ELS) サポートは、2024 年 6 月 30 日に終了しました。

Note

インターネット制御メッセージプロトコル(ICMP)監視は、Oracle LinuxのNetwork Watcher Agentでは、ディストリビューション特有のカーネルレベルの制限があるため現在サポートされていません。

拡張機能のスキーマ

次の JSON は、Network Watcher Agent 拡張機能のスキーマを示しています。 この拡張機能はユーザーが提供した設定を一切必要とせず、デフォルトの設定に依存しています。

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

インストールされている拡張機能を一覧表示する

Azureポータルの仮想マシンページから、以下の手順に従ってインストール済み拡張機能を確認できます:

  1. [設定][拡張機能とアプリケーション] を選択します。

  2. [拡張機能] タブには、仮想マシンにインストールされているすべての拡張機能が表示されます。 リストが長い場合は、検索ボックスを使って絞り込みましょう。

Network Watcher Agent VM 拡張機能のインストール

Azure portal の仮想マシンに関するページから、次の手順に従って Network Watcher Agent VM 拡張機能をインストールできます:

  1. [設定][拡張機能とアプリケーション] を選択します。

  2. +Addを選択し、「Network Watcher Agent」を検索してインストールしてください。 拡張機能が既にインストールされている場合は、拡張機能の一覧に表示されます。

    Azure portal の VM の拡張機能ページを示すスクリーンショット。

  3. 拡張機能をインストールする」の検索ボックスで「Network Watcher Agent」と入力し、リストからあなたのOSに対応する拡張機能を選択し、「次へ」を選択します。

  4. [確認および作成] を選択し、次に [作成] を選択します。

Network Watcher Agent VM extensionの更新

拡張機能のバージョンを確認してください

拡張機能のバージョンは、Azure ポータル、Azure CLI、または PowerShell を使用して確認できます。

  1. AzureポータルでVMの拡張+アプリケーションに行ってください。

  2. 拡張機能リストの「 バージョン 」欄で AzureNetworkWatcherExtensionをチェックしてください。 新しいバージョンが利用可能な場合は、 最新バージョン 欄に 「更新可能」と表示されます。

    Network Watcher拡張機能を示すスクリーンショットです。

Note

ネットワークウォッチャー拡張機能の最新バージョンは1.4.4011.1です。

自動アップグレードを有効にしてください

自動アップグレードにより、Azureプラットフォームは手動介入なしに拡張機能を最新バージョンに更新できます。 自動アップグレードが有効かどうか、無効なら有効にする手順に従って以下の手順を踏みましょう。

  1. AzureポータルのVMの設定「Extensions + applications」を選択してください。

  2. 拡張機能一覧から AzureNetworkWatcherExtension を選択し、「 自動アップグレードステータス 」欄をチェックしてください。

  3. もし 無効と表示されたら、ツールバーから 自動アップグレードを有効にする を選択します。

    Network Watcher拡張機能を示すスクリーンショットです。

  4. [はい] を選択して確定します。

    Network Watcher拡張機能で自動アップグレードを有効にする確認ダイアログのスクリーンショットです。

Note

自動アップグレードを有効にすると、Azureは仮想マシンの再起動を必要とせずに拡張機能を自動的に更新します。 このプロセスは新バージョンリリース後最大30日かかることがあります。

手動で更新する

  1. AzureポータルのVMの設定「Extensions + applications」を選択してください。

  2. 拡張機能のリストから AzureNetworkWatcherExtension を選択し、ツールバーから 「Update 」を選択します。

    Network Watcher拡張機能を示すスクリーンショットです。

  3. [はい] を選択して確定します。

    Network Watcher拡張機能を最新バージョンに更新するための確認ダイアログを示すスクリーンショットです。

  4. アップデートが完了すると、 バージョン 欄と 最新バージョン 欄は同じバージョン番号を表示します。

    最新バージョンに更新された後のNetwork Watcher拡張機能のスクリーンショットです。

アップデートしても最新バージョンが適用されない場合は、拡張機能を削除して再度インストールしてください:

  1. 拡張機能一覧から AzureNetworkWatcherExtension を選択し、[アンインストール] を選択します。
  2. +Addを選択し、「Network Watcher Agent」を検索して再度インストールしてください。 プラットフォームは自動的に最新のバージョンをインストールします。 詳細については、「Install Network Watcher Agent VM extension」をご覧ください。

PowerShellスクリプトで大規模に更新

大規模な展開がある場合は、PowerShellスクリプトを使ってサブスクリプション内の複数のVMを同時に更新しましょう。 以下のスクリプトは、サブスクリプション内のすべての古いVMでNetwork Watcher拡張機能を更新します:

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

Network Watcher Agent VM 拡張機能のアンインストール

Azure portal の仮想マシンに関するページから、次の手順に従って Network Watcher Agent VM 拡張機能をアンインストールできます:

  1. [設定][拡張機能とアプリケーション] を選択します。

  2. 拡張機能一覧から AzureNetworkWatcherExtension を選択し、[アンインストール] を選択します。

    Note

    AzureNetworkWatcherExtension とは異なる名前の Network Watcher Agent VM 拡張機能が表示される場合があります。

よく寄せられる質問 (FAQ)

Network Watcher Agentに関する最もよくある質問への回答は、Network Watcher Agent FAQをご覧ください。