【发布时间】:2017-06-24 20:48:15
【问题描述】:
在这一点上,我绝不是一个知识渊博的 VMWare 用户。我认为这可能只是我不了解一些基本概念的情况。
我正在尝试将 VM 部署到 VCenter 中,我有一个 OVA(模板?)我想使用它进行部署。
目前我已经解压了 OVA,将我在其中找到的 VMDK 上传到了数据存储区,然后使用了这个 terraform 定义:
provider "vsphere" {
user = "${var.vsphere_user}"
password = "${var.vsphere_password}"
vsphere_server = "${var.vsphere_server}"
allow_unverified_ssl = true
}
resource "vsphere_virtual_machine" "primary" {
name = "myvm"
vcpu = 2
memory = 16384
datacenter = "${var.vsphere_datacenter}"
resource_pool = "/DATA_CENTER/host/10.132.260.000"
network_interface = {
label = "Private Network - vmnic0 vmnic2"
ipv4_address = "10.132.260.001"
ipv4_gateway = "10.132.260.002"
ipv4_prefix_length = 26
}
disk {
datastore = "datastore1"
vmdk = "/path/to/vmdk/"
bootable = true
type = "thin"
}
}
卡住了,因为它无法打开 VMDK。
当我使用 ovftool 部署 OVA 时,部署 vm 的 vmdk 非常不同。
打开 VM myvm 电源时从 ESX 主机收到错误。 无法启动虚拟机。 Module DiskEarly 上电失败。 无法打开磁盘 '/vmfs/volumes/557fc17b-c078f45c-f5bf-002590faf644/template_folder/my_vm.vmdk' 或它所依赖的快照磁盘之一。指定的文件不是 一个虚拟磁盘
我是否应该将 OVA 文件上传到数据存储区并将我的磁盘块更改为如下所示:
disk {
datastore = "datastore1"
template = "/path/to/ova/"
type = "thin"
}
还是我在这里运气不好?此外,vsphere 的 terraform 提供程序无法正确接收来自 VCenter 的错误,即使 vm 失败,也会继续轮询。
【问题讨论】:
-
如果有人知道这个资源的代码在哪里;我也想知道并可能回馈。
-
你解决了这个问题吗?
-
@Rekovni 我还没有机会尝试。我一直在尝试关注与此相关的开发问题。不过,我真的不知道我将如何构建它。
-
嗯,目前有一张支持 OVA 上传的票 (github.com/terraform-providers/terraform-provider-vsphere/…),但没有提及使用模板到 OVA 的任何内容。
-
我只是想用 vmdk 文件做一些类似的事情,但有问题,但 OVA 会容易得多!