【问题标题】:How to merge a K8s Configmap to a Secret (or two secrets together)如何将 K8s Configmap 合并到 Secret(或两个 Secret)
【发布时间】:2021-02-11 17:06:08
【问题描述】:

我正在使用带有 Kubernetes 的 Helm,并尝试将现有 Configmap 中的数据添加到现有密钥中。这样做的原因是,我需要设置 CRD 上的一个属性,它只接受一个密钥 ref。现有的 secret 由 Vault 创建,现有的 Configmap 以纯文本形式在 Helm 图表中配置。由于我不会深入探讨的原因,我们不能将 configmap 的内容包含到 Vault 机密条目中,因此我必须能够将这两者合并到一个机密中。

我试过搜索这个,但我看到的大多数答案都涉及创建一个 initContainer 和设置一个卷,但不幸的是,我认为这不适用于我的情况。我只需要一个可以在 CRD 中引用并解决问题的秘密。这可以使用 Kubernetes/Helm 吗?

我的后备计划是创建自己的 CRD 和关联的控制器来合并 configmap 数据和机密数据并基本上创建一个新机密,但这似乎有点矫枉过正。

【问题讨论】:

    标签: kubernetes kubernetes-helm


    【解决方案1】:

    据我所知,在 kubernetes 中没有办法做到这一点。

    我能看到的唯一解决方案是自己实现一些工具。使用kopf 之类的东西,您可以实现一个简单的操作符来监听特定秘密和配置映射的创建/更新,获取它们的数据并将其合并到一个新秘密中。 使用运算符可以让您处理资源生命周期中可能发生的所有情况,例如删除或更新新密钥时等。

    【讨论】:

    • 感谢@ITChap。这看起来像 Kubebuilder,除了更简单和在 Python 中。应该是我需要的。主要的是我需要知道没有我错过的 K8s 原生方式来做这件事。标记为已解决!
    猜你喜欢
    • 2016-11-08
    • 1970-01-01
    • 2020-06-25
    • 2022-07-19
    • 2021-08-04
    • 2021-12-26
    • 1970-01-01
    • 2021-12-26
    • 2021-01-07
    相关资源
    最近更新 更多