你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.DocumentDB databaseAccounts 2019-08-01

Bicep 资源定义

可以使用面向以下操作部署 databaseAccounts 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DocumentDB/databaseAccounts 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts@2019-08-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  kind: 'string'
  properties: {
    capabilities: [
      {
        name: 'string'
      }
    ]
    connectorOffer: 'Small'
    consistencyPolicy: {
      defaultConsistencyLevel: 'string'
      maxIntervalInSeconds: int
      maxStalenessPrefix: int
    }
    databaseAccountOfferType: 'Standard'
    disableKeyBasedMetadataWriteAccess: bool
    enableAutomaticFailover: bool
    enableCassandraConnector: bool
    enableMultipleWriteLocations: bool
    ipRangeFilter: 'string'
    isVirtualNetworkFilterEnabled: bool
    locations: [
      {
        failoverPriority: int
        isZoneRedundant: bool
        locationName: 'string'
      }
    ]
    virtualNetworkRules: [
      {
        id: 'string'
        ignoreMissingVNetServiceEndpoint: bool
      }
    ]
  }
}

属性值

databaseAccounts

名称 说明
name 资源名称 字符串 (必需)

字符限制:3-44

有效字符:
小写字母、数字和连字符。

以小写字母或数字开头。

资源名称在 Azure 中必须是唯一的。
location 资源所属的资源组的位置。 字符串
标记 标记是描述资源的键值对的列表。 在查看此资源和为此资源分组(跨资源组)时,可以使用这些标记。 最多可以为资源提供 15 个标记。 每个标记的键不能超过 128 个字符,值不能超过 256 个字符。 例如,模板类型的默认体验设置为“defaultExperience”:“Cassandra”。 当前的“defaultExperience”值还包括“Table”、“Graph”、“DocumentDB”和“MongoDB”。 标记名称和值的字典。 请参阅 模板中的标记
kind 指示数据库帐户的类型。 这只能在创建数据库帐户时设置。 “GlobalDocumentDB”
“MongoDB”
“Parse”
properties 用于创建和更新 Azure Cosmos DB 数据库帐户的属性。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... 所需的 ()

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名称 说明
capabilities 帐户的 Cosmos DB 功能列表 Capability[]
connectorOffer Cassandra 连接器为 Cosmos DB 数据库 C* 帐户提供类型。 'Small'
consistencyPolicy Cosmos DB 帐户的一致性策略。 ConsistencyPolicy
databaseAccountOfferType 数据库的套餐类型 “标准” (必需)
disableKeyBasedMetadataWriteAccess 通过帐户密钥对元数据资源 (数据库、容器、吞吐量) 禁用写入操作 bool
enableAutomaticFailover 在极少数情况下,如果写入区域因中断而不可用,则启用写入区域的自动故障转移。 自动故障转移将导致帐户的新写入区域,并根据为帐户配置的故障转移优先级进行选择。 bool
enableCassandraConnector 在 Cosmos DB C* 帐户上启用 cassandra 连接器 bool
enableMultipleWriteLocations 使帐户能够在多个位置进行写入 bool
ipRangeFilter Cosmos DB 防火墙支持:此值以 CIDR 形式指定要作为给定数据库帐户的客户端 IP 允许列表包含的一组 IP 地址或 IP 地址范围。 IP 地址/范围必须以逗号分隔,且不能包含空格。 字符串
isVirtualNetworkFilterEnabled 指示是否启用/禁用虚拟网络 ACL 规则的标志。 bool
locations 一个数组,其中包含为 Cosmos DB 帐户启用的地理复制位置。 location[] (必需)
virtualNetworkRules 为 Cosmos DB 帐户配置的虚拟网络 ACL 规则列表。 VirtualNetworkRule[]

功能

名称 说明
name Cosmos DB 功能的名称。 例如,“name”:“EnableCassandra”。 当前值还包括“EnableTable”和“EnableGremlin”。 字符串

ConsistencyPolicy

