【问题标题】:use kubernetes secret in another one在另一个中使用 Kubernetes 秘密
【发布时间】:2020-07-27 09:33:56
【问题描述】:

如何在另一个秘密Y 中使用秘密X 密钥my-key 作为some-other-key?这两个秘密也有其他密钥。

理性: mysql 实例生成一个密钥,其中包含密钥为mysql-passwordmysql-root-password 的用户的密码。 自定义资源 DbInstance 需要密钥名称,其中包含密钥 userpassword。 (我用https://github.com/kloeckner-i/db-operator) 我怎样才能将价值从一个到另一个?

当然,我可以手动完成,方法是从kubectl get secret mysql-generated-secret 复制编码值并将其粘贴到kubectl edit secret dbinstance-secret。 有没有更好的办法?如果可能的话,在 k8s 中的参考,或者一个很好的自动化。 (我会找到像pwd=$(kubectl get secret -o yaml ... | yq .data.mysql-password | base64 -d) && helm update --set password=$pwd ...; unset pwd 这样的方法,但这是最好的方法吗?)

类似的: Using kubernetes secrets in a configmap

【问题讨论】:

    标签: kubernetes kubernetes-secrets


    【解决方案1】:

    自动执行此操作的最佳方法是使用运算符。监听秘密 mysql-generated-secret,创建或修改触发器 -> 创建 dbinstance-secret

    这是一个在命名空间之间同步秘密的操作员,您可以使用相同的基本代码并根据需要对其进行修改。

    https://github.com/zakkg3/ClusterSecret

    【讨论】:

    • 我同意这是最好的方法。只使用一次可能有点矫枉过正。 python(是的!)代码看起来很容易理解。但从我对 shell-operator 的经验来看,我怀疑我是否已经为编写运算符做好了准备。
    猜你喜欢
    • 2023-01-22
    • 2021-08-07
    • 2021-02-12
    • 2018-09-05
    • 2016-09-07
    • 2019-11-14
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多