我目前正在尝试解决客户的vcenter存储配置存在的问题。我们使用terraform模块创建虚拟机,并首先从vSphere模板中将“ eagerly_scrub”和“ thin_provisioned”中的值作为数据源,这是最佳做法。 当前,我们遇到的问题是,客户拥有一个新的数据存储群集,其中的vmotion / DRS设置不透明/不一致。因此,自动vmotion迁移会导致磁盘从“厚置备,急切置零”跳到“薄置备”,而我无法让terraform忽略该更改。 要使其完全正常工作,我们必须将新的期望值硬编码到模块中,例如:
disk {
label = "disk0"
size = data.vsphere_virtual_machine.small.disks.0.size
eagerly_scrub = true
thin_provisioned = false
}
这些计算机是按计划创建的,但即使磁盘设置已设置为ignore_changes生命周期,
lifecycle {
ignore_changes = [disk]
}
新迁移和精简配置的VM将使用eagerly_scrub and thin_provisioned cannot both be set to true
破坏下一个Terraform计划
我完全了解,但是我认为我需要terraform才能完全忽略磁盘基础配置设置中的所有更改。这有可能吗?
我们正在运行Terraform v0.12.13 and provider.vsphere v1.13.0
从字面上看,任何建议都将受到欢迎
答案 0 :(得分:0)
查看terraform vsphere提供程序代码后,我认为我可以解决我自己的问题了。 https://github.com/terraform-providers/terraform-provider-vsphere/blob/1c7a063bc8fc32f53ad2d237831bac73c2ee7692/vsphere/internal/virtualdevice/virtual_machine_disk_subresource.go#L1329
看起来不可能