名称 说明
defaultConsistencyLevel Cosmos DB 帐户的默认一致性级别和配置设置。 “BoundedStaleness”
“ConsistentPrefix”
“最终”
“Session”
需要“强” ()
maxIntervalInSeconds 当与有限过期一致性级别一起使用时,此值表示) 容许的过时 (秒的时间量。 此值的接受范围为 5 - 86400。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 5
最大值 = 86400
maxStalenessPrefix 与有限过期一致性级别一起使用时,此值表示允许的过时请求数。 此值的接受范围为 1 – 2,147,483,647。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 1
最大值 = 2147483647

位置

名称 说明
failoverPriority 区域的故障转移优先级。 故障转移优先级为 0 表示写入区域。 故障转移优先级的最大值 = (总区域数 - 1) 。 对于数据库帐户所在的每个区域,故障转移优先级值必须是唯一的。 int

约束:
最小值 = 0
isZoneRedundant 指示此区域是否为 AvailabilityZone 区域的标志 bool
locationName 区域的名称。 字符串

VirtualNetworkRule

名称 说明 Value
id 子网的资源 ID,例如:/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}。 字符串
ignoreMissingVNetServiceEndpoint 在虚拟网络启用 vnet 服务终结点之前创建防火墙规则。 bool

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
在 Azure 容器服务上使用 Jenkins 的 CI/CD (AKS)

部署到 Azure
容器使你可以轻松地持续生成和部署应用程序。 通过在 Azure 容器服务中使用 Kubernetes 协调这些容器的部署,可以实现可复制、可管理的容器群集。 通过设置持续生成来生成容器映像和业务流程,可以提高部署的速度和可靠性。
具有 SQL 数据库的 Web 应用、Azure Cosmos DB、Azure 搜索

部署到 Azure
此模板预配 Web 应用、SQL 数据库、Azure Cosmos DB、Azure 搜索和 Application Insights。
为 Cassandra API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在具有密钥空间和具有专用吞吐量的表的两个区域中为 Cassandra API 创建 Azure Cosmos DB 帐户。
为 Cassandra API 创建自动缩放 Azure Cosmos DB 帐户

部署到 Azure
此模板在具有密钥空间和具有自动缩放吞吐量的表的两个区域中为 Cassandra API 创建 Azure Cosmos DB 帐户。
创建 Azure CosmosDB 帐户

部署到 Azure
此 ARM 模板旨在使用所需的最小值快速创建 CosmosDB 帐户
在多个区域中创建 Azure Cosmos DB 帐户

部署到 Azure
此模板为具有主要区域和次要区域的任何数据库 API 类型创建 Azure Cosmos DB 帐户,并可选择一致性级别和故障转移类型。
创建免费层 Azure Cosmos DB 帐户

部署到 Azure
此模板为 SQL API 创建一个免费层 Azure Cosmos DB 帐户,其中包含具有共享吞吐量和容器的数据库。
为 Gremlin API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在两个区域中为 Gremlin API 创建 Azure Cosmos DB 帐户,其中一个数据库和一个图形使用专用吞吐量。
为 Gremlin API 自动缩放创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在两个区域中为 Gremlin API 创建 Azure Cosmos DB 帐户,其中一个数据库和一个图形使用自动缩放吞吐量。
为 MongoDB API 创建 Azure Cosmos 帐户

部署到 Azure
此模板使用具有两个集合的共享吞吐量和专用吞吐量在两个区域中为 MongoDB API 4.2 创建 Azure Cosmos DB 帐户。
为 MongoDB API 自动缩放创建 Azure Cosmos 帐户

部署到 Azure
此模板使用共享和专用自动缩放吞吐量在两个区域中为 MongoDB API 4.2 创建 Azure Cosmos DB 帐户。
使用专用终结点创建 Azure Cosmos DB 帐户

