如何在Openstack上使用Terraform创建具有多个NIC的VM

时间:2017-01-31 15:46:07

标签: openstack terraform

我尝试使用Terraform在Openstack Cloud上部署一些机器。

创建网络,子网,密钥,安全组和规则,浮动IP,网络端口(附带安全组)没有问题,但是,当我尝试使用两个NIC(之前创建的网络端口)创建计算实例时,我有一个语法错误,没有提示解决它。

你能帮我吗?

我的代码是:

resource "openstack_compute_instance_v2" "RNGPR-REBOND-01" {
  name            = "RNGPR-REBOND-01"
  flavor_name     = "${var.MyFlavor}"
  image_id        = "${var.MyImage}"
  key_pair        = "${var.CODOB}-keypair"
  network {
    port = "${openstack_networking_port_v2.RNGPR-REBOND-01-eth0.id}"
    access_network = true
  }
  network {
    port = "${openstack_networking_port_v2.RNGPR-REBOND-01-eth1.id}"
  }
  floating_ip = "${openstack_compute_floatingip_v2.FloatingIp-RNGPR-REBOND-01.address}"
}

resource "openstack_compute_instance_v2" "RNGPR-LB-01" {
  name            = "RNGPR-LB-01"
  flavor_name     = "${var.MyFlavor}"
  image_id        = "${var.MyImage}"
  key_pair        = "${var.CODOB}-keypair"
  network {
    port = "${openstack_networking_port_v2.RNGPR-LB-01-eth0.id}"
  }
  network {
    port = "${openstack_networking_port_v2.RNGPR-LB-01-eth1.id}"
  }
  floating_ip = "${openstack_compute_floatingip_v2.FloatingIp-RNGPR-LB-01.address}"
}

语法错误是:

Error applying plan:
2 error(s) occurred:
* openstack_compute_instance_v2.RNGPR-REBOND-01: Error creating OpenStack server: Invalid request due to incorrect syntax or missing required parameters.
* openstack_compute_instance_v2.RNGPR-LB-01: Error creating OpenStack server: Invalid request due to incorrect syntax or missing required parameters.

1 个答案:

答案 0 :(得分:0)

根据我的经验,这些错误消息不是很有帮助。

无论您在何处运行terraform,我都会首先设置 TF_LOG = DEBUG OS_DEBUG = 1 。这将打印实际上有益的错误消息。

有一次我尝试使用密钥对创建一个服务器,我的用户无法在openstack中访问该服务器。我收到了同样的错误,并且在设置调试之前没有弄明白。