【问题标题】:confd configuration with HashiCorp Vault KV v2使用 HashiCorp Vault KV v2 进行 confd 配置
【发布时间】:2019-05-29 12:43:19
【问题描述】:

我正在使用 sudo vault server -dev 创建一个 Vault Dev Server,并将一个简单的 KV v2 密码放入:

vault kv put secret/database url=db.example.com

我希望confd 在 Vault 中的 KV 存储中更改值时选择该值。但我得到了错误:

FATAL template: env.tmpl:2:9: executing "env.tmpl" at <getv "database/url">: error calling getv: key does not exist: database/url

当我跑步时:

sudo confd --onetime --log-level debug --backend vault --auth-type token --auth-token s.ossadqwsssssssafadsd --node http://127.0.0.1:8200 -prefix='/secret'

我的/etc/confd/templates/env.tmpl 是:

[myconfig]
url = {{ getv "database/url" }}

/etc/confd/conf.d/myconfig.toml

[template]
src = "env.tmpl"
dest = "env.conf"
keys = [
   "secret/database"
]

任何帮助将不胜感激。

【问题讨论】:

    标签: configuration hashicorp-vault toml confd


    【解决方案1】:

    KV v2 在/data prefix 中有数据。您需要在配置模板中将路径更改为getv "data/database/url",或在标志中将前缀更改为/secret/data

    【讨论】:

    • 我在运行时仍然遇到同样的错误:sudo confd -onetime -backend vault -node http://127.0.0.1:8200 -auth-type token -auth-token s.aaaaaasasaasasas -prefix /secret/data 与上面定义的相同 confid。还尝试更改路径。您有任何使用 KV v2 的工作示例吗?
    • 我并没有真正使用 confd - 我使用 consul-template。 confd 可能与 v2 API 不兼容。这就是为什么它是 v2 而不是 v1
    猜你喜欢
    • 2019-11-23
    • 2022-11-20
    • 2019-06-16
    • 1970-01-01
    • 2022-10-05
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 2023-01-31
    相关资源
    最近更新 更多