部署到 Azure
此模板将创建 Cosmos 帐户、虚拟网络和向虚拟网络公开 Cosmos 帐户的专用终结点。
为 Core (SQL) API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建一个 Azure Cosmos 帐户,其中包含一个数据库和具有多个其他选项的吞吐量容器。
使用分析存储的 Azure Cosmos DB 帐户 SQL API

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos 帐户,其中包含配置了分析存储的数据库和容器。
使用自动缩放创建 Azure Cosmos DB 帐户 SQL API

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos 帐户,其中包含具有自动缩放吞吐量的数据库和容器以及多个其他选项。
创建 Azure Cosmos DB Core (SQL) API 存储过程

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos DB 帐户,以及一个包含存储过程、触发器和用户定义的函数的容器。
为 Core (SQL) API 创建最小的 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos DB 帐户,同时仅指定所需的最小资源属性。
使用 SQL API 和多个容器创建 Azure Cosmos

部署到 Azure
该模板使用 SQL API 创建 Cosmos 容器,并允许添加多个容器。
使用数据平面 RBAC 创建 Azure Cosmos DB SQL 帐户

部署到 Azure
此模板将创建一个 SQL Cosmos 帐户、一个本机维护的角色定义以及一个为 AAD 标识提供的本机维护角色分配。
为 SQL API 创建无服务器 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建无服务器 Azure Cosmos DB 帐户。
为表 API 创建 Azure Cosmos 帐户

部署到 Azure
此模板在两个区域中为表 API 创建一个 Azure Cosmos DB 帐户,以及一个具有预配吞吐量的表。
使用自动缩放为表 API 创建 Azure Cosmos 帐户

部署到 Azure
此模板在两个区域中为表 API 创建 Azure Cosmos DB 帐户,以及一个具有自动缩放吞吐量的表。
创建零接触 Azure Cosmos 帐户和 Azure Web 应用

部署到 Azure
此模板创建 Azure Cosmos 帐户,将 Cosmos DB 终结点和密钥注入 Azure Web 应用设置,然后从 GitHub 部署 ASP MVC Web 应用。
创建启用了 Microsoft Defender 的 Cosmos DB 帐户

部署到 Azure
使用此 ARM 模板,可以部署启用了 Microsoft Defender for Azure Cosmos DB 的 Azure Cosmos DB 帐户。 Microsoft Defender for Azure Cosmos DB 是 Azure 本机安全层,可检测企图利用 Azure Cosmos DB 帐户中的数据库的行为。 Microsoft Defender for Azure Cosmos DB 可检测潜在的 SQL 注入、基于 Microsoft 威胁情报的已知不良参与者、可疑访问模式,以及通过泄露的标识或恶意内部人员对数据库的潜在利用。
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB

部署到 Azure
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB。
使用 Web 应用的 Azure Cosmos DB 帐户

部署到 Azure
此模板部署 Azure Cosmos DB 帐户、应用服务计划,并在应用服务计划中创建 Web 应用。 它还将两个应用程序设置添加到引用 Azure Cosmos DB 帐户终结点的 Web 应用。 这样,部署到 Web 应用的解决方案就可以使用这些设置连接到 Azure Cosmos DB 帐户终结点。

ARM 模板资源定义

可以使用面向以下操作部署 databaseAccounts 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DocumentDB/databaseAccounts 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.DocumentDB/databaseAccounts",
  "apiVersion": "2019-08-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "kind": "string",
  "properties": {
    "capabilities": [
      {
        "name": "string"
      }
    ],
    "connectorOffer": "Small",
    "consistencyPolicy": {
      "defaultConsistencyLevel": "string",
      "maxIntervalInSeconds": "int",
      "maxStalenessPrefix": "int"
    },
    "databaseAccountOfferType": "Standard",
    "disableKeyBasedMetadataWriteAccess": "bool",
    "enableAutomaticFailover": "bool",
    "enableCassandraConnector": "bool",
    "enableMultipleWriteLocations": "bool",
    "ipRangeFilter": "string",
    "isVirtualNetworkFilterEnabled": "bool",
    "locations": [
      {
        "failoverPriority": "int",
        "isZoneRedundant": "bool",
        "locationName": "string"
      }
    ],
    "virtualNetworkRules": [
      {
        "id": "string",
        "ignoreMissingVNetServiceEndpoint": "bool"
      }
    ]
  }
}

