【问题标题】:How to Enable Block project-wide SSH keys in GCP using terraform如何使用 terraform 在 GCP 中启用阻止项目范围的 SSH 密钥
【发布时间】:2021-07-26 11:17:28
【问题描述】:

我正在尝试创建启用了 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 文件中。有什么建议吗?

【问题讨论】:

  • 能否请您编辑带有错误消息的原始帖子?

标签: google-cloud-platform terraform-provider-gcp


【解决方案1】:

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

我已成功通过此更改(+ 应为小写的实例名称)成功运行您的确切代码:

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

已使用 Terraform v1.0.0 和 hashcorp/google v3.76.0 进行了测试

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    相关资源
    最近更新 更多