首页 文章

Helm管理一系列服务

提问于
浏览
0

我有一个Kubernetes集群,它运行许多独立的离散服务 . 我想使用helm来部署它们,我为每个单独的资源制作了一个头盔图 .

但是,现在我希望能够将群集部署为单个实体,但我不清楚helm如何支持将多个图表拼接在一起 .

当我查看示例repos时,他们只是将每个模板文件放在单个图表的模板文件夹中,然后是一个巨大的,蔓延的Values.yaml文件 .

对我来说,这似乎很笨拙,特别是在2000行的Values.yaml寻找设置时爬行 .

有没有办法采取如下所示的文件夹结构:

helm
|____ Service1
      |_______ values.yaml
      |_______ templates
      Service2
      |_______ values.yaml
      |_______ templates
      Service3
      |_______ values.yaml
      |_______ templates

并将其打包到一个部署中,而无需手动合并和重复删除文件和值?

2 回答

  • 2

    使用helm subcharts

    你需要有类似元图的东西, myapps . 然后你要添加一个 requirements.yaml 文件,如下所示:

    # myapp/requirements.yaml
    dependencies:
      - name: Service1
        repository: http://localhost:10191
        version: 0.1.0
      - name: Service2
        repository: http://localhost:10191
        version: 0.1.0
      - name: Service3
        repository: http://localhost:10191
        version: 0.1.0
    
  • 3

    我们也有类似的场景,其中我们有独立的应用程序,我们需要一起部署以解决跨越它们的功能或单独部署以解决错误 . 我们最终使用helmfile(https://github.com/roboll/helmfile) . 每个应用程序仍然使用helmfile维护自己的图表,如果需要,我们可以完全部署它们 .

相关问题