属性值

databaseAccounts

名称 说明 Value
type 资源类型 'Microsoft.DocumentDB/databaseAccounts'
apiVersion 资源 API 版本 '2019-08-01'
name 资源名称 字符串 (必需)

字符限制:3-44

有效字符:
小写字母、数字和连字符。

以小写字母或数字开头。

资源名称在 Azure 中必须是唯一的。
location 资源所属的资源组的位置。 字符串
标记 标记是描述资源的键值对的列表。 在查看此资源和为此资源分组(跨资源组)时,可以使用这些标记。 最多可以为一个资源提供 15 个标记。 每个标记的键不能超过 128 个字符,值不能超过 256 个字符。 例如,模板类型的默认体验设置为“defaultExperience”:“Cassandra”。 当前的“defaultExperience”值还包括“Table”、“Graph”、“DocumentDB”和“MongoDB”。 标记名称和值的字典。 请参阅 模板中的标记
kind 指示数据库帐户的类型。 这只能在创建数据库帐户时进行设置。 “GlobalDocumentDB”
“MongoDB”
“Parse”
properties 用于创建和更新 Azure Cosmos DB 数据库帐户的属性。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... 所需的 ()

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名称 说明
capabilities 帐户的 Cosmos DB 功能列表 Capability[]
connectorOffer Cassandra 连接器为 Cosmos DB 数据库 C* 帐户提供类型。 “Small”
consistencyPolicy Cosmos DB 帐户的一致性策略。 ConsistencyPolicy
databaseAccountOfferType 数据库的套餐类型 “标准” (必需)
disableKeyBasedMetadataWriteAccess 通过帐户密钥对元数据资源 (数据库、容器、吞吐量) 禁用写入操作 bool
enableAutomaticFailover 在极少数情况下,如果写入区域因中断而不可用,则启用写入区域的自动故障转移。 自动故障转移将导致帐户的新写入区域,并根据为帐户配置的故障转移优先级进行选择。 bool
enableCassandraConnector 在 Cosmos DB C* 帐户上启用 cassandra 连接器 bool
enableMultipleWriteLocations 使帐户能够在多个位置进行写入 bool
ipRangeFilter Cosmos DB 防火墙支持:此值以 CIDR 形式指定要作为给定数据库帐户的客户端 IP 允许列表包含的一组 IP 地址或 IP 地址范围。 IP 地址/范围必须以逗号分隔,且不能包含空格。 字符串
isVirtualNetworkFilterEnabled 指示是否启用/禁用虚拟网络 ACL 规则的标志。 bool
locations 一个数组,其中包含为 Cosmos DB 帐户启用的地理复制位置。 location[] (必需)
virtualNetworkRules 为 Cosmos DB 帐户配置的虚拟网络 ACL 规则列表。 VirtualNetworkRule[]

功能

名称 说明
name Cosmos DB 功能的名称。 例如,“name”:“EnableCassandra”。 当前值还包括“EnableTable”和“EnableGremlin”。 字符串

ConsistencyPolicy

名称 说明
defaultConsistencyLevel Cosmos DB 帐户的默认一致性级别和配置设置。 “BoundedStaleness”
“ConsistentPrefix”
“最终”
“Session”
需要“强” ()
maxIntervalInSeconds 当与有限过期一致性级别一起使用时,此值表示) 容许的过时 (秒的时间量。 此值的接受范围为 5 - 86400。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 5
最大值 = 86400
maxStalenessPrefix 与有限过期一致性级别一起使用时,此值表示允许的过时请求数。 此值的接受范围为 1 – 2,147,483,647。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 1
最大值 = 2147483647

位置

名称 说明
failoverPriority 区域的故障转移优先级。 故障转移优先级为 0 表示写入区域。 故障转移优先级的最大值 = (区域总数 - 1) 。 对于数据库帐户所在的每个区域,故障转移优先级值必须是唯一的。 int

约束:
最小值 = 0
isZoneRedundant 指示此区域是否为 AvailabilityZone 区域的标志 bool
locationName 区域的名称。 字符串

VirtualNetworkRule

名称 说明 Value
id 子网的资源 ID,例如:/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}。 字符串
ignoreMissingVNetServiceEndpoint 在虚拟网络启用 vnet 服务终结点之前创建防火墙规则。 bool

