Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 如何使用Terraform将静态IP添加到GCE VM实例_Google Cloud Platform_Virtual Machine_Google Compute Engine_Terraform - Fatal编程技术网

Google cloud platform 如何使用Terraform将静态IP添加到GCE VM实例

Google cloud platform 如何使用Terraform将静态IP添加到GCE VM实例,google-cloud-platform,virtual-machine,google-compute-engine,terraform,Google Cloud Platform,Virtual Machine,Google Compute Engine,Terraform,我想用Terraform 0.12部署一个Google云计算引擎VM实例。我的问题是创建了2个IP地址。我有一个静态和短暂的IP地址。VM实例正在使用临时IP。 区域是正确的 这是我正在使用的代码: resource "google_compute_address" "static-ip" { name = "static-ip" address_type = "EXTERNAL" region = var.location } 在计算引擎VM实例内部,在google\u Comp

我想用Terraform 0.12部署一个Google云计算引擎VM实例。我的问题是创建了2个IP地址。我有一个静态和短暂的IP地址。VM实例正在使用临时IP。 区域是正确的

这是我正在使用的代码:

resource "google_compute_address" "static-ip" {
  name = "static-ip"
  address_type = "EXTERNAL"
  region = var.location
}
在计算引擎VM实例内部,在
google\u Compute\u instance\u模板中,
网络的配置方式如下:

  network_interface {
    network = "default-net"
    access_config {
      nat_ip = google_compute_address.static-ip.address
    }
   }
之后,我使用资源
google\u compute\u instance\u from\u template
实例化VM实例


我想知道,如何将外部IP连接到我的VM实例,并且只有一个IP地址?

您将有两个IP,一个内部IP和可选的外部IP(临时或静态),如本文所述

要使用Terraform创建具有静态IP的实例,请查看他们的示例


阅读本节了解每个变量的预期值,如本文所述,您将拥有两个IP:内部IP和可选的外部IP(临时或静态)

要使用Terraform创建具有静态IP的实例,请查看他们的示例


阅读本节了解每个变量的预期值

感谢您的回复。我自己解决了这个问题。我认为问题在于我首先创建了一个具有内部IP的VM。然后我把我的地形脚本改成了一个临时的外部IP。后来我把一切都改成了静态外部


Terraform没有删除短暂的IP。所以我手动删除了ip

谢谢您的回复。我自己解决了这个问题。我认为问题在于我首先创建了一个具有内部IP的VM。然后我把我的地形脚本改成了一个临时的外部IP。后来我把一切都改成了静态外部

Terraform没有删除短暂的IP。所以我手动删除了ip

resource "google_compute_address" "static" {
  name = "ipv4-address"
}

data "google_compute_image" "debian_image" {
  family  = "debian-9"
  project = "debian-cloud"
}

resource "google_compute_instance" "instance_with_ip" {
  name         = "vm-instance"
  machine_type = "f1-micro"
  zone         = "us-central1-a"

  boot_disk {
    initialize_params {
      image = data.google_compute_image.debian_image.self_link
    }
  }

  network_interface {
    network = "default"
    access_config {
      nat_ip = google_compute_address.static.address
    }
  }
}