我最近问了一个关于如何构建应该捆绑在一起的多个应用程序的问题,并且正在考虑让每个单独的应用程序都有自己的 Helm 图表和自己的入口控制器。这将允许 CI/CD 轻松更新每个组件,而不影响其余组件。
我还考虑在实际发布时使用“伞”图表来指定其他图表的版本,并将其保留在另一个存储库中。
但是,当使用多个 Helm 图表且每个图表都有一个入口控制器时,我将如何处理它们之间共享的一些对象?例如机密、TLS 颁发者以及这些之间共享的卷?我可以将它们放在伞图中,但这样我就会失去在 CI/CD 中使用它的好处。我可以在每个单独的图表中复制它们,但这对我来说似乎是错误的。我认为我需要另一个 Helm 图表来单独管理这些资源。
是否有这样做的建议标准或者您会推荐什么方法?
您可以创建一个 helm 图表,并在其中创建应用程序 A、应用程序 B 和共享图表的子图表,并且可以为共享对象定义全局值,并在应用程序 A 和 B 的主子图表的模板中使用此名称。
有关子图和全局值的更多信息,请检查this https://github.com/helm/helm/blob/release-2.16/docs/chart_template_guide/subcharts_and_globals.md
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)