簡體   English   中英

無法從Terraform啟動Openstack實例

[英]Not able to launch the Openstack instance from Terraform

我正在嘗試使用Terraform創建一個OpenStack實例,但是我收到以下錯誤:

Error applying plan:

1 error(s) occurred:

* openstack_compute_instance_v2.basic: Error creating OpenStack server: Invalid
request due to incorrect syntax or missing required parameters.

Terraform does not automatically rollback in the face of errors.
Instead, your Terraform state file has been partially updated with

但是相同的Terraform代碼在我的OpenStack帳戶中成功創建了安全組,密鑰對和卷

這是我的Terraform代碼:

provider "openstack" {
  user_name = "admin"
  tenant_name = "admin"
  password  = "admin"
  auth_url  = "http://my_IP():5000/v2.0"
}
resource "openstack_blockstorage_volume_v1" "myvol" {
  name = "myvol"
  size = 1
}
resource "openstack_compute_instance_v2" "basic" {
  name = "basic"
  image_id = "8ce1c922-ad0-81a3-823ea1b0af9b"
  flavor_id = "2"
  key_pair = "tf-keypair-1"
  security_groups = ["default"]

  metadata {
    this = "that"
  }

  network {
    name = "8b510300-610a--9cc3-6e76e33395b4"
  }
  volume {
    volume_id = "${openstack_blockstorage_volume_v1.myvol.id}"
  }
}

直到最近,這條消息很難調試。 Terraform的0.8.8版本中 (更具體地說是OpenStack Terraform提供程序啟用HTTP日志記錄改進) ,該團隊添加了OS_DEBUG環境變量,以幫助在這些情況下提供更多信息。 使用它的一種方法如下:

TF_LOG=DEBUG OS_DEBUG=1 terraform apply ...

一旦我收到此消息,因為我忘記在OpenStack中為我正在使用的用戶添加ssh密鑰。

您必須仔細檢查所有參數是否存在拼寫錯誤和/或錯誤值。 TF不會為你做那件事。

當您指定例如不存在的密鑰對或網絡名稱時(例如,您的示例,您為網絡指定了ID而不是名稱),就會發生這種情況。

從您的配置:

network { name = "8b510300-610a--9cc3-6e76e33395b4" }

您正在分配name但提供網絡id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM