Краткое руководство. Настройка журналов потоков NSG в Azure Наблюдатель за сетями с помощью шаблона Azure Resource Manager (ARM)
В этом кратком руководстве описано, как включить журналы потоков NSG с помощью шаблона Azure Resource Manager (ARM) и Azure PowerShell. Дополнительные сведения см. в статье "Что такое Azure Resource Manager" и журналы потоков NSG.
Шаблон Azure Resource Manager — это файл нотации объектов JavaScript (JSON), который определяет инфраструктуру и конфигурацию проекта. В шаблоне используется декларативный синтаксис. Вы описываете предполагаемое развертывание без написания последовательности команд программирования для создания развертывания.
Мы начнем с обзора свойств объекта журнала потоков NSG. Будут предоставлены примеры шаблонов. Затем мы будем использовать локальный экземпляр Azure PowerShell для развертывания шаблона.
Если среда соответствует предварительным требованиям и вы знакомы с использованием шаблонов ARM, нажмите кнопку Развертывание в Azure. На портале Azure откроется шаблон.
Необходимые компоненты
Учетная запись Azure с активной подпиской. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.
Изучение шаблона
Шаблон, используемый в этом кратком руководстве, взят из шаблонов быстрого запуска Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.9.1.41621",
"templateHash": "14580725600461536175"
}
},
"parameters": {
"networkWatcherName": {
"type": "string",
"defaultValue": "[format('NetworkWatcher_{0}', parameters('location'))]",
"metadata": {
"description": "Name of the Network Watcher attached to your subscription. Format: NetworkWatcher_<region_name>"
}
},
"flowLogName": {
"type": "string",
"defaultValue": "FlowLog1",
"metadata": {
"description": "Name of your Flow log resource"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Region where you resources are located"
}
},
"existingNSG": {
"type": "string",
"metadata": {
"description": "Resource ID of the target NSG"
}
},
"retentionDays": {
"type": "int",
"defaultValue": 0,
"maxValue": 365,
"minValue": 0,
"metadata": {
"description": "Retention period in days. Default is zero which stands for permanent retention. Can be any Integer from 0 to 365"
}
},
"flowLogsVersion": {
"type": "int",
"defaultValue": 2,
"allowedValues": [
1,
2
],
"metadata": {
"description": "FlowLogs Version. Correct values are 1 or 2 (default)"
}
},
"storageAccountType": {
"type": "string",
"defaultValue": "Standard_LRS",
"allowedValues": [
"Standard_LRS",
"Standard_GRS",
"Standard_ZRS"
],
"metadata": {
"description": "Storage Account type"
}
}
},
"variables": {
"storageAccountName": "[format('flowlogs{0}', uniqueString(resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2021-09-01",
"name": "[variables('storageAccountName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('storageAccountType')]"
},
"kind": "StorageV2",
"properties": {}
},
{
"type": "Microsoft.Network/networkWatchers",
"apiVersion": "2022-01-01",
"name": "[parameters('networkWatcherName')]",
"location": "[parameters('location')]",
"properties": {}
},
{
"type": "Microsoft.Network/networkWatchers/flowLogs",
"apiVersion": "2022-01-01",
"name": "[format('{0}/{1}', parameters('networkWatcherName'), parameters('flowLogName'))]",
"location": "[parameters('location')]",
"properties": {
"targetResourceId": "[parameters('existingNSG')]",
"storageId": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
"enabled": true,
"retentionPolicy": {
"days": "[parameters('retentionDays')]",
"enabled": true
},
"format": {
"type": "JSON",
"version": "[parameters('flowLogsVersion')]"
}
},
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
]
}
]
}
В шаблоне определены следующие ресурсы:
- Microsoft.Storage/storageAccounts
- Microsoft.Network networkWatchers
- Microsoft.Network networkWatchers/flowLogs
Выделенный код в предыдущем примере показывает определение ресурса журналов потоков группы безопасности сети.
Развертывание шаблона
Для выполнения действий, описанных в этом учебнике, предполагается, что у вас есть группа ресурсов и NSG, для которых можно включить ведение журнала потоков.
Вы можете сохранить любой из примеров шаблонов, которые показаны в этой статье, локально в виде файла azuredeploy.json. Обновите значения свойств, чтобы они указывали на действительные ресурсы в вашей подписке.
Чтобы развернуть шаблон, выполните следующую команду в PowerShell:
$context = Get-AzSubscription -SubscriptionId <subscription Id>
Set-AzContext $context
New-AzResourceGroupDeployment -Name EnableFlowLog -ResourceGroupName NetworkWatcherRG `
-TemplateFile "C:\MyTemplates\azuredeploy.json"
Примечание.
Эти команды развертывают ресурс в группе ресурсов NetworkWatcherRG , а не в группу ресурсов, содержащую группу безопасности сети.
Проверка развертывания
Существует две возможности проверить успешность развертывания:
- На консоли PowerShell для
ProvisioningState
должно отображаться значениеSucceeded
. - Вы также можете перейти на страницу портала журналов потоков NSG, чтобы подтвердить изменения.
Если возникнут проблемы с развертыванием, см. статью Устранение распространенных ошибок развертывания в Azure с помощью Azure Resource Manager.
Очистка ресурсов
Вы можете удалить ресурсы Azure с помощью режима полного развертывания. Чтобы удалить ресурс журнала потоков, укажите развертывание в полном режиме без включения ресурса, который требуется удалить. Ознакомьтесь с дополнительными сведениями о завершении режима развертывания.
Вы также можете отключить или удалить журнал потоков в портал Azure:
В поле поиска в верхней части портала введите наблюдателя за сетями. Выберите Наблюдатель за сетями из результатов поиска.
В разделе "Журналы" выберите журналы потоков.
В Наблюдатель за сетями | Журналы потоков установите флажок журнала потока, который требуется удалить.
Выберите "Отключить " или "Удалить". Дополнительные сведения см. в разделе "Отключение журнала потока" или "Удаление журнала потока".
Связанный контент
Из этого краткого руководства вы узнали, как включить журналы потоков NSG с помощью шаблона ARM. Далее вы узнаете, как визуализировать данные потока NSG с помощью аналитики трафика: