Helm是一个软件包管理器,它提供了一种简单的方法来查找、共享和使用为Kubernetes构建的软件。该项目使用一种称为chart的打包格式,它是描述一组相关Kubernetes资源的文件集合。它被许多组织用于生产,包括AT&T、Bitnami、CERN、Conde Nast、Microsoft、VMWare和许多其他组织。自设立以来,已经有代表1,500多家公司的13,000多个贡献给Helm项目。
“由于Helm与Kubernetes社区的紧密联系,自从CNCF成立以来,它就一直参与其中。”CNCF的CTO/COO Chris Aniszczyk说:“自从作为Kubernetes之外的独立项目加入CNCF,并于去年发布了v3版本后,该项目通过降低安装和管理Kubernetes软件的门槛,在最终用户里非常受欢迎。”
Helm成立于2015年的Deis,后来被微软收购。现在被称为Helm classic是在那年11月的首届KubeCon介绍。2016年,Helm团队与谷歌、Skippbox和Bitnami合作生产了Helm 2,它定义了创建、安装和管理Helm chart的工作流程。2018年6月,Helm作为孵化项目加入CNCF。Helm Hub于2018年底推出,是Helm chart的集中地,目前每月的下载量超过数亿次。去年年底,Helm团队发布了Helm 3,它建立在Helm 2工作流的基础上,随着社区的变化和发展,对底层基础设施进行了更改,以反映社区的需求。
“当我们开始构建Helm时,我们有两个目标,”微软首席软件开发工程师和Helm维护者Matt Butcher说。“首先,让Kubernetes的新用户能够轻松部署云原生应用程序。其次,提供一个可以根据企业需求扩展的包管理器。在今天的毕业宣布上,我们很高兴看到这两个目标实现的规模比我们想象的要大!”
在Helm及其所有子项目中,有来自16家不同组织(包括Blood Orange、IBM、Microsoft、Samsung SDS等)的28位活跃的维护者。该项目还拥有3万多个GitHub星星,每月全球下载量接近200万次。
在当前的 Kubernetes 应用生态当中,Helm 是最被广泛使用的应用定义标准之一,也是 CNCF 旗下第十个顺利毕业的项目。Helm 相对于 Kubernetes 而言,类似于 Ubuntu 上的 APT 或 CENTOS 上的 yum 命令。该项目采用一种名为图表(chart)的打包格式,用以描述一组彼此相关的 Kubernetes 资源文件集合,它可以把整个 Kubernetes 的资源进行打包。好处:第一是复用性,第二是标准化,第三是版本控制。
通过使用 Helm 在 Kubernetes 平台上部署 ChubaoFS 集群,京东团队将部署时间从几个小时减少到几分钟。除了 ChubaoFS,京东还使用 Helm 来管理许多其他的 chart,包括 etcd、 grafana、MySQL、zookeeper 等等。