Kubernetes Cronjobs可以重用现有部署中的环境变量吗?

sandy 发表于: 2019-12-05   最后更新时间: 2019-12-05 00:27:39   1,765 游览

我使用Kubernetes Cronjob来运行期间数据库还原以及针对目标环境运行的还原脚本,这些脚本包括诸如处理数据库,Redis和文件系统之类的任务。

我面临的问题是我必须重新定义在Cronjob的部署中使用的所有环境变量(例如,DATABASE_NAME,DATABASE_PASSWORD,REDIS_HOST等)。

在重复使用所有环境变量的时候,容易出错,因为具体取决于哪种环境。这导致我不得不重新运行整个过程,整个过程需要2-4个小时,

有没有办法引用现有的Deployment并重新使用Cronjob中定义的环境变量吗?

发表于 2019-12-05

可以使用'kind: PodPreset'来定义公共变量并将其注入到多个kuberentes对象中,如deployments/statefulsets/pods/replicasets等。

参考:https://kubernetes.io/docs/tasks/inject-data-application/podpreset/

你的答案

查看kubernetes相关的其他问题或提一个您自己的问题