I'm using terraform with google vm provider. I want to assign existing Static IP to a VM.
Code:
resource "google_compute_instance" "test2" {
name = "dns-proxy-nfs"
machine_type = "n1-standard-1"
zone = "${var.region}"
disk {
image = "centos-7-v20170719"
}
metadata {
ssh-keys = "myuser:${file("~/.ssh/id_rsa.pub")}"
}
network_interface {
network = "default"
access_config {
address = "130.251.4.123"
}
}
}
But its failing with the error:
google_compute_instance.test2: network_interface.0.access_config.0: invalid or unknown key: address
How can I fix this?
You could also allow terraform to create the static IP address for you and then assign it to the instance by object name.
resource "google_compute_address" "test-static-ip-address" {
name = "my-test-static-ip-address"
}
resource "google_compute_instance" "test2" {
name = "dns-proxy-nfs"
machine_type = "n1-standard-1"
zone = "${var.region}"
disk {
image = "centos-7-v20170719"
}
metadata {
ssh-keys = "myuser:${file("~/.ssh/id_rsa.pub")}"
}
network_interface {
network = "default"
access_config {
nat_ip = "${google_compute_address.test-static-ip-address.address}"
}
}
}
It worked by changing address
to nat_ip
in access_config
.
resource "google_compute_instance" "test2" {
name = "dns-proxy-nfs"
machine_type = "n1-standard-1"
zone = "${var.region}"
disk {
image = "centos-7-v20170719"
}
metadata {
ssh-keys = "myuser:${file("~/.ssh/id_rsa.pub")}"
}
network_interface {
network = "default"
access_config {
nat_ip = "130.251.4.123" // this adds regional static ip to VM
}
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With