使用 Azure 资源管理器模板创建 Azure 数据资源管理器群集和数据库

Azure 数据资源管理器是一项快速且高度可缩放的数据探索服务,适用于日志和遥测数据。 若要使用 Azure 数据资源管理器,请先创建群集,再在该群集中创建一个或多个数据库。 然后将数据引入(加载)到数据库,以便对其运行查询。

在本文中,我们使用 Azure 资源管理器模板创建 Azure 数据资源管理器群集和数据库。 本文介绍如何定义要部署的资源以及如何定义执行部署时指定的参数。 可将此模板用于自己的部署,或自定义此模板以满足要求。 有关创建模板的信息,请参阅创作 Azure 资源管理器模板。 有关要在模板中使用的 JSON 语法和属性,请参阅 Microsoft.Kusto 资源类型

如果没有 Azure 订阅,可在开始前创建一个试用帐户

用于创建群集和数据库的 Azure 资源管理器模板

本文使用现有快速入门模板

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
      "clusters_kustocluster_name": {
          "type": "string",
          "defaultValue": "[concat('kusto', uniqueString(resourceGroup().id))]",
          "metadata": {
            "description": "Name of the cluster to create"
          }
      },
      "databases_kustodb_name": {
          "type": "string",
          "defaultValue": "kustodb",
          "metadata": {
            "description": "Name of the database to create"
          }
      },
      "location": {
        "type": "string",
        "defaultValue": "[resourceGroup().location]",
        "metadata": {
          "description": "Location for all resources."
        }
      }
  },
  "variables": {},
  "resources": [
      {
          "name": "[parameters('clusters_kustocluster_name')]",
          "type": "Microsoft.Kusto/clusters",
          "sku": {
              "name": "Standard_D13_v2",
              "tier": "Standard",
              "capacity": 2
          },
          "apiVersion": "2020-09-18",
          "location": "[parameters('location')]",
          "tags": {
            "Created By": "GitHub quickstart template"
          },
          "properties": {
              "trustedExternalTenants": [],
              "optimizedAutoscale": {
                  "version": 1,
                  "isEnabled": true,
                  "minimum": 2,
                  "maximum": 10
              },
              "enableDiskEncryption": false,
              "enableStreamingIngest": false,
              "virtualNetworkConfiguration":{
                  "subnetId": "<subnet resource id>",
                  "enginePublicIpId": "<Engine service's public IP address resource id>",
                  "dataManagementPublicIpId": "<Data management's service public IP address resource id>"
              },
              "keyVaultProperties":{
                  "keyName": "<Key name>",
                  "keyVaultUri": "<Key vault uri>"
              },
              "enablePurge": false,
              "enableDoubleEncryption": false,
              "engineType": "V3"
          }
      },
      {
          "name": "[concat(parameters('clusters_kustocluster_name'), '/', parameters('databases_kustodb_name'))]",
          "type": "Microsoft.Kusto/clusters/databases",
          "apiVersion": "2020-09-18",
          "location": "[parameters('location')]",
          "dependsOn": [
              "[resourceId('Microsoft.Kusto/clusters', parameters('clusters_kustocluster_name'))]"
          ],
          "properties": {
              "softDeletePeriodInDays": 365,
              "hotCachePeriodInDays": 31
          }
      }
  ]
}

若要查找更多模板示例,请参阅 Azure 快速入门模板

部署模板并验证模板部署

可以通过 Azure 门户powershell 部署 Azure 资源管理器模板。

使用 Azure 门户部署模板并验证模板部署

  1. 若要创建群集和数据库,请使用以下按钮开始部署。 右键单击并选择“在新窗口中打开”,以便按本文中的剩余步骤操作。

    Screenshot of a blue button that pictures clouds and is labeled Deploy to Azure.

    “部署到 Azure”按钮将转到 Azure 门户以填写部署窗体。

    Screenshot of a template on the Azure portal. All buttons, boxes, and check boxes used in editing are highlighted.

    可以使用此窗体在 Azure 门户中编辑和部署模板

  2. 完成“基本情况”和“设置”部分。 选择唯一的群集和数据库名称。 创建 Azure 数据资源管理器群集和数据库需要数分钟的时间。

  3. 若要验证部署,请在 Azure 门户中打开资源组,找到新的群集和数据库。

使用 PowerShell 部署模板并验证模板部署

使用 PowerShell 部署模板

  1. 从以下代码块中选择“试一试”,然后按照说明登录到 Azure PowerShell。

    $projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names"
    $location = Read-Host -Prompt "Enter the location (i.e. chinaeast2)"
    $resourceGroupName = "${projectName}rg"
    $clusterName = "${projectName}cluster"
    $parameters = @{}
    $parameters.Add("clusters_kustocluster_name", $clusterName)
    $templateUri = "https://azure.microsoft.com/resources/templates/101-kusto-cluster-database/"
    New-AzResourceGroup -Name $resourceGroupName -Location $location
    New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri -TemplateParameterObject $parameters
    Write-Host "Press [ENTER] to continue ..."
    
  2. 选择“复制”以复制 PowerShell 脚本。

  3. 右键单击 shell 控制台并选择“粘贴” 。 创建 Azure 数据资源管理器群集和数据库需要数分钟的时间。

使用 PowerShell 验证部署

若要验证部署,请使用以下 Azure PowerShell 脚本。 如果 Azure PowerShell 仍处于打开状态,则无需复制/运行第一行 (Read-Host)。 若要详细了解如何在 PowerShell 中管理 Azure 数据资源管理器资源,请阅读 Az.Kusto

$projectName = Read-Host -Prompt "Enter the same project name that you used in the last procedure"

Install-Module -Name Az.Kusto
$resourceGroupName = "${projectName}rg"
$clusterName = "${projectName}cluster"

Get-AzKustoCluster -ResourceGroupName $resourceGroupName -Name $clusterName
Write-Host "Press [ENTER] to continue ..."

清理资源

不再需要 Azure 资源时,请通过删除资源组来清理部署的资源。

使用 Azure 门户清理资源

清理资源中的步骤删除 Azure 门户中的资源。

使用 PowerShell 清理资源

$projectName = Read-Host -Prompt "Enter the same project name that you used in the last procedure"
$resourceGroupName = "${projectName}rg"

Remove-AzResourceGroup -ResourceGroupName $resourceGroupName

Write-Host "Press [ENTER] to continue ..."

后续步骤

将数据引入 Azure 数据资源管理器群集和数据库