【问题标题】:Helm managing a collection of servicesHelm 管理服务集合
【发布时间】:2019-01-03 20:42:16
【问题描述】:

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

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

当我查看示例存储库时,他们只是在单个图表的模板文件夹中包含每个模板文件,然后是一个巨大的、蔓延的 Values.yaml 文件。

对我来说,这似乎很笨拙,尤其是在 2000 行的 Values.yaml 中寻找设置。

有什么办法可以采用如下所示的文件夹结构:

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

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

【问题讨论】:

    标签: kubernetes kubernetes-helm


    【解决方案1】:

    使用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
    

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      猜你喜欢
      • 2019-05-13
      • 1970-01-01
      • 2021-12-11
      • 1970-01-01
      • 2019-03-10
      • 2020-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多