Terraform 设置多个vm时无法输出mac地址';s

Terraform 设置多个vm时无法输出mac地址';s,terraform,Terraform,因此,我尝试部署多个vm,但当我尝试输出mac adrress时,它失败了 output.mac:找不到变量“vsphere\u virtual\u machine.vm.network\u interface.0.mac\u address”的资源“vsphere\u virtual\u machine.vm” 有人能告诉我为什么它失败了,或者我的代码出了什么问题吗 resource "vsphere_virtual_machine" "vm" { count="2"

因此,我尝试部署多个vm,但当我尝试输出mac adrress时,它失败了

output.mac:找不到变量“vsphere\u virtual\u machine.vm.network\u interface.0.mac\u address”的资源“vsphere\u virtual\u machine.vm”

有人能告诉我为什么它失败了,或者我的代码出了什么问题吗

   resource "vsphere_virtual_machine" "vm" {
      count="2"
      name             = "name-${count.index+1}"
      resource_pool_id = "${data.vsphere_resource_pool.pool.id}"
      datastore_id     = "${data.vsphere_datastore.datastore.id}"
      num_cpus = 2
      memory   = 1024
      guest_id = "${data.vsphere_virtual_machine.template.guest_id}"
      scsi_type = "${data.vsphere_virtual_machine.template.scsi_type}"

      network_interface {
        network_id   = "${data.vsphere_network.network.id}"
        adapter_type = "${data.vsphere_virtual_machine.template.network_interface_types[0]}"
      }

      disk {
        label            = "disk0"
        size             = "${data.vsphere_virtual_machine.template.disks.0.size}"
        eagerly_scrub    = "${data.vsphere_virtual_machine.template.disks.0.eagerly_scrub}"
        thin_provisioned = "${data.vsphere_virtual_machine.template.disks.0.thin_provisioned}"
      }

      clone {
        template_uuid = "${data.vsphere_virtual_machine.template.id}"

        customize {
          linux_options {
            host_name = "terraform-test1"
            domain    = "test.internal"
          }

          network_interface {
        ipv4_address = "10.0.0.${count.index+2}"
        ipv4_netmask = 24
      }

      ipv4_gateway = "10.0.0.1"
    }
  }
}

output "mac"{
value ="${vsphere_virtual_machine.vm.network_interface.0.mac_address}"
}

资源“vsphere\u virtual\u machine”没有属性引用“network\u interface”,因此无法输出网络接口详细信息。请检查资源文档链接


如果有人感兴趣,这对我很有用:)

在较旧的地形(0.11.8)上,我必须使用:

output "mac"{
value ="${vsphere_virtual_machine.vm.network_interface.0.mac_address}"
}
output "mac"{
value ="${vsphere_virtual_machine.vm.network_interface[0].mac_address}"
}
output "mac"{
value ="${vsphere_virtual_machine.vm.network_interface.0.mac_address}"
}