You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Terraform通过镜像库创建VM遇TrustedLaunch报错求助

解决Terraform使用Trusted Launch镜像创建VM的报错问题

问题核心原因

你遇到的参数不支持提示,本质是Terraform Azure Provider版本过低——Trusted Launch相关的配置参数(security_type、trusted_launch_enabled等)仅在Provider 3.0.0及以上版本中被支持,旧版本无法识别这些字段。

具体解决方案

1. 升级Azure Provider版本

在你的Terraform配置文件中,指定Azure Provider的最低版本为3.0.0以上(推荐使用最新稳定版):

terraform {
  required_providers {
    azurerm = {
      source  = "hashicorp/azurerm"
      version = ">= 3.70.0" # 替换为当前最新稳定版即可
    }
  }
}

provider "azurerm" {
  features {}
}

执行命令完成升级:

terraform init -upgrade

2. 配置正确的Trusted Launch参数

使用新版的VM资源类型(azurerm_linux_virtual_machine或azurerm_windows_virtual_machine,不要用已弃用的azurerm_virtual_machine),并添加必要的Trusted Launch配置:

# 以Linux虚拟机为例
resource "azurerm_linux_virtual_machine" "trusted_vm" {
  name                = "trusted-launch-vm"
  resource_group_name = azurerm_resource_group.rg.name
  location            = azurerm_resource_group.rg.location
  size                = "Standard_D2s_v3"
  admin_username      = "azureadmin"
  network_interface_ids = [azurerm_network_interface.nic.id]

  # 核心Trusted Launch配置
  security_type          = "TrustedLaunch"
  trusted_launch_enabled = true

  os_disk {
    caching              = "ReadWrite"
    storage_account_type = "Premium_LRS"
  }

  # 引用镜像库中的镜像
  source_image_id = "/subscriptions/你的订阅ID/resourceGroups/镜像库资源组/providers/Microsoft.Compute/galleries/镜像库名称/images/镜像定义/versions/镜像版本"
}

如果是Windows虚拟机,只需将azurerm_linux_virtual_machine替换为azurerm_windows_virtual_machine,核心配置保持一致。

3. 验证并部署

执行terraform plan确认配置无语法错误,再运行terraform apply完成虚拟机创建。

额外注意事项

  • 不要使用旧版的azurerm_virtual_machine资源,该资源已被官方弃用,不支持Trusted Launch相关配置。
  • 确认你的Azure订阅和目标区域支持Trusted Launch功能,部分早期区域可能未开放该特性。

内容的提问来源于stack exchange,提问作者DHARMENDAR PARMAR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 03:33:19