通过 Terraform 配置没有外部 IP 的 GCP VM 实例
Provision a GCP VM instance with no external IP via Terraform
正在尝试通过 Terraform 在 GCP 中创建虚拟机,外部 IP 为 None。
network_interface {
network = "projects/other-project-name/global/networks/network-name"
subnetwork = "projects/other-project-name/regions/us-central1/subnetworks/subnet-name"
access_config {
nat_ip = "None"
}
}
但是 nat_ip = "None"
是该字段的无效值。如果我这样做 nat_ip = ""
,它会自动分配外部 IP。
这是他们的文档:https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance#nat_ip
要通过 terraform 在没有 外部 IP 的情况下在 GCP 中创建虚拟机,您可以省略 network_interface
块中的 access_config
部分,如文档所述 here。所以你只需要:
network_interface {
network = "projects/other-project-name/global/networks/network-name"
subnetwork = "projects/other-project-name/regions/us-central1/subnetworks/subnet-name"
}
我确认上述行为,如 LundinCast 所述。就我而言,我没有看到为我使用 Terraform 创建的 VM 配置的外部 IP。我在 network_interface 部分下添加了空白 access_log 块,并配置了外部 ip。
network_interface {
network = "default"
access_config {
}
}
google 提供商的最新更新发生了一些变化,我无法解决这个问题,直到我将网络层级降级为标准,与网络层级 PREMIUM(默认)的任何其他组合或块的遗漏导致具有临时 IP 的 VM
access_config {
nat_ip = ""
network_tier = "STANDARD"
}
正在尝试通过 Terraform 在 GCP 中创建虚拟机,外部 IP 为 None。
network_interface {
network = "projects/other-project-name/global/networks/network-name"
subnetwork = "projects/other-project-name/regions/us-central1/subnetworks/subnet-name"
access_config {
nat_ip = "None"
}
}
但是 nat_ip = "None"
是该字段的无效值。如果我这样做 nat_ip = ""
,它会自动分配外部 IP。
这是他们的文档:https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance#nat_ip
要通过 terraform 在没有 外部 IP 的情况下在 GCP 中创建虚拟机,您可以省略 network_interface
块中的 access_config
部分,如文档所述 here。所以你只需要:
network_interface {
network = "projects/other-project-name/global/networks/network-name"
subnetwork = "projects/other-project-name/regions/us-central1/subnetworks/subnet-name"
}
我确认上述行为,如 LundinCast 所述。就我而言,我没有看到为我使用 Terraform 创建的 VM 配置的外部 IP。我在 network_interface 部分下添加了空白 access_log 块,并配置了外部 ip。
network_interface {
network = "default"
access_config {
}
}
google 提供商的最新更新发生了一些变化,我无法解决这个问题,直到我将网络层级降级为标准,与网络层级 PREMIUM(默认)的任何其他组合或块的遗漏导致具有临时 IP 的 VM
access_config {
nat_ip = ""
network_tier = "STANDARD"
}