【问题标题】:Terraform GCP VPC peeringTerraform GCP VPC 对等互连
【发布时间】:2019-07-14 07:30:04
【问题描述】:

我正在尝试使用 GCP 在我的项目网络和另一个项目之间配置一个 VPC 对等互连,但是我不能,因为我没有权限在另一个项目上列出网络。

resource "google_compute_network" "my-network" {
  name                    = "foobar"
  auto_create_subnetworks = "false"
}

resource "google_compute_network_peering" "my-network" {
  name         = "peering1"
  network      = "${google_compute_network.my-network.self_link}"
  peer_network = "${data.google_compute_network.another-network.self_link}"
}

data "google_compute_network" "another-network" {
  name    = "another"
  project = "another-project"
}

错误:

Error 403: Required 'compute.networks.get' permission for 'projects/another-project/global/networks/another', forbidden

由于 terraform 无法访问another-project,我想知道是否有任何其他方法可以使用 terraform 进行此操作。

提前感谢您! :)

【问题讨论】:

    标签: vpc terraform-provider-gcp


    【解决方案1】:

    如果您知道对等网络的名称,只需添加位置:

    peer_network = "projects/PEER_PROJECT/global/networks/PEER_NETWORK"

    【讨论】:

    • 这也是对相关问题的一个非常有用的答案,“我如何与另一个项目中不受此 Terraform 配置管理的网络对等?”
    • 我有这个问题,也试过 --> peer_network = "projects/PEER_PROJECT/global/networks/PEER_NETWORK"。但我仍然收到权限错误。是否有文档如何使用 terraform 和 GCP 定义远程项目?
    【解决方案2】:

    你必须像这样使用自链接:
    peer_network = "https://www.googleapis.com/compute/v1/projects/Peer_Project_ID/global/networks/Peer_network_name"
    将 Peer_Project_ID 和 Peer_network_name 更改为正确的值

    【讨论】:

      猜你喜欢
      • 2017-06-08
      • 1970-01-01
      • 2021-02-08
      • 1970-01-01
      • 1970-01-01
      • 2021-04-07
      • 2020-06-13
      • 1970-01-01
      • 2021-12-20
      相关资源
      最近更新 更多