【发布时间】:2022-12-13 06:12:00
【问题描述】:
我想将 azurerm_virtual_machine_extension 资源添加到现有的 VM 资源:
resource "azurerm_virtual_machine_extension" "vm-bootstrap" {
count = "1"
name = "bootstrap"
virtual_machine_id = ...
publisher = "Microsoft.Azure.Extensions"
type = "CustomScript"
type_handler_version = "2.1"
auto_upgrade_minor_version = "false"
settings = <<SETTINGS
{
"script": "${filebase64("bootstrap.sh")}"
}
SETTINGS
}
运行 terraform apply 返回以下错误:
错误:compute.VirtualMachineExtensionsClient#CreateOrUpdate:发送请求失败: StatusCode=404 -- 原始错误:Code="ArtifactVersionNotFound" Message="No version found in 满足 VM 扩展所请求版本“2.1”的工件存储库 发布者 'Microsoft.Azure.Extensions' 并键入 'CustomScript'。”
虽然它看起来像 VM extenson 存在:
az vm extension image list-versions -n CustomScript --publisher Microsoft.Azure.Extensions --lo cation westeurope --query "[].name" -o tsv | sort -u 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.1 2.1.2 2.1.3 2.1.6地形 v1.0.11,
azure-cli:“2.30.0”,
azure-cli-核心:“2.30.0”,
azure-cli-遥测:“1.0.6”,
“扩展”:{}
你能给些建议么?
【问题讨论】:
-
当我使用多个
azurerm_virtual_machine_extensions 时,我遇到了同样的错误。您找到解决方案了吗? -
我将
azurerm_virtual_machine_extensions 合并为一个,所以我不再有这个问题。 -
我也遇到了同样的问题,但我无法将我的脚本添加到一个扩展中,因为一个扩展依赖于另一个 terraform 资源,而另一个扩展依赖于在运行脚本之前创建的所述资源。是否可以将 2 个 VM 自定义脚本扩展应用到同一个 VM 而不会收到此错误?
标签: azure terraform terraform-provider-azure