通过 terraform 创建 Azure App 服务时抛出错误此处不应出现名为“zone_redundant”的参数

Posted

技术标签:

【中文标题】通过 terraform 创建 Azure App 服务时抛出错误此处不应出现名为“zone_redundant”的参数【英文标题】:While creating Azure App service via terraform throwing an error An argument named "zone_redundant" is not expected here 【发布时间】:2021-11-15 00:59:05 【问题描述】:

我正在尝试创建区域冗余 Azure 应用服务以实现高可用性,但 terraform validate 引发错误此处不应出现名为“zone_redundant”的参数

我的配置如下所示

terraform 
  required_providers 
    azurerm = 
      source  = "hashicorp/azurerm"
      version = "=2.46.0"
    
  


  resource "azurerm_app_service_plan" "example" 
  name                = "app-demo"
  location            = "Australia East"
  resource_group_name = "rg-app-service"
  kind                = "Linux"
  reserved            = true
  zone_redundant      = true

         
  sku 
    tier = "PremiumV2"
    size = "P1v2"
   capacity = "3"
  


我不确定我在这里缺少什么。谁能给我建议?

参考

https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/app_service_plan#zone_redundant

【问题讨论】:

您使用什么版本的 terraform azurerm 提供程序? @AndriyBilous - 我使用的是 2.46.0 版本 你能尝试使用最新版本的 2.77.0 吗? 太好了.. 谢谢@AndriyBilous。它现在可以工作了:)。只是想和你确认一下,zone_redundant = true。将在提到的位置跨区域部署 3 个实例对吗? 是的,应用服务计划将在提到的位置跨区域创建 【参考方案1】:

您正在使用 Terraform azurerm 提供程序版本 2.46.0

azurerm_app_service_plan 中的zone_redundant 选项 Terraform 资源已添加到 Terraform azurerm 提供程序版本 2.74.0 中,这就是为什么您收到错误“此处不需要名为“zone_redundant”的参数。”

请在您的代码中更新 Terraform azurerm 提供程序版本:

terraform 
  required_providers 
    azurerm = 
      source  = "hashicorp/azurerm"
      version = "=2.74.0"
    
  

【讨论】:

以上是关于通过 terraform 创建 Azure App 服务时抛出错误此处不应出现名为“zone_redundant”的参数的主要内容,如果未能解决你的问题,请参考以下文章

在Terraform Azure App服务资源中配置CORS

使用 vnet_subnet_id 通过 terraform 启动 AKS 群集 - Azure

将现有 Azure 资源导入本地 Terraform 状态文件

如何使用 Terraform 为 Azure 资源创建警报

Azure API 无法识别来自 Terraform 的服务主体

使用 Terraform 创建 Azure IaaS 域控制器