【问题标题】:Error invalid instance URLs: resource "google_compute_instance_group" "t-compute-instance-group"错误无效的实例 URL:资源“google_compute_instance_group”“t-compute-instance-group”
【发布时间】:2021-03-26 12:23:06
【问题描述】:

目标:创建一个计算实例并使用 terraform 将其添加到 GCP 中的非托管实例组中。

问题:计算实例和非托管实例组已成功创建,但实例未添加到组中并给出: 错误的无效实例 URL: 资源“google_compute_instance_group”“t-compute-instance-group”

可以在运行 terraform 配置后手动将实例添加到组中。

服务帐号密钥已分配项目编辑器权限。

代码:https://github.com/sagar-aj7/terraform_unmanaged_inst_group

【问题讨论】:

  • 你试过用自链接代替吗?

标签: google-cloud-platform terraform terraform-provider-gcp


【解决方案1】:

我遇到了同样的问题,对我有用的是使用selflink 而不是id

resource "google_compute_instance_group" "backend-instances" {
  name         = "..."
  zone         = "${var.availability_zone}"

  instances = ["${google_compute_instance.node.*.self_link}"]

  named_port {
    name = "http"
    port = "8080"
  }

  named_port {
    name = "https"
    port = "8443"
  }

  ..
}

我使用的是谷歌提供者版本2.8.0。我想是时候升级了:)

【讨论】:

  • 不敢相信这还没有被投票。它解决了我的问题。我的情况有点不同:我对 VM 列表使用 splat 表达式:instances = google_compute_instance.vm[*].id。它适用于terraform apply第一次运行。但是当我想向 IG 添加更多虚拟机并重新运行 terraform apply 时,它失败并出现上述错误。切换到.self_link 解决了这个问题。
  • 感谢您的报告,很高兴它成功了 :)
【解决方案2】:

我今天也遇到了同样的问题。解决方案是将 google terraform 提供程序更新到较新的版本(3.52.0)。这解决了问题并使用分配的实例创建了实例组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 2021-08-07
    • 1970-01-01
    • 2020-02-26
    • 2017-08-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多