Terraform:如何在创建VM时使用目录名
我正在尝试使用terraform VCD provider在VmWare Vcloud数据中心中创建虚拟机。下面是完整的代码 我所做的Terraform:如何在创建VM时使用目录名,terraform,Terraform,我正在尝试使用terraform VCD provider在VmWare Vcloud数据中心中创建虚拟机。下面是完整的代码 我所做的 provider "vcd" { user = "abc" password = "xyz" org = "I1250-Se" vdc = "I1250-Se" url = "https
provider "vcd" {
user = "abc"
password = "xyz"
org = "I1250-Se"
vdc = "I1250-Se"
url = "https://nlu02.abc.com/api"
max_retry_timeout = "30"
allow_unverified_ssl = "true"
}
resource "vcd_vapp" "web" {
name = "web"
power_on = "true"
}
data "vcd_vapp" "web" {
name = "web"
org = "I1250-Se"
}
data "vcd_catalog_item" "my-cat-item" {
org = "I1250-Se"
name = data.vcd_catalog.my-cat.name
catalog = data.vcd_catalog.my-cat.name
}
data "vcd_catalog" "my-cat" {
org = ""
name = "ID120_ISO"
}
resource "vcd_vapp_vm" "web1" {
vapp_name = data.vcd_vapp.web.name
name = var.vmname
catalog_name = "ID120_ISO"
template_name = ""
memory = 2048
cpus = 2
cpu_cores = 1
}
错误是什么
provider "vcd" {
user = "abc"
password = "xyz"
org = "I1250-Se"
vdc = "I1250-Se"
url = "https://nlu02.abc.com/api"
max_retry_timeout = "30"
allow_unverified_ssl = "true"
}
resource "vcd_vapp" "web" {
name = "web"
power_on = "true"
}
data "vcd_vapp" "web" {
name = "web"
org = "I1250-Se"
}
data "vcd_catalog_item" "my-cat-item" {
org = "I1250-Se"
name = data.vcd_catalog.my-cat.name
catalog = data.vcd_catalog.my-cat.name
}
data "vcd_catalog" "my-cat" {
org = ""
name = "ID120_ISO"
}
resource "vcd_vapp_vm" "web1" {
vapp_name = data.vcd_vapp.web.name
name = var.vmname
catalog_name = "ID120_ISO"
template_name = ""
memory = 2048
cpus = 2
cpu_cores = 1
}
vcd_vapp_vm.web1:正在创建
错误:查找目录时出错:[ENF]未找到实体
在main.tf第33行的资源“vcd_vapp_vm”web1中:33:resource
“vcd_vapp_vm”“web1”{
环境
provider "vcd" {
user = "abc"
password = "xyz"
org = "I1250-Se"
vdc = "I1250-Se"
url = "https://nlu02.abc.com/api"
max_retry_timeout = "30"
allow_unverified_ssl = "true"
}
resource "vcd_vapp" "web" {
name = "web"
power_on = "true"
}
data "vcd_vapp" "web" {
name = "web"
org = "I1250-Se"
}
data "vcd_catalog_item" "my-cat-item" {
org = "I1250-Se"
name = data.vcd_catalog.my-cat.name
catalog = data.vcd_catalog.my-cat.name
}
data "vcd_catalog" "my-cat" {
org = ""
name = "ID120_ISO"
}
resource "vcd_vapp_vm" "web1" {
vapp_name = data.vcd_vapp.web.name
name = var.vmname
catalog_name = "ID120_ISO"
template_name = ""
memory = 2048
cpus = 2
cpu_cores = 1
}
地形v0.12.18
操作系统:
Linux jenvm 4.4.0-142-generic#168 Ubuntu SMP周三1月16日21:00:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
预期的内容
provider "vcd" {
user = "abc"
password = "xyz"
org = "I1250-Se"
vdc = "I1250-Se"
url = "https://nlu02.abc.com/api"
max_retry_timeout = "30"
allow_unverified_ssl = "true"
}
resource "vcd_vapp" "web" {
name = "web"
power_on = "true"
}
data "vcd_vapp" "web" {
name = "web"
org = "I1250-Se"
}
data "vcd_catalog_item" "my-cat-item" {
org = "I1250-Se"
name = data.vcd_catalog.my-cat.name
catalog = data.vcd_catalog.my-cat.name
}
data "vcd_catalog" "my-cat" {
org = ""
name = "ID120_ISO"
}
resource "vcd_vapp_vm" "web1" {
vapp_name = data.vcd_vapp.web.name
name = var.vmname
catalog_name = "ID120_ISO"
template_name = ""
memory = 2048
cpus = 2
cpu_cores = 1
}
脚本应该接受目录名(已经存在)并创建VM。另一点需要注意的是,我所指的目录名不包含nay VApp模板,因此不确定它将如何运行。
我所期望的是,它应该接受目录名并使用介质(ISO映像)通过terraform在新创建的VM上安装操作系统
请建议。目前正在审查在没有Vapp模板的情况下创建虚拟机的功能。目录名称应包含Vapp模板,ISO图像不能视为目录名称
因此,为了解决此问题,请将有效的OVA文件上载为VApp模板,并在代码中使用。谢谢请提出建议。这对我们来说至关重要,也是一个拦截器