快速入门模板

以下快速入门模板部署此资源类型。

模板 说明
在 Azure 容器服务上使用 Jenkins 的 CI/CD (AKS)

部署到 Azure
容器使你可以非常轻松地持续生成和部署应用程序。 通过在 Azure 容器服务中使用 Kubernetes 协调这些容器的部署,可以实现可复制、可管理的容器群集。 通过设置持续生成来生成容器映像和业务流程,可以提高部署的速度和可靠性。
具有 SQL 数据库的 Web 应用、Azure Cosmos DB、Azure 搜索

部署到 Azure
此模板预配 Web 应用、SQL 数据库、Azure Cosmos DB、Azure 搜索和 Application Insights。
为 Cassandra API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在具有密钥空间和具有专用吞吐量的表的两个区域中为 Cassandra API 创建 Azure Cosmos DB 帐户。
为 Cassandra API 创建自动缩放 Azure Cosmos DB 帐户

部署到 Azure
此模板在具有密钥空间和具有自动缩放吞吐量的表的两个区域中为 Cassandra API 创建 Azure Cosmos DB 帐户。
创建 Azure CosmosDB 帐户

部署到 Azure
此 ARM 模板旨在使用所需的最小值快速创建 CosmosDB 帐户
在多个区域中创建 Azure Cosmos DB 帐户

部署到 Azure
此模板为具有主要区域和次要区域的任何数据库 API 类型创建 Azure Cosmos DB 帐户,并可选择一致性级别和故障转移类型。
创建免费层 Azure Cosmos DB 帐户

部署到 Azure
此模板为 SQL API 创建一个免费层 Azure Cosmos DB 帐户,其中包含具有共享吞吐量和容器的数据库。
为 Gremlin API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在两个区域中为 Gremlin API 创建 Azure Cosmos DB 帐户,其中一个数据库和一个图形使用专用吞吐量。
为 Gremlin API 自动缩放创建 Azure Cosmos DB 帐户

部署到 Azure
此模板在两个区域中为 Gremlin API 创建 Azure Cosmos DB 帐户,其中一个数据库和一个图形使用自动缩放吞吐量。
为 MongoDB API 创建 Azure Cosmos 帐户

部署到 Azure
此模板使用具有两个集合的共享吞吐量和专用吞吐量在两个区域中为 MongoDB API 4.2 创建 Azure Cosmos DB 帐户。
为 MongoDB API 自动缩放创建 Azure Cosmos 帐户

部署到 Azure
此模板使用共享和专用自动缩放吞吐量在两个区域中为 MongoDB API 4.2 创建 Azure Cosmos DB 帐户。
使用专用终结点创建 Azure Cosmos DB 帐户

部署到 Azure
此模板将创建 Cosmos 帐户、虚拟网络和向虚拟网络公开 Cosmos 帐户的专用终结点。
为 Core (SQL) API 创建 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建一个 Azure Cosmos 帐户,其中包含一个数据库和具有多个其他选项的吞吐量容器。
使用分析存储的 Azure Cosmos DB 帐户 SQL API

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos 帐户,其中包含配置了分析存储的数据库和容器。
使用自动缩放创建 Azure Cosmos DB 帐户 SQL API

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos 帐户,其中包含具有自动缩放吞吐量的数据库和容器以及多个其他选项。
创建 Azure Cosmos DB Core (SQL) API 存储过程

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos DB 帐户,以及一个包含存储过程、触发器和用户定义的函数的容器。
为 Core (SQL) API 创建最小的 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建 Azure Cosmos DB 帐户,同时仅指定所需的最小资源属性。
使用 SQL API 和多个容器创建 Azure Cosmos

