Die Network Watcher Agent-Erweiterung für VMs ist eine Voraussetzung für einige Funktionen von Azure Network Watcher, die den Netzwerkverkehr zur Diagnose und Überwachung von Azure-VMs erfassen. Weitere Informationen finden Sie unter Was ist Network Watcher?
In diesem Artikel erfahren Sie, wie Sie den Network Watcher Agent für Windows und Linux installieren, aktualisieren und deinstallieren. Die Installation des Agents führt nicht zu einer Unterbrechung und erfordert keinen Neustart der VM. Wenn die virtuelle Maschine von einem Azure-Dienst bereitgestellt wird, prüfen Sie die Dokumentation des Dienstes, um festzustellen, ob der Dienst die Installation von Erweiterungen in der virtuellen Maschine erlaubt.
Hinweis
Die Network Watcher Agent-Erweiterung wird auf AKS-Clustern nicht unterstützt.
Voraussetzungen
Eine Azure Virtual Machine (VM), die ein unterstütztes Betriebssystem ausführt. Weitere Informationen finden Sie unter Unterstützte Betriebssysteme.
Ausgehende TCP-Konnektivität zu 169.254.169.254 über port 80 und 168.63.129.16 über port 8037. Der Agent verwendet diese IP-Adressen für die Kommunikation mit der Azure-Plattform.
Internetverbindung: Der Network Watcher Agent benötigt eine Internetverbindung, damit einige Funktionen richtig funktionieren. Zum Beispiel ist eine Verbindung zu Ihrem Speicherkonto erforderlich, um Paketerfassungen hochzuladen.
Eine Azure Virtual Machine (VM), die ein unterstütztes Betriebssystem ausführt. Weitere Informationen finden Sie unter Unterstützte Betriebssysteme.
Ausgehende TCP-Konnektivität zu 169.254.169.254 über port 80 und 168.63.129.16 über port 8037. Der Agent verwendet diese IP-Adressen für die Kommunikation mit der Azure-Plattform.
Internetverbindung: Der Network Watcher Agent benötigt eine Internetverbindung, damit einige Funktionen richtig funktionieren. Zum Beispiel ist eine Verbindung zu Ihrem Speicherkonto erforderlich, um Paketerfassungen hochzuladen.
Azure Cloud Shell oder Azure PowerShell.
Die Schritte in diesem Artikel führen die Azure PowerShell-Cmdlets interaktiv in Azure Cloud Shell aus. Um die Befehle in Cloud Shell auszuführen, wählen Sie in der oberen rechten Ecke eines Codeblocks Cloud Shell öffnen aus. Wählen Sie Kopieren aus, um den Code zu kopieren und fügen Sie ihn in Cloud Shell ein, um ihn auszuführen. Sie können die Cloud Shell auch innerhalb des Azure-Portals ausführen.
Sie können Azure PowerShell auch lokal installieren, um die Cmdlets auszuführen. Wenn Sie PowerShell lokal ausführen, melden Sie sich mit dem Cmdlet Connect-AzAccount bei Azure an.
Eine Azure Virtual Machine (VM), die ein unterstütztes Betriebssystem ausführt. Weitere Informationen finden Sie unter Unterstützte Betriebssysteme.
Ausgehende TCP-Konnektivität zu 169.254.169.254 über port 80 und 168.63.129.16 über port 8037. Der Agent verwendet diese IP-Adressen für die Kommunikation mit der Azure-Plattform.
Internetverbindung: Der Network Watcher Agent benötigt eine Internetverbindung, damit einige Funktionen richtig funktionieren. Zum Beispiel ist eine Verbindung zu Ihrem Speicherkonto erforderlich, um Paketerfassungen hochzuladen.
Azure Cloud Shell oder Azure CLI.
Die Schritte in diesem Artikel führen die Azure CLI Befehle interaktiv in Azure Cloud Shell aus. Um die Befehle in Cloud Shell auszuführen, wählen Sie in der oberen rechten Ecke eines Codeblocks Cloud Shell öffnen aus. Wählen Sie Kopieren aus, um den Code zu kopieren, und fügen Sie ihn in Cloud Shell ein, um ihn auszuführen. Sie können die Cloud Shell auch innerhalb des Azure-Portals ausführen.
Sie können Azure CLI auch lokal installieren , um die Befehle auszuführen. Wenn Sie die Azure CLI lokal ausführen, melden Sie sich mit dem Befehl az login bei Azure an.
Eine Azure Virtual Machine (VM), die ein unterstütztes Betriebssystem ausführt. Weitere Informationen finden Sie unter Unterstützte Betriebssysteme.
Ausgehende TCP-Konnektivität zu 169.254.169.254 über port 80 und 168.63.129.16 über port 8037. Der Agent verwendet diese IP-Adressen für die Kommunikation mit der Azure-Plattform.
Internetverbindung: Der Network Watcher Agent benötigt eine Internetverbindung, damit einige Funktionen richtig funktionieren. Zum Beispiel ist eine Verbindung zu Ihrem Speicherkonto erforderlich, um Paketerfassungen hochzuladen.
Azure PowerShell oder Azure CLI wurde lokal installiert, um die Vorlage bereitzustellen.
Unterstützte Betriebssysteme
Sie können die Network Watcher Agent-Erweiterung für Windows auf den folgenden Betriebssystemen installieren:
- Windows Server 2012-, 2012 R2-, 2016-, 2019-, 2022- und 2025-Versionen.
- Windows 10- und 11-Releases.
Hinweis
Derzeit wird Nano Server nicht unterstützt.
Sie können die Network Watcher Agent-Erweiterung für Linux auf den folgenden Linux-Distributionen installieren:
| Verteilung |
Version |
| AlmaLinux |
9.2 |
| Azure Linux |
2.0 |
| CentOS 1 |
6.10 und 7 |
| Debian |
7 und 8 |
| openSUSE Leap 15.1 und höher |
42.3+ |
| Oracle Linux |
6.10 2, 7, 8 und 9+ |
| Red Hat Enterprise Linux (RHEL) |
6.10 3, 7, 8 und 9.2 |
| Rocky Linux |
9.1 |
| SUSE Linux Enterprise Server (SLES) |
12 und 15 (SP2, SP3 und SP4) |
| Ubuntu |
16+ |
1 CentOS Linux erreichte sein Lebensende (EOL) am 30. Juni 2024. Weitere Informationen finden Sie im CentOS End-of-Life-Leitfaden.
2Unterstützung für den erweiterten Lebenszyklus (ELS) für Oracle Linux Version 6.X endete am 1. Juli 2024.
3Unterstützung für den erweiterten Lebenszyklus (ELS) für Red Hat Enterprise Linux 6.X endete am 30. Juni 2024.
Hinweis
Die Überwachung des Internet Control Message Protocol (ICMP) wird derzeit im Network Watcher Agent unter Oracle Linux aufgrund bekannter Kernel-Einschränkungen, die spezifisch für die Distribution gelten, nicht unterstützt.
Erweiterungsschema
Der folgende JSON-Code zeigt das Schema für die Network Watcher-Agent-Erweiterung. Die Erweiterung benötigt oder unterstützt keine benutzerdefinierten Einstellungen und basiert auf ihrer Standardkonfiguration.
{
"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"
}
}
Auflisten installierter Erweiterungen
Von der Virtual Machine-Seite im Azure-Portal aus können Sie die installierten Erweiterungen ansehen, indem Sie folgende Schritte befolgen:
Wählen Sie unter Einstellungen die Option Erweiterungen und Anwendungen aus.
Auf der Registerkarte Erweiterungen werden alle auf der VM installierten Erweiterungen angezeigt. Wenn die Liste lang ist, verwenden Sie das Suchfeld, um die Liste zu filtern.
Verwenden Sie das Get-AzVMExtension-Cmdlet, um alle installierten Erweiterungen auf der virtuellen Maschine aufzulisten.
# List the installed extensions on the virtual machine.
Get-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' | format-table Name, Publisher, ExtensionType, AutoUpgradeMinorVersion, EnableAutomaticUpgrade
Die Ausgabe des Cmdlets listet die installierten Erweiterungen auf:
Name Publisher ExtensionType AutoUpgradeMinorVersion EnableAutomaticUpgrade
---- --------- ------------- ----------------------- ----------------------
AzureNetworkWatcherExtension Microsoft.Azure.NetworkWatcher NetworkWatcherAgentWindows True True
Name Publisher ExtensionType AutoUpgradeMinorVersion EnableAutomaticUpgrade
---- --------- ------------- ----------------------- ----------------------
AzureNetworkWatcherExtension Microsoft.Azure.NetworkWatcher NetworkWatcherAgentLinux True True
Verwenden Sie den Befehl az vm extension list, um alle installierten Erweiterungen auf der virtuellen Maschine aufzulisten.
# List the installed extensions on the virtual machine.
az vm extension list --resource-group 'myResourceGroup' --vm-name 'myVM' --out table
In der Ausgabe des Befehls werden alle installierten Erweiterungen aufgelistet:
Name ProvisioningState Publisher Version AutoUpgradeMinorVersion
---------------------------- ------------------- ------------------------------ --------- -------------------------
AzureNetworkWatcherExtension Succeeded Microsoft.Azure.NetworkWatcher 1.4 True
Installieren der VM-Erweiterung Network Watcher Agent
Auf der Seite „VM“ im Azure-Portal können Sie die VM-Erweiterung Network Watcher Agent installieren, indem Sie die folgenden Schritte ausführen:
Wählen Sie unter Einstellungen die Option Erweiterungen und Anwendungen aus.
Wählen Sie + Hinzufügen aus, suchen Sie nach Network Watcher Agent, und installieren Sie ihn. Wenn die Erweiterung bereits installiert ist, finden Sie sie in der Liste der Erweiterungen.
Im Suchfeld "Eine Erweiterung installieren" geben Sie den Network Watcher Agent ein, wählen Sie die passende Erweiterung Ihres Betriebssystems aus der Liste aus und wählen Sie dann Nächster.
Wählen Sie Überprüfen + erstellen und anschließend Erstellen aus.
Verwenden Sie das Set-AzVMExtension-Cmdlet, um die VM-Erweiterung Network Watcher Agent auf der virtuellen Maschine zu installieren:
# 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'
Wenn die Installation abgeschlossen ist, sehen Sie folgende Ausgabe:
RequestId IsSuccessStatusCode StatusCode ReasonPhrase
--------- ------------------- ---------- ------------
True OK
Verwenden Sie den Befehl az vm extension set, um die VM-Erweiterung Network Watcher Agent auf der virtuellen Maschine zu installieren:
# 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'
Verwenden Sie folgende Azure Resource Manager-Vorlage (ARM-Vorlage), um die VM-Erweiterung Network Watcher Agent auf einer virtuellen Maschine zu installieren:
{
"$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"
}
}
]
}
Sie können entweder Azure PowerShell oder die Azure CLI verwenden, um die Resource Manager-Vorlage bereitzustellen:
# 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'
Aktualisierung der Network Watcher Agent VM-Erweiterung
Überprüfen der Erweiterungsversion
Die Erweiterungsversion kann über das Azure-Portal, mithilfe der Azure-Befehlszeilenschnittstelle oder per PowerShell überprüft werden.
Gehe im Azure-Portal zu Erweiterungen + Anwendungen deiner VM.
In der Erweiterungsliste prüfen Sie die Versionsspalte für AzureNetworkWatcherExtension. Wenn eine neuere Version verfügbar ist, zeigt die Spalte Neueste Version(Update verfügbar) an.
Verwenden Sie das Get-AzVM-Cmdlet , um die installierte Version der Erweiterung zu überprüfen:
(Get-AzVM -ResourceGroupName 'myResourceGroup' -Name 'myVM' -Status).Extensions | Where-Object { $_.Name -eq 'AzureNetworkWatcherExtension' } | Select-Object Name, TypeHandlerVersion
Verwenden Sie das cmdlet Get-AzVMExtensionImage, um die aktuellste verfügbare Version der Erweiterung für das Betriebssystem und die Region Ihrer VM zu finden:
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
Verwenden Sie den Befehl az vm get-instance-view, um die installierte Version der Erweiterung zu überprüfen:
az vm get-instance-view --resource-group 'myResourceGroup' --name 'myVM' --query "extensions[?name=='AzureNetworkWatcherExtension'].typeHandlerVersion" --output tsv
Verwenden Sie den Befehl az VM Extension Image List, um die aktuellste verfügbare Version der Erweiterung für das Betriebssystem Ihrer VM zu finden:
az vm extension image list --name 'NetworkWatcherAgentWindows' --publisher 'Microsoft.Azure.NetworkWatcher' --latest
az vm extension image list --name 'NetworkWatcherAgentLinux' --publisher 'Microsoft.Azure.NetworkWatcher' --latest
Hinweis
Die aktuelle Version der Network Watcher-Erweiterung ist 1.4.4011.1.
Automatisches Upgrade aktivieren
Ein automatisches Upgrade ermöglicht es der Azure-Plattform, die Erweiterung ohne manuelles Eingreifen auf die neueste Version zu aktualisieren. Verwenden Sie die folgenden Schritte, um zu prüfen, ob automatisches Upgrade aktiviert ist, und aktivieren Sie es, falls nicht.
Unter Einstellungen Ihrer VM im Azure-Portal wählen Sie Erweiterungen + Anwendungen.
Wählen Sie AzureNetworkWatcherExtension aus der Liste der Erweiterungen und prüfen Sie die Spalte Automatischer Upgrade-Status .
Wenn es als deaktiviert angezeigt wird, wähle in der Werkzeugleiste "Automatisches Upgrade aktivieren ".
Klicken Sie auf Ja, um zu bestätigen.
Verwenden Sie das Get-AzVMExtension-Cmdlet , um zu prüfen, ob automatisches Upgrade aktiviert ist:
Get-AzVMExtension -ResourceGroupName 'myResourceGroup' -VMName 'myVM' -Name 'AzureNetworkWatcherExtension' | Select-Object Name, EnableAutomaticUpgrade
Wenn EnableAutomaticUpgradeFalse ist, verwenden Sie das Cmdlet Set-AzVMExtension, um es zu aktivieren:
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
Verwenden Sie den Befehl az vm extension show, um zu prüfen, ob automatisches Upgrade aktiviert ist:
az vm extension show --resource-group 'myResourceGroup' --vm-name 'myVM' --name 'AzureNetworkWatcherExtension' --query 'enableAutomaticUpgrade'
Wenn der Befehl zurückkehrt false, verwenden Sie den Befehl az vm extension set, um ihn zu aktivieren:
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'
Verwenden Sie die folgende Azure Resource Manager-Vorlage (ARM-Vorlage), um ein automatisches Upgrade auf der Network Watcher Agent VM-Erweiterung zu aktivieren:
{
"$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"
}
}
]
}
Sie können entweder Azure PowerShell oder die Azure CLI verwenden, um die Resource Manager-Vorlage bereitzustellen:
# 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'
Hinweis
Nachdem Sie das automatische Upgrade aktiviert haben, aktualisiert Azure die Erweiterung automatisch, ohne dass die virtuelle Maschine neu gestartet werden muss. Dieser Prozess kann bis zu 30 Tage nach der Veröffentlichung einer neuen Version dauern.
Manuell aktualisieren
Unter Einstellungen Ihrer VM im Azure-Portal wählen Sie Erweiterungen + Anwendungen.
Wählen Sie AzureNetworkWatcherExtension aus der Liste der Erweiterungen und wählen Sie dann in der Werkzeugleiste Aktualisieren .
Klicken Sie auf Ja, um zu bestätigen.
Wenn das Update abgeschlossen ist, zeigen die Spalten Version und Neueste Version dieselbe Versionsnummer an.
Wenn das Update nicht die neueste Version anwendet, entferne die Erweiterung und installiere sie erneut:
- Wählen Sie AzureNetworkWatcherExtension aus der Liste der Erweiterungen aus, und wählen Sie dann Deinstallieren aus.
- Wählen Sie + Hinzufügen, suchen Sie nach Network Watcher Agent und installieren Sie ihn erneut. Die Plattform installiert automatisch die aktuellste verfügbare Version. Weitere Informationen finden Sie unter Install Network Watcher Agent VM-Erweiterung.
Verwende das Set-AzVMExtension-Cmdlet mit dem Parameter, -ForceRerun um die Erweiterung neu anzuwenden, ohne sie zu deinstallieren. Der -ForceRerun Wert muss sich jedes Mal von seinem aktuellen Wert unterscheiden, wenn du den Befehl ausführst, also verwende einen Wert, der sich ändert, wie zum Beispiel das aktuelle Datum und die aktuelle Uhrzeit:
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)
Wenn diese Bedingung die Erweiterung nicht aktualisiert, entferne sie und installiere sie erneut, um die neueste Version zu erhalten:
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'
Verwenden Sie den Befehl az vm extension set mit dem --force-update-Parameter, um die Erweiterung erneut anzuwenden, ohne sie zu deinstallieren:
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
Wenn diese Bedingung die Erweiterung nicht aktualisiert, entferne sie und installiere sie erneut, um die neueste Version zu erhalten:
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'
Verwenden Sie die folgende Azure Resource Manager-Vorlage (ARM-Vorlage), um die Erweiterung erneut anzuwenden. Aktualisieren Sie den Parameter typeHandlerVersion auf die neueste Version, die Sie in Check your extension version identifiziert haben, und deployen Sie die Vorlage erneut:
{
"$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')]"
}
}
]
}
Sie können entweder Azure PowerShell oder die Azure CLI verwenden, um die Resource Manager-Vorlage bereitzustellen:
# 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>'
Aktualisierung im großen Maßstab mit einem PowerShell-Skript
Wenn du große Deployments hast, verwende ein PowerShell-Skript, um mehrere VMs in einem Abonnement gleichzeitig zu aktualisieren. Das folgende Skript aktualisiert die Network Watcher-Erweiterung bei allen veralteten VMs in einem Abo:
<#
.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"
}
Deinstallieren der VM-Erweiterung Network Watcher Agent
Auf der Seite „VM“ im Azure-Portal können Sie die VM-Erweiterung Network Watcher Agent deinstallieren, indem Sie die folgenden Schritte ausführen:
Wählen Sie unter Einstellungen die Option Erweiterungen und Anwendungen aus.
Wählen Sie AzureNetworkWatcherExtension aus der Liste der Erweiterungen aus, und wählen Sie dann Deinstallieren aus.
Hinweis
Es kann sein, dass die VM-Erweiterung Network Watcher Agent unter einem anderen Namen als AzureNetworkWatcherExtension angezeigt wird.
Verwenden Sie das Cmdlet Remove-AzVMExtension, um die VM-Erweiterung Network Watcher Agent aus der virtuellen Maschine zu entfernen:
# Uninstall Network Watcher Agent VM extension.
Remove-AzVMExtension -Name 'AzureNetworkWatcherExtension' -ResourceGroupName 'myResourceGroup' -VMName 'myVM'
Verwenden Sie den Befehl az vm extension delete, um die VM-Erweiterung „Network Watcher Agent“ von der virtuellen Maschine zu entfernen:
# Uninstall Network Watcher Agent VM extension.
az vm extension delete --name 'AzureNetworkWatcherExtension' --resource-group 'myResourceGroup' --vm-name 'myVM'
Häufig gestellte Fragen (FAQ)
Um Antworten auf die am häufigsten gestellten Fragen zum Network Watcher Agent zu erhalten, siehe die Network Watcher Agent FAQ.
Verwandte Inhalte