【问题标题】:Extract data from terraform output to use in Secrets Manager从 terraform 输出中提取数据以在 Secrets Manager 中使用
【发布时间】:2022-01-18 10:27:27
【问题描述】:

我有一个构建 MSK 集群的 terraform 脚本,我已经输出了 zookeeper 和代理信息,我想将此数据添加到 AWS 密钥的管理器密钥中。

问题是它们是逗号分隔的。

这是管道中的输出

 ~ zookeeper_connect_string = "z-1.example-loadtesting.qukw3u.c2.kafka.eu-west-1.amazonaws.com:2181,z-2.example-loadtesting.qukw3u.c2.kafka.eu-west-1.amazonaws.com:2181,z-3.example-loadtesting.qukw3u.c2.kafka.eu-west-1.amazonaws.com:2181

这是秘密管理员的土地。

resource "aws_secretsmanager_secret_version" "connection" {
  secret_id = aws_secretsmanager_secret.kafka.id
  secret_string = jsonencode({
  "bootstrap_brokers_tls_1": aws_msk_cluster.example.bootstrap_brokers_tls,
  "bootstrap_brokers_tls_2": aws_msk_cluster.example.bootstrap_brokers_tls,
  "zookeeper_connect_string_1": aws_msk_cluster.example.zookeeper_connect_string,
  "zookeeper_connect_string_2":aws_msk_cluster.example.zookeeper_connect_string,
  })
}

有没有办法使用 terraform 索引或其他方法来使用这些数据?

谢谢

输出

output "zookeeper_connect_string_0" {
  value = element(split(",", aws_msk_cluster.example.zookeeper_connect_string),0)
}
 output "zookeeper_connect_string1_1" {
   value = element(split(",", aws_msk_cluster.example.zookeeper_connect_string),1)
 }

【问题讨论】:

  • 您如何准确地创建输出数据以及以后使用什么?
  • 我现在已经走到这一步了,这就是我的输出方式。不知道我怎么会得到这个秘密。上面添加了

标签: amazon-web-services terraform aws-msk


【解决方案1】:

您可以使用索引来引用每个项目。这里split 函数会将字符串拆分为list(string)[0] 将获得第一个索引值。

split(",", aws_msk_cluster.example.bootstrap_brokers_tls)[0]

或者执行类似的操作,其中保存到机密管理器的 JSON 字符串包含每个键下的值列表。

resource "aws_secretsmanager_secret_version" "connection" {
  secret_id = aws_secretsmanager_secret.kafka.id

  secret_string = jsonencode({
    bootstrap_brokers_tls = split(",", aws_msk_cluster.example.bootstrap_brokers_tls)

    zookeeper_connect_string = split(",", aws_msk_cluster.example.zookeeper_connect_string)
  })
}

【讨论】:

    猜你喜欢
    • 2023-03-18
    • 2021-04-21
    • 1970-01-01
    • 2021-09-18
    • 2019-06-11
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多