Helm chart是创建一个应用实例的必要配置组,也就是一堆Spec。配置信息被归类为模版(Template)和值(Value),这些信息经过渲染最终生成对象。所有配置信息可以被打包进一个可以发布的对象中,一个release就是一个有特定配置的chart的实例。
Helm分为Helm client和Helm library两部分。
Helm client
- 本地chart开发
- 管理repository
- 管理release
- 与helm library交互,发送需要安装的chart,请求升级或者卸载存在的release
- 负责与APIServer交互,基于chart和configuration创建一个release
- 把chart安装进kubernetes,并提供相应的release对象
- 升级和卸载
- Helm采用Kubernetes存储所有配置信息,无需自己的数据库
文章图片
默认会生成两个文件Chart.yaml和values.yaml,还有两个文件夹charts、templates。
其中Templates中包含了一下典型对象的yaml文件,当template和values中定义的变量值相结合的时候,就生成了有效的kubernetes manifest文件。实际项目中结合项目情况编写template中的yaml文件和定义values.yaml中的值,将配置类信息例如image version等放到values.yaml中统一管理。
文章图片
helm install命令安装上面创建的demo chart,可以看到启动了一个新的pod,因为template里面默认定义了deployment文件。
文章图片
除安装命令外,常用的还有如下命令:
helm repo list
helm repo add xx
helm repo upgrade
文章图片
已经安装了的release,还可以进行查看和清理
helm list
helm uninstall releaseName
文章图片
【云原生|Helm理解和使用】以上就是对helm的简要介绍,helm使用非常简单,如果要了解更多信息,可查看官网资料。
推荐阅读
- kubernetes|Ingress
- 云原生|云原生之容器化(Docker的安装与卸载)
- 云原生|云上机器CLOSE_WAIT过多的原因和解决办法
- 云原生|云原生之容器化(Docker命令详解)
- Kubernetes安装Kuboard图形化管理工具
- 云原生系列|云原生系列番外篇---云原生网络趋势 | K8s托管整个基础设施、多云、边缘计算、安全等场景,将云原生网络带向新战场
- 云原生系列|云原生系列五(Kafka 集群数据迁移基于Kubernetes的内部)
- CentOS7基于kubeadm快速搭建Kubernetes集群
- 云原生|阿里云易立(云原生如何破解企业降本提效难题())