如何使用terraform在GCP中启用Block项目范围的SSH密钥



我正在尝试创建一个启用SSH_KEYS的GCP VM,即必须使用terraform选择块项目范围的ssh密钥,但无法创建VM。出现语法错误。我正在使用最新的Terraform版本15。

resource "google_compute_project_metadata" "ssh_keys" {
#sample ssh key
metadata = {
"ssh-keys" = "user1:ssh-rsa 2g131231hxxxxxbhbh3b21hbasdsad3 abc@2213213"
}
}
resource "google_compute_instance" "sshEnable" {
name         = "sshEnable"
machine_type = "e2-xxxx"
zone         = "xxxx"
desired_status = "RUNNING"
tags = ["tag1", "value1"]
boot_disk {
initialize_params {
image = "debian-cloud/debian-xx"
}
}
network_interface {
network = "default"
access_config {
// Ephemeral IP
}
}
shielded_instance_config {
enable_secure_boot = true
enable_integrity_monitoring = true
enable_vtpm = true
}
##Getting error below
metadata {
block-project-ssh-keys = true
} 
}

我在一个main中编写了这段代码。tf文件。有什么建议吗?

元数据;参数应该声明为键/值对的映射(而不是块)。

我已经成功地运行了你的确切代码与这个变化(+实例名,应该是小写的):

metadata = {
block-project-ssh-keys = true
}

已在Terraform v1.0.0和hashicorp/google v3.76.0上进行了测试

参考文档:https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance

最新更新