Den*_*boy 7 ubuntu virtualbox terraform
我正在使用此插件进行 terraform:https : //github.com/terra-farm/terraform-provider-virtualbox
我只是尝试在 virtualbox 中安装一个 ubuntu 18.04 盒子。
这是我的 main.tf
resource "virtualbox_vm" "node" {
count = 2
name = "${format("node-%02d", count.index+1)}"
url = "https://vagrantcloud.com/ubuntu/boxes/bionic64/versions/20180802.0.0/providers/virtualbox.box"
image = "./virtualbox-ubuntu.box"
cpus = 2
memory = "512 mib",
network_adapter {
type = "bridged",
host_interface = "en0",
}
}
output "IPAddr" {
value = "${element(virtualbox_vm.node.*.network_adapter.0.ipv4_address, 1)}"
}
output "IPAddr_2" {
value = "${element(virtualbox_vm.node.*.network_adapter.0.ipv4_address, 2)}"
}
Run Code Online (Sandbox Code Playgroud)
当我执行terraform apply它失败:
2018-08-07T22:17:41.256+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-vbm.go:75: executing: VBoxManage showvminfo node-02 --machinereadable
2018-08-07T22:17:41.346+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-vbm.go:75: executing: VBoxManage showvminfo node-01 --machinereadable
2018-08-07T22:17:41.352+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-vbm.go:45: executing: VBoxManage clonehd /Users/name/.terraform/virtualbox/gold/virtualbox-ubuntu/ubuntu-xenial-16.04-cloudimg-configdrive.vmdk /Users/name/.terraform/virtualbox/machine/node-02/ubuntu-xenial-16.04-cloudimg-configdrive.vmdk
2018-08-07T22:17:41.412+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-resource_vm.go:247: [ERROR] Clone *.vdi and *.vmdk to VM folder: exit status 1
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteState
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalApplyProvisioners
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalIf
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteState
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteDiff
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalApplyPost
2018/08/07 22:17:41 [ERROR] root: eval: *terraform.EvalApplyPost, err: 1 error(s) occurred:
* virtualbox_vm.node.1: exit status 1
2018/08/07 22:17:41 [ERROR] root: eval: *terraform.EvalSequence, err: 1 error(s) occurred:
* virtualbox_vm.node.1: exit status 1
2018/08/07 22:17:41 [TRACE] [walkApply] Exiting eval tree: virtualbox_vm.node[1]
2018-08-07T22:17:41.454+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-vbm.go:45: executing: VBoxManage clonehd /Users/name/.terraform/virtualbox/gold/virtualbox-ubuntu/ubuntu-xenial-16.04-cloudimg-configdrive.vmdk /Users/name/.terraform/virtualbox/machine/node-01/ubuntu-xenial-16.04-cloudimg-configdrive.vmdk
2018-08-07T22:17:41.516+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-resource_vm.go:247: [ERROR] Clone *.vdi and *.vmdk to VM folder: exit status 1
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteState
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalApplyProvisioners
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalIf
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteState
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalWriteDiff
2018/08/07 22:17:41 [TRACE] root: eval: *terraform.EvalApplyPost
2018/08/07 22:17:41 [ERROR] root: eval: *terraform.EvalApplyPost, err: 1 error(s) occurred:
* virtualbox_vm.node.0: exit status 1
2018/08/07 22:17:41 [ERROR] root: eval: *terraform.EvalSequence, err: 1 error(s) occurred:
* virtualbox_vm.node.0: exit status 1
2018/08/07 22:17:41 [TRACE] [walkApply] Exiting eval tree: virtualbox_vm.node[0]
2018/08/07 22:17:41 [TRACE] dag/walk: upstream errored, not walking "output.IPAddr_2"
2018/08/07 22:17:41 [TRACE] dag/walk: upstream errored, not walking "provider.virtualbox (close)"
2018/08/07 22:17:41 [TRACE] dag/walk: upstream errored, not walking "output.IPAddr"
2018/08/07 22:17:41 [TRACE] dag/walk: upstream errored, not walking "meta.count-boundary (count boundary fixup)"
2018/08/07 22:17:41 [TRACE] dag/walk: upstream errored, not walking "root"
2018/08/07 22:17:41 [TRACE] Preserving existing state lineage "782abaa9-e567-10d4-1902-6d1223713e6a"
2018/08/07 22:17:41 [TRACE] Preserving existing state lineage "782abaa9-e567-10d4-1902-6d1223713e6a"
2018/08/07 22:17:41 [TRACE] Preserving existing state lineage "782abaa9-e567-10d4-1902-6d1223713e6a"
2018/08/07 22:17:41 [TRACE] Preserving existing state lineage "782abaa9-e567-10d4-1902-6d1223713e6a"
2018/08/07 22:17:41 [DEBUG] plugin: waiting for all plugin processes to complete...
Error: Error applying plan:
2 error(s) occurred:
* virtualbox_vm.node[1]: 1 error(s) occurred:
* virtualbox_vm.node.1: exit status 1
* virtualbox_vm.node[0]: 1 error(s) occurred:
* virtualbox_vm.node.0: exit status 1
Terraform does not automatically rollback in the face of errors.
2018-08-07T22:17:41.522+0200 [DEBUG] plugin.terraform-provider-virtualbox: pid-3041-rpc_server.go:48: [ERR] plugin: plugin server: accept unix /var/folders/y4/v8w900l115lbtzylp143pxfr0000gn/T/plugin055999022: use of closed network connection
Instead, your Terraform state file has been partially updated with
any resources that successfully completed. Please address the error
above and apply again to incrementally change your infrastructure.
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?带有较旧图像的示例似乎有效?
这是因为盒子里有两个硬盘,而不是一个。https://vagrantcloud.com/geerlingguy/boxes/ubuntu1804/versions/1.0.4/providers/virtualbox.box框似乎工作得更好。
我尝试使用这个官方的 xenial64 盒子,它的效果非常好。
https://app.vagrantup.com/ubuntu/boxes/xenial64/versions/20190507.0.0/providers/virtualbox.box
尝试一下这些图像。
| 归档时间: |
|
| 查看次数: |
1191 次 |
| 最近记录: |