有没有办法只生成一次唯一标识符值(如果没有设置),用户无法编辑

问题描述 投票:0回答:1

我想生成特定长度的唯一标识符,并在内部跨多个pod使用此值。由于长度必须是特定的,并且我更喜欢在内部处理而不是由用户调整,我宁愿在安装/升级时创建唯一标识符(如果尚未设置,则仅一次),而不是变化多端。

我想在内部使用标识符作为特定部署中创建的对象的命名模式的一部分。我希望在其他部署中共享这些对象,并且需要标识符来确定给定对象是否属于给定部署。

我正在考虑使用randAlphaNum在Secrets中设置一个值。使用Secrets时遇到的一些问题是:

  1. 与此问题相关:https://github.com/helm/helm/issues/3053看起来在升级时将覆盖Secret值。有一个开放的PR可能的修复:https://github.com/helm/helm/pull/5290但我没有能力升级helm / kubernetes atm
  2. 秘密值是b64编码的。我想将值作为环境变量传递给各种解码的pod。如果用户知道唯一标识符并不重要。那么,也许我不需要秘密?但是,同样,我不希望用户能够编辑该值,并且对于给定的部署,值永远不会更改。

任何帮助或建议表示赞赏!谢谢

kubernetes-helm
1个回答
1
投票

然后你可以尝试使用ConfigMap。似乎它在helm upgrade上没有变化。然后,您可以使用this guide将值从ConfigMap传递到pod。

© www.soinside.com 2019 - 2024. All rights reserved.