Mulai cepat: Mengonfigurasi log alur NSG Azure Network Watcher menggunakan templat Azure Resource Manager (ARM)

Dalam mulai cepat ini, Anda mempelajari cara mengaktifkan log alur NSG menggunakan templat Azure Resource Manager (ARM) dan Azure PowerShell. Untuk informasi selengkapnya, lihat Apa itu Gambaran umum log alur Azure Resource Manager? dan NSG.

Templat Azure Resource Manager adalah file JavaScript Object Notation (JSON) yang menentukan infrastruktur dan konfigurasi untuk proyek Anda. Template tersebut menggunakan sintaksis deklaratif. Anda menjelaskan penyebaran yang Dimaksudkan tanpa menulis urutan perintah pemrograman untuk membuat penyebaran.

Kita mulai dengan gambaran umum tentang properti dari objek log aliran NSG. Kami menyediakan contoh templat. Kemudian, kami menggunakan instans Azure PowerShell lokal untuk menyebarkan templat.

Jika lingkungan Anda telah memenuhi prasyarat dan Anda terbiasa menggunakan templat ARM, pilih tombol Sebarkan ke Azure. Templat terbuka di portal Azure.

Tombol untuk menyebarkan templat Resource Manager ke Azure.

Prasyarat

Akun Azure dengan langganan aktif. Jika Anda tidak memilikinya, buat akun gratis sebelum memulai.

Meninjau templat

templat yang kami gunakan dalam panduan memulai ini berasal dariAzure Quickstart Templat.

{
  "$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'))]"
      ]
    }
  ]
}

Sumber daya berikut ini ditentukan dalam templat:

Kode yang disorot dalam sampel sebelumnya merupakan definisi sumber daya log alur NSG.

Menyebarkan templat

Tutorial ini mengasumsikan bahwa Anda memiliki grup sumber daya yang ada dan NSG yang dapat Anda aktifkan aliran masuknya.

Anda dapat menyimpan salah satu contoh templat yang ditampilkan dalam artikel ini secara lokal sebagaiazuredeploy.json. Perbarui nilai properti sehingga mengarah ke sumber daya yang valid dalam langganan Anda.

Untuk menyebarkan templat, jalankan perintah berikut ini di Azure PowerShell:

$context = Get-AzSubscription -SubscriptionId <subscription Id>
Set-AzContext $context
New-AzResourceGroupDeployment -Name EnableFlowLog -ResourceGroupName NetworkWatcherRG `
    -TemplateFile "C:\MyTemplates\azuredeploy.json"

Catatan

Perintah ini menyebarkan sumber daya ke grup sumber daya NetworkWatcherRG , dan bukan ke grup sumber daya yang berisi grup keamanan jaringan.

Memvalidasi penyebaran

Anda memiliki dua opsi untuk melihat apakah penerapan Anda berhasil:

  • Konsol PowerShell Anda menunjukkan ProvisioningState sebagai Succeeded.
  • Pergi ke Halaman portal log aliran NSG untuk mengonfirmasi perubahan Anda.

Jika ada masalah dengan penerapan, lihat Memecahkan kesalahan umum penyebaran Azure dengan Azure Resource Manager.

Membersihkan sumber daya

Anda dapat menghapus sumber daya Azure dengan menggunakan mode penyebaran lengkap. Untuk menghapus sumber daya log alur, tentukan penyebaran dalam mode lengkap tanpa menyertakan sumber daya yang ingin Anda hapus. Baca lebih lanjut tentang mode penyebaran lengkap.

Anda juga dapat menonaktifkan atau menghapus log alur di portal Azure:

  1. Di kotak pencarian di bagian atas portal, masukkan pengamat jaringan. Pilih Network Watcher di hasil pencarian.

  2. Di bawah Log, pilih Log alur.

  3. Di Network Watcher | Log alur, pilih kotak centang log alur yang ingin Anda hapus.

  4. Pilih Nonaktifkan atau Hapus. Untuk informasi selengkapnya, lihat Menonaktifkan log alur atau Menghapus log alur.

Dalam mulai cepat ini, Anda mempelajari cara mengaktifkan log alur NSG menggunakan templat ARM. Selanjutnya, pelajari cara memvisualisasikan data aliran NSG Anda menggunakan analitik lalu lintas: