我正在做一个kubernetes项目,我们有一个每个微服务都有自己的helm图,目前每个微服务的helm表都在代码源存储库中,现在我想创建一个qa环境,在那里可以使用相同的代码,但我在为每个环境定制helm图时遇到了问题,我的问题是,处理微服务的舵图的最佳方法是什么?helm图表是否应该位于源代码的存储库中?
提前感谢
在每个微服务的存储库中都有图表是可以的。
现在,要部署您的系统(无论环境如何),您需要helm install
所有这些图表。你怎么能做到这一点?您有两种选择,要么单独安装,要么最好的方法是创建一个元图表。
这个元图表是什么?只是另一个虚拟图表,它依赖于你所有的微服务。所以你最终会得到这样的东西:
apiVersion: v3
name: myservice
version: 1.0.0
dependencies:
- name: microserviceA
version: ">=1.0.0"
repository: "path_to_microserviceA_repo"
- name: microserviceB
version: ">=1.0.0"
repository: "path_to_microserviceA_repo"
然后,理想情况下,您将拥有不同的值文件,其中包含要部署的每个环境的配置:QA、暂存、生产、个人本地开发等