如何使用ARM模板创建CosmosDB SQL API无服务器账户
报错原因及修复方案
你遇到的报错是因为无服务器模式的配置位置和kind字段的赋值错误,调整模板如下:
核心修改点
- 数据库账户的
kind字段不可直接设为Serverless,SQL API的账户kind固定为GlobalDocumentDB - 在
properties节点下新增"capacityMode": "Serverless"属性,用来指定账户为无服务器模式 - 无服务器模式仅支持单区域部署,
locations数组内仅可保留一个区域配置(你现有配置符合要求,无需额外调整)
修改后的完整resources代码
"resources" : [ { "type": "Microsoft.DocumentDB/databaseAccounts", "apiVersion": "2020-04-01", "kind": "GlobalDocumentDB", "name": "[parameters('accountName')]", "location": "[parameters('location')]", "properties": { "enableFreeTier": false, "databaseAccountOfferType": "Standard", "capacityMode": "Serverless", "consistencyPolicy": { "defaultConsistencyLevel": "Session" }, "locations": [ { "locationName": "[parameters('location')]" } ] } }, { "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", "apiVersion": "2020-04-01", "name": "[format('{0}/{1}', parameters('accountName'), parameters('databaseName'))]", "properties": { "resource": { "id": "[parameters('databaseName')]" }, "options": {} }, "dependsOn": [ "[resourceId('Microsoft.DocumentDB/databaseAccounts', parameters('accountName'))]" ] } ]
调整后重新部署即可正常创建SQL API无服务器模式的Cosmos DB账户。
内容的提问来源于stack exchange,提问作者azurecosmosdb 2018
相关产品推荐
相关产品推荐

