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は一部の機能が正常に動作するためにインターネット接続を必要とします。 たとえば、パケット キャプチャをアップロードするには、ストレージ アカウントへの接続が必要です。
サポートされているオペレーティングシステムを実行するAzure仮想マシン(VM)。 詳細については、「 サポートされているオペレーティングシステム」をご覧ください。
169.254.169.254 を経由して port 80 へ、および 168.63.129.16 を経由して port 8037 への送信 TCP 接続です。 エージェントは、これらの IP アドレスを使用して Azure プラットフォームと通信します。
インターネット接続:Network Watcher Agentは一部の機能が正常に動作するためにインターネット接続を必要とします。 たとえば、パケット キャプチャをアップロードするには、ストレージ アカウントへの接続が必要です。
Azure Cloud Shell または Azure PowerShell。
この記事の手順では、Azure Cloud Shell で Azure PowerShell コマンドレットを対話型で実行します。 Cloud Shell でコマンドを実行するには、コード ブロックの右上隅にある [Cloud Shell を開く ] を選択します。
[コピー] を選択してコードをコピーし、続いて Cloud Shell に貼り付けて実行します。 Azure ポータル内からCloud Shellを実行することもできます。
Azure PowerShell をローカルにインストールしてコマンドレットを実行することもできます。 PowerShell をローカルで実行している場合は、Connect-AzAccount コマンドレットを使用して Azure にサインインします。
サポートされているオペレーティングシステムを実行するAzure仮想マシン(VM)。 詳細については、「 サポートされているオペレーティングシステム」をご覧ください。
169.254.169.254 を経由して port 80 へ、および 168.63.129.16 を経由して port 8037 への送信 TCP 接続です。 エージェントは、これらの IP アドレスを使用して Azure プラットフォームと通信します。
インターネット接続:Network Watcher Agentは一部の機能が正常に動作するためにインターネット接続を必要とします。 たとえば、パケット キャプチャをアップロードするには、ストレージ アカウントへの接続が必要です。
Azure Cloud Shell または Azure CLI。
この記事の手順では、Azure Cloud Shell で Azure CLI コマンドを対話型で実行します。 Cloud Shell でコマンドを実行するには、コード ブロックの右上隅にある [Cloud Shell を開く ] を選択します。
Copy を選択してコードをコピーし、Cloud Shellに貼り付けて実行します。 Azure ポータル内からCloud Shellを実行することもできます。
また、Azure CLI をローカルにインストールしてコマンドを実行することもできます。 Azure CLI をローカルで実行する場合は、 az login コマンドを使用して Azure にサインインします。
サポートされているオペレーティングシステムを実行するAzure仮想マシン(VM)。 詳細については、「 サポートされているオペレーティングシステム」をご覧ください。
169.254.169.254 を経由して port 80 へ、および 168.63.129.16 を経由して port 8037 への送信 TCP 接続です。 エージェントは、これらの IP アドレスを使用して Azure プラットフォームと通信します。
インターネット接続:Network Watcher Agentは一部の機能が正常に動作するためにインターネット接続を必要とします。 たとえば、パケット キャプチャをアップロードするには、ストレージ アカウントへの接続が必要です。
テンプレートをデプロイするためにローカルにインストールされた Azure PowerShell または Azure CLI です。
サポートされるオペレーティング システム
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ポータルの仮想マシンページから、以下の手順に従ってインストール済み拡張機能を確認できます:
[設定] で [拡張機能とアプリケーション] を選択します。
[拡張機能] タブには、仮想マシンにインストールされているすべての拡張機能が表示されます。 リストが長い場合は、検索ボックスを使って絞り込みましょう。
Get-AzVMExtensionコマンドレットを使って仮想マシン上のすべてのインストール済み拡張機能を一覧にしてください。
# List the installed extensions on the virtual machine.
Get-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' | format-table Name, Publisher, ExtensionType, AutoUpgradeMinorVersion, EnableAutomaticUpgrade
コマンドレットの出力には、インストールされている拡張機能が一覧表示されます:
Name Publisher ExtensionType AutoUpgradeMinorVersion EnableAutomaticUpgrade
---- --------- ------------- ----------------------- ----------------------
AzureNetworkWatcherExtension Microsoft.Azure.NetworkWatcher NetworkWatcherAgentWindows True True
Name Publisher ExtensionType AutoUpgradeMinorVersion EnableAutomaticUpgrade
---- --------- ------------- ----------------------- ----------------------
AzureNetworkWatcherExtension Microsoft.Azure.NetworkWatcher NetworkWatcherAgentLinux True True
az vm extension listコマンドを使って仮想マシン上のすべてのインストール済み拡張機能を一覧にしてください。
# List the installed extensions on the virtual machine.
az vm extension list --resource-group 'myResourceGroup' --vm-name 'myVM' --out table
このコマンドの出力には、インストールされている拡張機能が一覧表示されます:
Name ProvisioningState Publisher Version AutoUpgradeMinorVersion
---------------------------- ------------------- ------------------------------ --------- -------------------------
AzureNetworkWatcherExtension Succeeded Microsoft.Azure.NetworkWatcher 1.4 True
Network Watcher Agent VM 拡張機能のインストール
Azure portal の仮想マシンに関するページから、次の手順に従って Network Watcher Agent VM 拡張機能をインストールできます:
[設定] で [拡張機能とアプリケーション] を選択します。
+Addを選択し、「Network Watcher Agent」を検索してインストールしてください。 拡張機能が既にインストールされている場合は、拡張機能の一覧に表示されます。
「拡張機能をインストールする」の検索ボックスで「Network Watcher Agent」と入力し、リストからあなたのOSに対応する拡張機能を選択し、「次へ」を選択します。
[確認および作成] を選択し、次に [作成] を選択します。
Set-AzVMExtension コマンドレットを使って仮想マシンに Network Watcher Agent VM 拡張をインストールしてください:
# Install Network Watcher Agent for Windows on the virtual machine.
Set-AzVMExtension -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -ExtensionType 'NetworkWatcherAgentWindows' -EnableAutomaticUpgrade 1 -TypeHandlerVersion '1.4' -ResourceGroupName 'myResourceGroup' -VMName 'myVM'
# Install Network Watcher Agent for Linux on the virtual machine.
Set-AzVMExtension -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -ExtensionType 'NetworkWatcherAgentLinux' -EnableAutomaticUpgrade 1 -TypeHandlerVersion '1.4' -ResourceGroupName 'myResourceGroup' -VMName 'myVM'
インストールが完了すると、以下の出力が表示されます:
RequestId IsSuccessStatusCode StatusCode ReasonPhrase
--------- ------------------- ---------- ------------
True OK
az vm extension setコマンドを使って、仮想マシンにNetwork Watcher Agent VM拡張機能をインストールしてください:
# Install Network Watcher Agent for Windows on the virtual machine.
az vm extension set --name 'NetworkWatcherAgentWindows' --extension-instance-name 'AzureNetworkWatcherExtension' --publisher 'Microsoft.Azure.NetworkWatcher' --enable-auto-upgrade 'true' --version '1.4' --resource-group 'myResourceGroup' --vm-name 'myVM'
# Install Network Watcher Agent for Linux on the virtual machine.
az vm extension set --name 'NetworkWatcherAgentLinux' --extension-instance-name 'AzureNetworkWatcherExtension' --publisher 'Microsoft.Azure.NetworkWatcher' --enable-auto-upgrade 'true' --version '1.4' --resource-group 'myResourceGroup' --vm-name 'myVM'
以下のAzure Resource Managerテンプレート(ARMテンプレート)を使って、仮想マシンにNetwork Watcher Agent VM拡張機能をインストールしてください:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentWindows",
"typeHandlerVersion": "1.4"
}
}
]
}
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentLinux",
"typeHandlerVersion": "1.4"
}
}
]
}
Azure PowerShell または Azure CLI を使用して、Resource Manager テンプレートをデプロイできます:
# Deploy the JSON template file using Azure PowerShell.
New-AzResourceGroupDeployment -ResourceGroupName 'myResourceGroup' -TemplateFile 'agent.json'
# Deploy the JSON template file using the Azure CLI.
az deployment group create --resource-group 'myResourceGroup' --template-file 'agent.json'
Network Watcher Agent VM extensionの更新
拡張機能のバージョンを確認してください
拡張機能のバージョンは、Azure ポータル、Azure CLI、または PowerShell を使用して確認できます。
AzureポータルでVMの拡張+アプリケーションに行ってください。
拡張機能リストの「 バージョン 」欄で AzureNetworkWatcherExtensionをチェックしてください。 新しいバージョンが利用可能な場合は、 最新バージョン 欄に 「更新可能」と表示されます。
Get-AzVMコマンドレットを使って拡張機能のインストール済みバージョンを確認してください:
(Get-AzVM -ResourceGroupName 'myResourceGroup' -Name 'myVM' -Status).Extensions | Where-Object { $_.Name -eq 'AzureNetworkWatcherExtension' } | Select-Object Name, TypeHandlerVersion
Get-AzVMExtensionImage コマンドレットを使って、あなたの仮想マシンのオペレーティングシステムとリージョンで利用可能な拡張機能の最新バージョンを探してください:
Get-AzVMExtensionImage -Location '<region>' -PublisherName 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentWindows' | Sort-Object -Property { [Version]$_.Version } -Descending | Select-Object -First 1
Get-AzVMExtensionImage -Location '<region>' -PublisherName 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentLinux' | Sort-Object -Property { [Version]$_.Version } -Descending | Select-Object -First 1
az vm get-instance-view コマンドを使って拡張機能のインストール済みバージョンを確認してください:
az vm get-instance-view --resource-group 'myResourceGroup' --name 'myVM' --query "extensions[?name=='AzureNetworkWatcherExtension'].typeHandlerVersion" --output tsv
az vm extension image list コマンドを使って、あなたの仮想マシンのオペレーティングシステムで利用可能な最新の拡張を見つけてください:
az vm extension image list --name 'NetworkWatcherAgentWindows' --publisher 'Microsoft.Azure.NetworkWatcher' --latest
az vm extension image list --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher' --latest
Note
ネットワークウォッチャー拡張機能の最新バージョンは1.4.4011.1です。
自動アップグレードを有効にしてください
自動アップグレードにより、Azureプラットフォームは手動介入なしに拡張機能を最新バージョンに更新できます。 自動アップグレードが有効かどうか、無効なら有効にする手順に従って以下の手順を踏みましょう。
AzureポータルのVMの設定で「Extensions + applications」を選択してください。
拡張機能一覧から AzureNetworkWatcherExtension を選択し、「 自動アップグレードステータス 」欄をチェックしてください。
もし 無効と表示されたら、ツールバーから 自動アップグレードを有効にする を選択します。
[はい] を選択して確定します。
Get-AzVMExtensionコマンドレットを使って自動アップグレードが有効かどうか確認してください:
Get-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' | Select-Object Name, EnableAutomaticUpgrade
EnableAutomaticUpgradeがFalseされている場合は、Set-AzVMExtension コマンドレットを使って有効にしてください:
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -ExtensionType 'NetworkWatcherAgentWindows' -EnableAutomaticUpgrade $true
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -ExtensionType 'NetworkWatcherAgentLinux' -EnableAutomaticUpgrade $true
az vm extension show コマンドを使って、自動アップグレードが有効かどうか確認してください:
az vm extension show --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'AzureNetworkWatcherExtension' --query 'enableAutomaticUpgrade'
コマンドが false返された場合は、 az vm extension set コマンドを使って有効化してください。
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentWindows' --publisher 'Microsoft.Azure.NetworkWatcher' --enable-auto-upgrade 'true'
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher' --enable-auto-upgrade 'true'
Network Watcher Agent VM拡張機能の自動アップグレードを有効にするには、以下のAzure Resource Managerテンプレート(ARMテンプレート)をご利用ください:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentWindows",
"typeHandlerVersion": "1.4"
}
}
]
}
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentLinux",
"typeHandlerVersion": "1.4"
}
}
]
}
Azure PowerShell または Azure CLI を使用して、Resource Manager テンプレートをデプロイできます:
# Deploy the JSON template file using Azure PowerShell.
New-AzResourceGroupDeployment -ResourceGroupName 'myResourceGroup' -TemplateFile 'agent.json'
# Deploy the JSON template file using the Azure CLI.
az deployment group create --resource-group 'myResourceGroup' --template-file 'agent.json'
Note
自動アップグレードを有効にすると、Azureは仮想マシンの再起動を必要とせずに拡張機能を自動的に更新します。 このプロセスは新バージョンリリース後最大30日かかることがあります。
手動で更新する
AzureポータルのVMの設定で「Extensions + applications」を選択してください。
拡張機能のリストから AzureNetworkWatcherExtension を選択し、ツールバーから 「Update 」を選択します。
[はい] を選択して確定します。
アップデートが完了すると、 バージョン 欄と 最新バージョン 欄は同じバージョン番号を表示します。
アップデートしても最新バージョンが適用されない場合は、拡張機能を削除して再度インストールしてください:
- 拡張機能一覧から AzureNetworkWatcherExtension を選択し、[アンインストール] を選択します。
-
+Addを選択し、「Network Watcher Agent」を検索して再度インストールしてください。 プラットフォームは自動的に最新のバージョンをインストールします。 詳細については、「Install Network Watcher Agent VM extension」をご覧ください。
Set-AzVMExtensionコマンドレットと-ForceRerunパラメータを使って、アンインストールせずに拡張機能を再適用してください。
-ForceRerun値はコマンドを実行するたびに現在の値と異なるものでなければならないため、現在の日付や時刻のように変化する値を使用してください:
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentWindows' -ForceRerun (Get-Date -Format o)
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentLinux' -ForceRerun (Get-Date -Format o)
その条件で拡張機能が更新されない場合は、拡張機能を削除して再度インストールし、最新バージョンを取得してください。
Remove-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension'
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentWindows'
Set-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' -Publisher 'Microsoft.Azure.NetworkWatcher' -Type 'NetworkWatcherAgentLinux'
az vm extension setコマンドと --force-update パラメータを組み合わせて、アンインストールせずに拡張を再適用できます:
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentWindows' --publisher 'Microsoft.Azure.NetworkWatcher' --force-update
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher' --force-update
その条件で拡張機能が更新されない場合は、拡張機能を削除して再度インストールし、最新バージョンを取得してください。
az vm extension delete --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'AzureNetworkWatcherExtension'
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentWindows' --publisher 'Microsoft.Azure.NetworkWatcher'
az vm extension set --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher'
拡張を再適用するには、以下のAzure Resource Managerテンプレート(ARMテンプレート)を使用してください。
typeHandlerVersionパラメータを「拡張機能のバージョンを確認して確認した最新バージョン」に更新し、テンプレートを再デプロイしてください:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
},
"typeHandlerVersion": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentWindows",
"typeHandlerVersion": "[parameters('typeHandlerVersion')]"
}
}
]
}
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
},
"typeHandlerVersion": {
"type": "string"
}
},
"resources": [
{
"name": "[concat(parameters('vmName'), '/AzureNetworkWatcherExtension')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2024-07-01",
"location": "[resourceGroup().location]",
"properties": {
"autoUpgradeMinorVersion": true,
"publisher": "Microsoft.Azure.NetworkWatcher",
"type": "NetworkWatcherAgentLinux",
"typeHandlerVersion": "[parameters('typeHandlerVersion')]"
}
}
]
}
Azure PowerShell または Azure CLI を使用して、Resource Manager テンプレートをデプロイできます:
# Deploy the JSON template file using Azure PowerShell.
New-AzResourceGroupDeployment -ResourceGroupName 'myResourceGroup' -TemplateFile 'agent.json' -typeHandlerVersion '<version>'
# Deploy the JSON template file using the Azure CLI.
az deployment group create --resource-group 'myResourceGroup' --template-file 'agent.json' --parameters typeHandlerVersion='<version>'
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 拡張機能をアンインストールできます:
[設定] で [拡張機能とアプリケーション] を選択します。
拡張機能一覧から AzureNetworkWatcherExtension を選択し、[アンインストール] を選択します。
Note
AzureNetworkWatcherExtension とは異なる名前の Network Watcher Agent VM 拡張機能が表示される場合があります。
Remove-AzVMExtensionコマンドレットを使って、仮想マシンからNetwork Watcher Agent VM拡張を削除してください:
# Uninstall Network Watcher Agent VM extension.
Remove-AzVMExtension -Name 'AzureNetworkWatcherExtension' -ResourceGroupName 'myResourceGroup' -VMName 'myVM'
az vm extension deleteコマンドを使って、仮想マシンからNetwork Watcher Agent VM拡張機能を削除してください:
# Uninstall Network Watcher Agent VM extension.
az vm extension delete --name 'AzureNetworkWatcherExtension' --resource-group 'myResourceGroup' --vm-name 'myVM'
よく寄せられる質問 (FAQ)
Network Watcher Agentに関する最もよくある質問への回答は、Network Watcher Agent FAQをご覧ください。
関連するコンテンツ