使用vsphere_vmfs_datastore为每个卷创建一个DS

时间:2019-06-11 09:07:18

标签: terraform

在此v0.11 example from the official documentation之后,我不得不对其进行较小的更改以使其能够与v0.12(provider.vsphere为v1.11.0)一起使用。

2017

但是,这将创建一个包含所有发现的卷的单个数据存储。我想要的是每个发现的卷都有一个新的数据存储。

我尝试在上述资源中使用gen dummy=1 if (ModelJaarrekening ==2 & year<2017 & ModelJaarrekening ==1 & year==2017) ;有两个试图创建2个数据存储区(好)的卷,但是每个仍然包括这两个卷(坏区)。

resource "vsphere_vmfs_datastore" "datastore" { name = "test" host_system_id = "${data.vsphere_host.esxi_host.id}" disks = data.vsphere_vmfs_disks.available.disks } 应该计算count = 2返回的卷数(这样我就不必设置它),遍历列表并在每个列表上创建一个数据存储,这让我认为资源部分应该位于循环内部,并且每个数据存储区都将分配一个唯一的vsphere_vmfs_datastore并使用vsphere_vmfs_disks,但我不知道如何在name中这样做(相对而言,示例很少,还有一些错误)。

1 个答案:

答案 0 :(得分:0)

以下工作适合您吗?它仍然使用count方法,但传入count索引以选择data.vsphere_vmfs_disks.available.disks数据源内部的磁盘。

resource "vsphere_vmfs_datastore" "datastore" {
  count = 2
  name           = "test${count.index}"
  host_system_id = data.vsphere_host.esxi_host.id
  disks = [
    data.vsphere_vmfs_disks.available.disks[count.index]
  ]
}

不幸的是,我没有可以测试的ESXi主机,但是逻辑仍然适用。