部署到 Azure
该模板使用 SQL API 创建 Cosmos 容器,并允许添加多个容器。
使用数据平面 RBAC 创建 Azure Cosmos DB SQL 帐户

部署到 Azure
此模板将创建一个 SQL Cosmos 帐户、一个本机维护的角色定义以及一个为 AAD 标识提供的本机维护角色分配。
为 SQL API 创建无服务器 Azure Cosmos DB 帐户

部署到 Azure
此模板为 Core (SQL) API 创建无服务器 Azure Cosmos DB 帐户。
为表 API 创建 Azure Cosmos 帐户

部署到 Azure
此模板在两个区域中为表 API 创建一个 Azure Cosmos DB 帐户,以及一个具有预配吞吐量的表。
使用自动缩放为表 API 创建 Azure Cosmos 帐户

部署到 Azure
此模板在两个区域中为表 API 创建 Azure Cosmos DB 帐户,以及一个具有自动缩放吞吐量的表。
创建零接触 Azure Cosmos 帐户和 Azure Web 应用

部署到 Azure
此模板创建 Azure Cosmos 帐户,将 Cosmos DB 终结点和密钥注入 Azure Web 应用设置,然后从 GitHub 部署 ASP MVC Web 应用。
创建启用了 Microsoft Defender 的 Cosmos DB 帐户

部署到 Azure
使用此 ARM 模板,可以部署已启用 Microsoft Defender for Azure Cosmos DB 的 Azure Cosmos DB 帐户。 Microsoft Defender for Azure Cosmos DB 是 Azure 本机安全层,可检测企图利用 Azure Cosmos DB 帐户中的数据库的行为。 Microsoft Defender for Azure Cosmos DB 可检测潜在的 SQL 注入、基于 Microsoft 威胁情报的已知不良参与者、可疑访问模式,以及通过泄露的标识或恶意内部人员对数据库的潜在利用。
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB

部署到 Azure
使用 Cosmos DB 连接部署 Azure 数据资源管理器 DB。
使用 Web 应用的 Azure Cosmos DB 帐户

部署到 Azure
此模板部署 Azure Cosmos DB 帐户、应用服务计划,并在应用服务计划中创建 Web 应用。 它还将两个应用程序设置添加到引用 Azure Cosmos DB 帐户终结点的 Web 应用。 这样,部署到 Web 应用的解决方案就可以使用这些设置连接到 Azure Cosmos DB 帐户终结点。

Terraform (AzAPI 提供程序) 资源定义

databaseAccounts 资源类型可以使用目标操作进行部署:

  • 资源组

有关每个 API 版本中更改的属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DocumentDB/databaseAccounts 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DocumentDB/databaseAccounts@2019-08-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      capabilities = [
        {
          name = "string"
        }
      ]
      connectorOffer = "Small"
      consistencyPolicy = {
        defaultConsistencyLevel = "string"
        maxIntervalInSeconds = int
        maxStalenessPrefix = int
      }
      databaseAccountOfferType = "Standard"
      disableKeyBasedMetadataWriteAccess = bool
      enableAutomaticFailover = bool
      enableCassandraConnector = bool
      enableMultipleWriteLocations = bool
      ipRangeFilter = "string"
      isVirtualNetworkFilterEnabled = bool
      locations = [
        {
          failoverPriority = int
          isZoneRedundant = bool
          locationName = "string"
        }
      ]
      virtualNetworkRules = [
        {
          id = "string"
          ignoreMissingVNetServiceEndpoint = bool
        }
      ]
    }
    kind = "string"
  })
}

属性值

databaseAccounts

名称 说明 Value
type 资源类型 “Microsoft.DocumentDB/databaseAccounts@2019-08-01”
name 资源名称 字符串 (必需)

字符限制:3-44

有效字符:
小写字母、数字和连字符。

以小写字母或数字开头。

