云原生应用管理:原理与实践
上QQ阅读APP看书,第一时间看更新

1.3 Helm的社区和生态

在2019年年底我编写本书时,Helm 2还是最常用的版本,几月后,2020年1月,Helm社区发布了Helm 3预览版。由于Helm是一个开源项目,我们可以很容易地在GitHub(https://github.com/helm/helm)上查看到源码。

Helm是一个使用Go语言编写的项目,在Kubernetes生态中,都是Go语言的天下。所以不熟悉Go语言的读者可以先进行入门学习。

Helm目前已经完全贡献给了CNCF(云原生计算基金会),属于基金会项目。在Helm这个组织下有很多子项目,下面进行简要介绍。

1.Chart

Chart是Helm社区中已经打包好的应用安装包,分为stable与incubator两个目录。stable是已经可以稳定运行的项目,incubator则是项目开发的孵化器。我们可以在这里找到很多当下流行的项目,不需要了解太多原理就能直接安装上手使用,极大地简化了Kubernetes的应用安装流程。

2.Chartmuseum

Chartmuseum这个名字很文艺,它也是为了存放Chart而开发的。因为Helm没有提供官方的中央仓库,因此各个云服务提供商包括企业自己都可以根据这个项目搭建Chart托管仓库。Chartmuseum提供了最基本的基于安全认证的Chart托管,配合Helm命令行可以很方便地进行上传、下载与安装操作。

3.Monocular

Monocular是一个前端项目,它可以便捷地展示Chart仓库的内容,方便用户预览和使用。