Helm 管理服务集合
Helm managing a collection of services
我有一个运行许多独立、离散服务的 Kubernetes 集群。我想使用 helm 来部署它们,我已经为每个单独的资源制作了 helm 图表。
但是,现在我希望能够将集群部署为单个实体,但我不清楚helm如何支持将多个图表拼接在一起。
当我查看示例存储库时,他们只是在单个图表的模板文件夹中包含每个模板文件,然后是一个巨大的、庞大的 Values.yaml 文件。
对我来说,这似乎很笨拙,尤其是在 2000 行附近爬行 Values.yaml 寻找设置。
有没有什么方法可以采用如下所示的文件夹结构:
helm
|____ Service1
|_______ values.yaml
|_______ templates
Service2
|_______ values.yaml
|_______ templates
Service3
|_______ values.yaml
|_______ templates
并将其打包到一个部署中,而无需手动合并和删除文件和值?
你需要有元图表之类的东西,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
我们也有类似的场景,其中我们有独立的应用程序,我们需要一起部署以解决跨越它们的功能,或者单独部署以解决错误。
我们最终使用 helmfile (https://github.com/roboll/helmfile)。
每个应用程序仍然维护自己的图表,使用 helmfile,如果需要,我们可以将它们一起部署。
我有一个运行许多独立、离散服务的 Kubernetes 集群。我想使用 helm 来部署它们,我已经为每个单独的资源制作了 helm 图表。
但是,现在我希望能够将集群部署为单个实体,但我不清楚helm如何支持将多个图表拼接在一起。
当我查看示例存储库时,他们只是在单个图表的模板文件夹中包含每个模板文件,然后是一个巨大的、庞大的 Values.yaml 文件。
对我来说,这似乎很笨拙,尤其是在 2000 行附近爬行 Values.yaml 寻找设置。
有没有什么方法可以采用如下所示的文件夹结构:
helm
|____ Service1
|_______ values.yaml
|_______ templates
Service2
|_______ values.yaml
|_______ templates
Service3
|_______ values.yaml
|_______ templates
并将其打包到一个部署中,而无需手动合并和删除文件和值?
你需要有元图表之类的东西,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
我们也有类似的场景,其中我们有独立的应用程序,我们需要一起部署以解决跨越它们的功能,或者单独部署以解决错误。 我们最终使用 helmfile (https://github.com/roboll/helmfile)。 每个应用程序仍然维护自己的图表,使用 helmfile,如果需要,我们可以将它们一起部署。