为多个不同的 kubernetes 服务重用相同的图像、配置和机密

Reusing the same image, config, secrets for several different kubernetes services

我们有一堆服务 运行 来自同一个 Docker 图像:一些长 运行ning 服务、一些 cron 作业和一个网络服务。

我想知道当前的最佳做法是什么?我本质上想要一些基本的模板来重用图像及其配置,将它们全部保持在相同的修订版中(因此 sirensoftitan-image:{gitsha1hash} 在 gitsha1hash 没有在任何地方重复的地方使用)。

我应该使用舵图吗?定制化?一些其他类型的 yaml 模板?我想要一些简单的东西,尽可能少地增加复杂性。

我发现 helm chart 比 kustomize 重。试试 kustomize,非常简单易用。 您可以通过添加新标签为不同的环境部署相同的模板,通过以环境值作为前缀来更新部署对象名称。因此,您可以为不同的环境拥有独特的命名约定。

此外,它使用 YAML 格式,这使得它易于学习和采用。 与您管理多个文件的 helm 不同,所有自定义配置都进入一个 YAML 文件。我个人喜欢 kustomize,因为它简单灵活,而且至少来自 Google 社区。试一试