我打算将我们的应用程序(由多个微服务组成)包装到一个图表中。
现在,对于每个微服务,我们将秘密和配置值直接硬编码在我们的deployment.yaml
文件中,在...containers[].env
. 我们所有的yaml
文件都存储在 git repo 中。
我注意到一些流行的图表使用ConfigMap
( 1 , 2 ) 和Secret
( 1 , 2 ) Kubernetes 对象分别存储配置值和秘密。
ConfigMap
使用和Secret
对象有哪些优点,无论是人体工程学和/或安全性增益?
我已经可以从yaml
我们拥有的所有文件中制作模板,使所有硬编码的值都可配置,从而在 helm 的模板编译期间可解析。
然而,由于 Kubernetes 提供了专门的对象来存储配置和秘密,我想证明添加configmap.yaml
和secrets.yaml
模板文件是合理的,以及从现有deployment.yaml
文件中添加对它们的引用。