Terraform Azure App Service 计划错误 - 参数 SKU.Name 的值无效

Terraform Azure App Service Plan Error - The parameter SKU.Name has an invalid value

模块声明

resource "azurerm_app_service_plan" "appserviceplan" {
  name                = var.name
  location            = var.location
  resource_group_name = var.resource_group_name
  kind                = var.kind
  reserved            = var.reserved
  is_xenon            = var.is_xenon

  sku {
    # name = var.sku_name
    tier = var.sku_tier
    size = var.sku_tier
  }
}

像这样调用上面的模块(在main.tf)...

module "appserviceplan1" {
  source = "../modules/app_service_plan"

  name                = "${var.project_name}-${var.environment}-appserviceplan"
  location            = var.location
  resource_group_name = var.resource_group_name
  kind                = var.asp_kind
  reserved            = var.asp_reserved
  is_xenon            = var.asp_is_xenon
  # sku_name            = var.asp_sku_name
  sku_tier = var.asp_sku_tier
  sku_size = var.asp_sku_tier
}

输入变量赋值(在main.auto.tfvars):

# Variable assignment for App Service Plan
asp_kind = "xenon"
# Recommended value is false
# Ref: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/app_service_plan
asp_reserved = false
asp_is_xenon = true
# asp_sku_name = "P3"
asp_sku_tier = "PremiumV3"
asp_sku_size = "P3v3"

使用 terraform apply 出现以下错误:

Error: Error creating/updating App Service Plan "xyz-sandbox-appserviceplan" (Resource Group "abc-sandbox-xyz-cc-rg"): web.AppServicePlansClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="BadRequest" Message="The parameter SKU.Name has an invalid value." Details=[{"Message":"The parameter SKU.Name has an invalid value."},{"Code":"BadRequest"},{"ErrorEntity":{"Code":"BadRequest","Message":"The parameter SKU.Name has an invalid value.","MessageTemplate":"The parameter {0} has an invalid value.","Parameters":["SKU.Name"]}}]

我已经为此纠结了几个小时。任何帮助将不胜感激!

解决方案:我使用的等级和大小不正确。

使用以下方法解决了..

asp_sku_tier = "P3v3"
asp_sku_size = "P3v3"

感谢@KalC,下面的工作。

resource "azurerm_app_service_plan" "af-sp" {
  name                     = "af-sp"
  location                 = var.azure_functions_location
  resource_group_name      = var.azure_functions_rg_name
  kind                     = "Linux"
  reserved                 = true

  sku {
    tier = "P1v2"
    size = "P1v2"
  }
}