使用 Azure CLI 建立、變更、啟用、停用或刪除虛擬網路流量記錄
虛擬網路流量記錄是 Azure 網路監看員的一項功能,可讓您記錄流經 Azure 虛擬網路的 IP 流量資訊。 如需虛擬網路流量記錄的詳細資訊,請參閱虛擬網路流量記錄概觀。
在本文中,您將瞭解如何使用 Azure CLI 建立、變更、啟用、停用或刪除虛擬網路流量記錄。 您可以瞭解如何使用 Azure 入口網站 或 PowerShell 來管理虛擬網路流量記錄。
必要條件
具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
深入解析提供者。 如需詳細資訊,請參閱註冊深入解析提供者。
虛擬網路。 如果您需要建立虛擬網路,請參閱使用 Azure CLI 建立虛擬網路。
一個 Azure 儲存體帳戶。 如果您需要建立儲存體帳戶,請參閱使用 Azure CLI 建立儲存體帳戶。
Azure Cloud Shell 或 Azure CLI。
本文中的步驟會在 Azure Cloud Shell 中以互動方式執行 Azure CLI 命令。 若要在 Cloud Shell 中執行命令,請選取程式碼區塊右上角的 [開啟 Cloud Shell]。 選取 [複製] 以複製程式碼,並將它貼到 Cloud Shell 中以執行。 您也可以從 Azure 入口網站內執行 Cloud Shell。
您也可以在本機安裝 Azure CLI 以執行命令。 本文需要 Azure CLI 2.39.0 版或更新版本。 執行 az --version (部分機器翻譯) 命令以尋找已安裝的版本。 如果您在本機執行 Azure CLI,請使用 az login 命令登入 Azure。
註冊深入解析提供者
您必須註冊 Microsoft.Insights 提供者,才能成功記錄虛擬網路中的流量。 如果您不確定是否已註冊 Microsoft.Insights 提供者,請使用 az provider register 進行註冊。
# Register Microsoft.Insights provider.
az provider register --namespace Microsoft.Insights
啟用虛擬網路流量記錄
使用 az network watcher flow-log create 建立虛擬網路流程記錄。
# Create a VNet flow log.
az network watcher flow-log create --location 'eastus' --resource-group 'myResourceGroup' --name 'myVNetFlowLog' --vnet myVNet --storage-account 'myStorageAccount'
# Create a VNet flow log (storage account is in a different resource group from the virtual network).
az network watcher flow-log create --location 'eastus' --resource-group 'myResourceGroup' --name 'myVNetFlowLog' --vnet myVNet --storage-account '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/StorageRG/providers/Microsoft.Storage/storageAccounts/myStorageAccount'
啟用虛擬網路流量記錄和使用分析
使用 az monitor log-analytics workspace create 建立使用分析工作區,然後使用 az network watcher flow-log create 來建立使用該工作區的虛擬網路流程記錄。
# Create a traffic analytics workspace.
az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup' --location 'eastus'
# Create a VNet flow log.
az network watcher flow-log create --location 'eastus' --name 'myVNetFlowLog' --resource-group 'myResourceGroup' --vnet 'myVNet' --storage-account 'myStorageAccount' --workspace 'myWorkspace' --interval 10 --traffic-analytics true
# Create a traffic analytics workspace.
az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup' --location 'eastus'
# Create a VNet flow log (storage account and traffic analytics workspace are in different resource groups from the virtual network).
az network watcher flow-log create --location 'eastus' --name 'myVNetFlowLog' --resource-group 'myResourceGroup' --vnet 'myVNet' --storage-account '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/StorageRG/providers/Microsoft.Storage/storageAccounts/myStorageAccount' --workspace '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/WorkspaceRG/providers/Microsoft.OperationalInsights/workspaces/myWorkspace' --interval 10 --traffic-analytics true
列出區域中的所有流量記錄
使用 az network watcher flow-log list 列出您訂用帳戶中特定區域的所有流量記錄資源。
# Get all flow logs in East US region.
az network watcher flow-log list --location 'eastus' --out table
檢視虛擬網路流量記錄資源
使用 az network watcher flow-log show 查看流量記錄資源的詳細資料。
# Get the flow log details.
az network watcher flow-log show --name 'myVNetFlowLog' --resource-group 'NetworkWatcherRG' --location 'eastus'
下載流量記錄
若要從記憶體帳戶下載虛擬網路流量記錄,請使用 az storage blob download 命令。
虛擬網路流量記錄檔會儲存至記憶體帳戶,路徑如下:
https://{storageAccountName}.blob.core.windows.net/insights-logs-flowlogflowevent/flowLogResourceID=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/NETWORKWATCHERRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKWATCHERS/NETWORKWATCHER_{Region}/FLOWLOGS/{FlowlogResourceName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json
注意
您也可以使用 Azure 儲存體總管,從儲存體帳戶容器中存取和下載 VNet 流量記錄檔。 儲存體總管是使用便利的獨立應用程式,可讓您存取和使用 Azure 儲存體資料。 如需詳細資訊,請參閱開始使用儲存體總管。
停用流量記錄資源的流量分析
若要停用流量記錄資源的使用分析,並繼續產生虛擬網路流量記錄並將其儲存至記憶體帳戶,請使用 az network watcher flow-log update。
# Update the VNet flow log.
az network watcher flow-log update --location 'eastus' --name 'myVNetFlowLog' --resource-group 'myResourceGroup' --vnet 'myVNet' --storage-account 'myStorageAccount' --traffic-analytics false
刪除虛擬網路流量記錄資源
若要刪除虛擬網路流程記錄資源,請使用 az network watcher flow-log delete。
# Delete the VNet flow log.
az network watcher flow-log delete --name 'myVNetFlowLog' --location 'eastus'
相關內容
- 若要了解流量分析,請參閱流量分析。
- 若要了解如何使用 Azure 內建原則來稽核或啟用流量分析,請參閱使用 Azure 原則管理流量分析。