资源名称在 Azure 中必须是唯一的。
location 资源所属的资源组的位置。 字符串
parent_id 若要部署到资源组,请使用该资源组的 ID。 字符串 (必需)
标记 标记是描述资源的键值对的列表。 在查看此资源和为此资源分组(跨资源组)时,可以使用这些标记。 最多可以为一个资源提供 15 个标记。 每个标记的键不能超过 128 个字符,值不能超过 256 个字符。 例如,模板类型的默认体验设置为“defaultExperience”:“Cassandra”。 当前的“defaultExperience”值还包括“Table”、“Graph”、“DocumentDB”和“MongoDB”。 标记名称和值的字典。
kind 指示数据库帐户的类型。 这只能在创建数据库帐户时进行设置。 “GlobalDocumentDB”
“MongoDB”
“Parse”
properties 用于创建和更新 Azure Cosmos DB 数据库帐户的属性。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... 所需的 ()

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名称 说明
capabilities 帐户的 Cosmos DB 功能列表 Capability[]
connectorOffer Cassandra 连接器为 Cosmos DB 数据库 C* 帐户提供类型。 “Small”
consistencyPolicy Cosmos DB 帐户的一致性策略。 ConsistencyPolicy
databaseAccountOfferType 数据库的套餐类型 “标准” (必需)
disableKeyBasedMetadataWriteAccess 通过帐户密钥对元数据资源 (数据库、容器、吞吐量) 禁用写入操作 bool
enableAutomaticFailover 在极少数情况下,如果写入区域因中断而不可用,则启用写入区域的自动故障转移。 自动故障转移将导致帐户的新写入区域,并根据为帐户配置的故障转移优先级进行选择。 bool
enableCassandraConnector 在 Cosmos DB C* 帐户上启用 cassandra 连接器 bool
enableMultipleWriteLocations 使帐户能够在多个位置进行写入 bool
ipRangeFilter Cosmos DB 防火墙支持:此值以 CIDR 形式指定要作为给定数据库帐户的客户端 IP 允许列表包含的一组 IP 地址或 IP 地址范围。 IP 地址/范围必须以逗号分隔,且不能包含空格。 字符串
isVirtualNetworkFilterEnabled 指示是否启用/禁用虚拟网络 ACL 规则的标志。 bool
locations 一个数组,其中包含为 Cosmos DB 帐户启用的地理复制位置。 location[] (必需)
virtualNetworkRules 为 Cosmos DB 帐户配置的虚拟网络 ACL 规则列表。 VirtualNetworkRule[]

功能

名称 说明
name Cosmos DB 功能的名称。 例如,“name”:“EnableCassandra”。 当前值还包括“EnableTable”和“EnableGremlin”。 字符串

ConsistencyPolicy

名称 说明
defaultConsistencyLevel Cosmos DB 帐户的默认一致性级别和配置设置。 “BoundedStaleness”
“ConsistentPrefix”
“最终”
“Session”
需要“强” ()
maxIntervalInSeconds 当与有限过期一致性级别一起使用时,此值表示) 容许的过时 (秒的时间量。 此值的接受范围为 5 - 86400。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 5
最大值 = 86400
maxStalenessPrefix 与有限过期一致性级别一起使用时,此值表示允许的过时请求数。 此值的接受范围为 1 – 2,147,483,647。 当 defaultConsistencyPolicy 设置为“BoundedStaleness”时是必需的。 int

约束:
最小值 = 1
最大值 = 2147483647

位置

名称 说明
failoverPriority 区域的故障转移优先级。 故障转移优先级为 0 表示写入区域。 故障转移优先级的最大值 = (总区域数 - 1) 。 对于数据库帐户所在的每个区域,故障转移优先级值必须是唯一的。 int

约束:
最小值 = 0
isZoneRedundant 指示此区域是否为 AvailabilityZone 区域的标志 bool
locationName 区域的名称。 字符串

VirtualNetworkRule

名称 说明 Value
id 子网的资源 ID,例如:/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}。 字符串
ignoreMissingVNetServiceEndpoint 在虚拟网络启用 vnet 服务终结点之前创建防火墙规则。 bool