返回到文章

采纳

编辑于

Helm中文教程

Helm

Helm,Kubernetes的包管理工具

Helm 是为 kubernetes 提供发现,共享和构建应用的最佳方式。



什么是 Helm

Helm 可帮助您管理 Kubernetes应用程序 - Helm Charts 可帮助您定义,安装和升级最复杂的 Kubernetes应用程序。

Charts非常容易的创建,版本,共享和发布

最新版本的 Helm 由 CNCF 维护 - 与微软,谷歌,Bitnami 和 Helm贡献者社区合作。


为什么要用 Helm?

首先在原来项目中都是基于yaml文件来进行部署发布的,而目前项目大部分微服务化或者模块化,会分成很多个组件来部署,每个组件可能对应一个deployment.yaml,一个service.yaml,一个Ingress.yaml还可能存在各种依赖关系,这样一个项目如果有5个组件,很可能就有15个不同的yaml文件,这些yaml分散存放,如果某天进行项目恢复的话,很难知道部署顺序,依赖关系等,而所有这些包括

  • 基于yaml配置的集中存放
  • 基于项目的打包
  • 组件间的依赖

都可以通过helm来进行解决。

Helm 基本概念

Helm 可以理解为 Kubernetes 的包管理工具,可以方便地发现、共享和使用为Kubernetes构建的应用,它包含几个基本概念

  • Chart:一个 Helm 包,其中包含了运行一个应用所需要的镜像、依赖和资源定义等,还可能包含 Kubernetes 集群中的服务定义。

  • Release: 在 Kubernetes 集群上运行的 Chart 的一个实例。在同一个集群上,一个 Chart 可以安装很多次。每次安装都会创建一个新的 release。例如一个 MySQL Chart,如果想在服务器上运行两个数据库,就可以把这个 Chart 安装两次。每次安装都会生成自己的 Release,会有自己的 Release 名称。

  • Repository:用于发布和存储 Chart 的仓库。

  • config:创建发布对象的chart的配置信息。

REF

https://helm.sh/