你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Bicep 资源定义
可以使用目标操作部署群集/数据库/脚本资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Kusto/clusters/databases/scripts 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.Kusto/clusters/databases/scripts@2024-04-13' = {
parent: resourceSymbolicName
name: 'string'
properties: {
continueOnErrors: bool
forceUpdateTag: 'string'
principalPermissionsAction: 'string'
scriptContent: 'string'
scriptLevel: 'string'
scriptUrl: 'string'
scriptUrlSasToken: 'string'
}
}
属性值
Microsoft.Kusto/clusters/databases/scripts
| 名字 | 描述 | 价值 |
|---|---|---|
| 名字 | 资源名称 | 字符串 约束: 模式 = ^.*$ (必需) |
| 父级 | 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。 有关详细信息,请参阅 父资源外部的子资源。 |
类型资源的符号名称:群集/数据库 |
| 性能 | 数据库脚本。 | ScriptProperties |
ScriptProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| continueOnErrors | 指示命令之一失败时是否继续的标志。 | 布尔 |
| forceUpdateTag | 唯一的字符串。 如果更改了脚本,将再次应用该脚本。 | 字符串 |
| principalPermissionsAction | 指示脚本调用方的权限是否在脚本完成之后保留。 | “RemovePermissionOnScriptCompletion” 'RetainPermissionOnScriptCompletion' |
| scriptContent | 脚本内容。 当脚本提供内联而不是通过 SA 中的文件时,应使用此属性。 不得与 scriptUrl 和 scriptUrlSasToken 属性一起使用。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
| scriptLevel | 区分包含的脚本命令类型 - 数据库或群集。 默认值为 Database。 | “Cluster” “Database” |
| scriptUrl | KQL 脚本 Blob 文件的 URL。 不得与 scriptContent 属性一起使用 | 字符串 |
| scriptUrlSasToken | 提供对包含脚本的文件的读取访问权限的 SaS 令牌。 在使用 scriptUrl 属性时必须提供。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
用法示例
Bicep 示例
部署 Kusto 脚本的基本示例。
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource cluster 'Microsoft.Kusto/clusters@2023-05-02' = {
name: resourceName
location: location
properties: {
enableAutoStop: true
enableDiskEncryption: false
enableDoubleEncryption: false
enablePurge: false
enableStreamingIngest: false
engineType: 'V2'
publicIPType: 'IPv4'
publicNetworkAccess: 'Enabled'
restrictOutboundNetworkAccess: 'Disabled'
trustedExternalTenants: []
}
sku: {
capacity: 1
name: 'Dev(No SLA)_Standard_D11_v2'
tier: 'Basic'
}
}
resource database 'Microsoft.Kusto/clusters/databases@2023-05-02' = {
parent: cluster
name: resourceName
location: location
kind: 'ReadWrite'
properties: {}
}
resource script 'Microsoft.Kusto/clusters/databases/scripts@2023-05-02' = {
parent: database
name: 'create-table-script'
properties: {
continueOnErrors: false
forceUpdateTag: '9e2e7874-aa37-7041-81b7-06397f03a37d'
scriptContent: '''.create table TestTable(Id:string, Name:string, _ts:long, _timestamp:datetime)
.create table TestTable ingestion json mapping "TestMapping"
''[''
'' {"column":"Id","path":"$.id"},''
'' {"column":"Name","path":"$.name"},''
'' {"column":"_ts","path":"$._ts"},''
'' {"column":"_timestamp","path":"$._ts", "transform":"DateTimeFromUnixSeconds"}''
'']''
.alter table TestTable policy ingestionbatching "{''MaximumBatchingTimeSpan'': ''0:0:10'', ''MaximumNumberOfItems'': 10000}"
'''
}
}
Azure 快速入门示例
以下 Azure 快速入门模板 包含用于部署此资源类型的 Bicep 示例。
| Bicep 文件 | 描述 |
|---|---|
| 使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB | 使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB。 |
| 使用事件网格连接部署 Azure 数据资源管理器数据库 | 使用事件网格连接部署 Azure 数据资源管理器数据库。 |
| 使用事件中心连接部署 Azure 数据资源管理器数据库 | 使用事件中心连接部署 Azure 数据资源管理器数据库。 |
| FinOps 中心 | 此模板创建新的 FinOps 中心实例,包括数据资源管理器、Data Lake 存储和数据工厂。 |
ARM 模板资源定义
可以使用目标操作部署群集/数据库/脚本资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Kusto/clusters/databases/scripts 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.Kusto/clusters/databases/scripts",
"apiVersion": "2024-04-13",
"name": "string",
"properties": {
"continueOnErrors": "bool",
"forceUpdateTag": "string",
"principalPermissionsAction": "string",
"scriptContent": "string",
"scriptLevel": "string",
"scriptUrl": "string",
"scriptUrlSasToken": "string"
}
}
属性值
Microsoft.Kusto/clusters/databases/scripts
| 名字 | 描述 | 价值 |
|---|---|---|
| apiVersion | API 版本 | '2024-04-13' |
| 名字 | 资源名称 | 字符串 约束: 模式 = ^.*$ (必需) |
| 性能 | 数据库脚本。 | ScriptProperties |
| 类型 | 资源类型 | “Microsoft.Kusto/clusters/databases/scripts” |
ScriptProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| continueOnErrors | 指示命令之一失败时是否继续的标志。 | 布尔 |
| forceUpdateTag | 唯一的字符串。 如果更改了脚本,将再次应用该脚本。 | 字符串 |
| principalPermissionsAction | 指示脚本调用方的权限是否在脚本完成之后保留。 | “RemovePermissionOnScriptCompletion” 'RetainPermissionOnScriptCompletion' |
| scriptContent | 脚本内容。 当脚本提供内联而不是通过 SA 中的文件时,应使用此属性。 不得与 scriptUrl 和 scriptUrlSasToken 属性一起使用。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
| scriptLevel | 区分包含的脚本命令类型 - 数据库或群集。 默认值为 Database。 | “Cluster” “Database” |
| scriptUrl | KQL 脚本 Blob 文件的 URL。 不得与 scriptContent 属性一起使用 | 字符串 |
| scriptUrlSasToken | 提供对包含脚本的文件的读取访问权限的 SaS 令牌。 在使用 scriptUrl 属性时必须提供。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
用法示例
Azure 快速入门模板
以下 Azure 快速入门模板 部署此资源类型。
| 模板 | 描述 |
|---|---|
|
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB |
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB。 |
|
使用事件网格连接部署 Azure 数据资源管理器数据库 |
使用事件网格连接部署 Azure 数据资源管理器数据库。 |
|
使用事件中心连接部署 Azure 数据资源管理器数据库 |
使用事件中心连接部署 Azure 数据资源管理器数据库。 |
|
FinOps 中心 |
此模板创建新的 FinOps 中心实例,包括数据资源管理器、Data Lake 存储和数据工厂。 |
Terraform (AzAPI 提供程序)资源定义
可以使用目标操作部署群集/数据库/脚本资源类型:
- 资源组
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Kusto/clusters/databases/scripts 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Kusto/clusters/databases/scripts@2024-04-13"
name = "string"
parent_id = "string"
body = {
properties = {
continueOnErrors = bool
forceUpdateTag = "string"
principalPermissionsAction = "string"
scriptContent = "string"
scriptLevel = "string"
scriptUrl = "string"
scriptUrlSasToken = "string"
}
}
}
属性值
Microsoft.Kusto/clusters/databases/scripts
| 名字 | 描述 | 价值 |
|---|---|---|
| 名字 | 资源名称 | 字符串 约束: 模式 = ^.*$ (必需) |
| parent_id | 此资源的父资源的 ID。 | 类型资源的 ID:群集/数据库 |
| 性能 | 数据库脚本。 | ScriptProperties |
| 类型 | 资源类型 | “Microsoft.Kusto/clusters/databases/scripts@2024-04-13” |
ScriptProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| continueOnErrors | 指示命令之一失败时是否继续的标志。 | 布尔 |
| forceUpdateTag | 唯一的字符串。 如果更改了脚本,将再次应用该脚本。 | 字符串 |
| principalPermissionsAction | 指示脚本调用方的权限是否在脚本完成之后保留。 | “RemovePermissionOnScriptCompletion” 'RetainPermissionOnScriptCompletion' |
| scriptContent | 脚本内容。 当脚本提供内联而不是通过 SA 中的文件时,应使用此属性。 不得与 scriptUrl 和 scriptUrlSasToken 属性一起使用。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
| scriptLevel | 区分包含的脚本命令类型 - 数据库或群集。 默认值为 Database。 | “Cluster” “Database” |
| scriptUrl | KQL 脚本 Blob 文件的 URL。 不得与 scriptContent 属性一起使用 | 字符串 |
| scriptUrlSasToken | 提供对包含脚本的文件的读取访问权限的 SaS 令牌。 在使用 scriptUrl 属性时必须提供。 | 字符串 约束: 敏感值。 以安全参数的形式传入。 |
用法示例
Terraform 示例
部署 Kusto 脚本的基本示例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "cluster" {
type = "Microsoft.Kusto/clusters@2023-05-02"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
identity {
type = "SystemAssigned"
identity_ids = []
}
body = {
properties = {
enableAutoStop = true
enableDiskEncryption = false
enableDoubleEncryption = false
enablePurge = false
enableStreamingIngest = false
engineType = "V2"
publicIPType = "IPv4"
publicNetworkAccess = "Enabled"
restrictOutboundNetworkAccess = "Disabled"
trustedExternalTenants = [
]
}
sku = {
capacity = 1
name = "Dev(No SLA)_Standard_D11_v2"
tier = "Basic"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "database" {
type = "Microsoft.Kusto/clusters/databases@2023-05-02"
parent_id = azapi_resource.cluster.id
name = var.resource_name
location = var.location
body = {
kind = "ReadWrite"
properties = {
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "script" {
type = "Microsoft.Kusto/clusters/databases/scripts@2023-05-02"
parent_id = azapi_resource.database.id
name = "create-table-script"
body = {
properties = {
continueOnErrors = false
forceUpdateTag = "9e2e7874-aa37-7041-81b7-06397f03a37d"
scriptContent = ".create table TestTable(Id:string, Name:string, _ts:long, _timestamp:datetime)\n.create table TestTable ingestion json mapping \"TestMapping\"\n'['\n' {\"column\":\"Id\",\"path\":\"$.id\"},'\n' {\"column\":\"Name\",\"path\":\"$.name\"},'\n' {\"column\":\"_ts\",\"path\":\"$._ts\"},'\n' {\"column\":\"_timestamp\",\"path\":\"$._ts\", \"transform\":\"DateTimeFromUnixSeconds\"}'\n']'\n.alter table TestTable policy ingestionbatching \"{'MaximumBatchingTimeSpan': '0:0:10', 'MaximumNumberOfItems': 10000}\"\n"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
部署 Kusto 脚本的基本示例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "cluster" {
type = "Microsoft.Kusto/clusters@2023-05-02"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
identity {
type = "SystemAssigned"
identity_ids = []
}
body = {
properties = {
enableAutoStop = true
enableDiskEncryption = false
enableDoubleEncryption = false
enablePurge = false
enableStreamingIngest = false
engineType = "V2"
publicIPType = "IPv4"
publicNetworkAccess = "Enabled"
restrictOutboundNetworkAccess = "Disabled"
trustedExternalTenants = [
]
}
sku = {
capacity = 1
name = "Dev(No SLA)_Standard_D11_v2"
tier = "Basic"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "database" {
type = "Microsoft.Kusto/clusters/databases@2023-05-02"
parent_id = azapi_resource.cluster.id
name = var.resource_name
location = var.location
body = {
kind = "ReadWrite"
properties = {
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "script" {
type = "Microsoft.Kusto/clusters/databases/scripts@2023-05-02"
parent_id = azapi_resource.database.id
name = "create-table-script"
body = {
properties = {
continueOnErrors = false
forceUpdateTag = "9e2e7874-aa37-7041-81b7-06397f03a37d"
scriptContent = ".create table TestTable(Id:string, Name:string, _ts:long, _timestamp:datetime)\n.create table TestTable ingestion json mapping \"TestMapping\"\n'['\n' {\"column\":\"Id\",\"path\":\"$.id\"},'\n' {\"column\":\"Name\",\"path\":\"$.name\"},'\n' {\"column\":\"_ts\",\"path\":\"$._ts\"},'\n' {\"column\":\"_timestamp\",\"path\":\"$._ts\", \"transform\":\"DateTimeFromUnixSeconds\"}'\n']'\n.alter table TestTable policy ingestionbatching \"{'MaximumBatchingTimeSpan': '0:0:10', 'MaximumNumberOfItems': 10000}\"\n"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}