使用azurerm 2.56.0在Terraform中配置CosmosDB的backup块报错
问题原因
你遇到的报错是azurerm不同大版本的配置结构差异导致的:
- azurerm 2.x版本(你当前使用的2.56.0属于该范畴)中,
azurerm_cosmosdb_account的备份相关配置为资源顶层参数,不存在backup嵌套块结构 backup嵌套块是azurerm 3.0及以上版本才引入的配置形式,你查阅的官方文档对应更高版本的azurerm,因此和实际运行环境的版本要求不匹配
修正方案
直接将backup块中的配置提至资源顶层,使用2.x版本对应的参数名即可,修正后的配置如下:
resource "azurerm_cosmosdb_account" "testaccount" { name = "testaccount" location = var.location resource_group_name = var.rgname offer_type = "Standard" kind = "GlobalDocumentDB" enable_automatic_failover = false # 2.x版本备份配置直接写在资源顶层 backup_type = "Periodic" backup_interval_in_minutes = 120 backup_retention_in_hours = 14 consistent_policy { consistency_level = "Session" } }
额外注意
Terraform资源参数大小写敏感,你原配置中首字母大写的Kind建议改为规范的小写kind,避免后续版本升级或参数校验时报错。
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

