terraform-azure:附加现有磁盘-不允许更改属性'datadisk.name'

zysjyyx4  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(501)

环境:

Terraform v0.11.0
+ provider.azurerm v0.3.3
+ provider.tls v1.0.1

问题:
尝试在正在配置的vm上附加现有磁盘,出现如下错误:


* azurerm_virtual_machine.kafka_vm: compute.VirtualMachinesClient#CreateOrUpdate: Failure responding to request: StatusCode=409 -- Original Error: autorest/azure: Service returned an error. Status=409 Code="PropertyChangeNotAllowed" Message="Changing property 'dataDisk.name' is not allowed."

这里是 vm.tf :

storage_data_disk {
    name            = "${var.env_short_name}-zookeeper-data01"
    managed_disk_id = "${var.kafka_data_image_id}"
    create_option   = "Attach"
    disk_size_gb  = "30"
    lun             = 5
  }

…哪里 managed_disk_id 是一个变量(即。, $var.kafka_data_image_id )用现有磁盘的完整路径定义。例子:

kafka_data_image_id  = "/subscriptions/XXXXX-fcf3-4ec6-b598-XXXXXXXXXXXX/resourceGroups/TEST-Environment-test0001-rg/providers/Microsoft.Compute/disks/test1-kafka-data01"

我试着提供 "" 但它告诉我必须提供名字。有人指出我做错了什么吗?
谢谢!!

6fe3ivhb

6fe3ivhb1#

只需移除 name 根据你的定义,它会起作用的。

storage_data_disk {
    managed_disk_id = "${var.kafka_data_image_id}"
    create_option   = "Attach"
    disk_size_gb    = "30"
    lun             = 5
}
irtuqstp

irtuqstp2#

回答我自己的问题:
我的错误是 disk_size_gb 比原来的大( 20GB ). 结果,tf给了我(可能是代理来自azureapi的答案?),好像提供的名称不好。因此,只要 disk_size_gb 提供匹配项,现有磁盘大小,操作应成功(是,磁盘名称保持不变)。

相关问题