Azure API Management从stv1迁移至stv2:Terraform如何指定platform_version?
如何在Terraform中指定Azure APIM的stv2平台版本
Azure APIM的平台版本(stv1/stv2)并非通过单独的platform_version属性设置,而是通过sku_name参数的后缀来控制:
针对AzureRM Provider < 3.0.0版本
旧版本Provider默认部署stv1,需在SKU名称后添加_stv2后缀强制部署stv2,示例代码:resource "azurerm_api_management" "example" { name = "your-apim-name" location = azurerm_resource_group.your-rg.location resource_group_name = azurerm_resource_group.your-rg.name publisher_name = "Your Publisher" publisher_email = "your-email@domain.com" sku_name = "Developer_1_stv2" # 后缀_stv2指定stv2平台 }针对AzureRM Provider >= 3.0.0版本
新版本Provider默认部署stv2,若之前部署过stv1资源,删除后重新部署时,只需确保sku_name没有_stv1后缀即可。
如果删除旧stv1资源后仍部署stv1,排查以下几点:
- 清理本地Terraform状态:执行
terraform state rm azurerm_api_management.your-apim-name移除旧资源状态 - 升级AzureRM Provider到最新稳定版
- 确认
sku_name未包含_stv1后缀
内容的提问来源于stack exchange,提问作者bizimunda
相关产品推荐
相关产品推荐

