k8s–基础–25.1–Helm–介绍和安装
1、介绍
- helm是kubernetes一个项目
- helm相当于linux环境下的yum包管理工具。
- helm是一k8s中的一个命令行客户端工具
- helm是tiller的客户端,tiller是一个守护进程,接收helm的请求
- helm把请求交给tiller,tiler和apiserver交互,由apiserver负责完成创建,我们用哪个chart需要下载到本地,基于本地这个chart部署实例,这个部署的实例叫做release

1.1、chart
- 一个helm程序包(chart图表),比方说我们部署nginx,需要deployment的yaml,需要service的yaml,这两个清单文件就是一个helm程序包,在k8s中把这些yaml清单文件叫做chart图表
- chart—>通过values.yaml这个文件赋值—>生成release实例
- helm是go语言开发的
1.1.1、repository
- 存放chart图表的仓库
- 提供部署k8s应用程序需要的那些yaml清单文件
1.1.2、release
特定的chart部署于目标集群上的一个实例
1.2、vlues.yaml文件
- 为模板中的文件赋值,可以实现我们自定义安装
- 如果是chart开发者需要自定义模板,如果是chart使用者只需要修改values.yaml即可
1.3、总结
- helm把kubernetes资源打包到一个chart中,制作并完成各个chart和chart本身依赖关系,并利用chart仓库实现对外分发
- helm可以实现可配置的对外发布,通过values.yaml文件完成可配置的发布,如果chart版本更新了,helm自动支持滚更更新机制,还可以一键回滚,但是不是适合在生产环境使用,除非具有定义自制chart的能力
2、helm客户端安装
2.1、下载地址
https://github.com/helm/helm/releases

这是我的保存路径

2.2、安装
master1上操作
# 创建目录
mkdir -p /root/helm/
# 进入目录
cd /root/helm/
# 解压
tar -xzvf helm-v2.13.1-linux-amd64.tar.gz
# 进入目录
cd linux-amd64
# 拷贝执行文件指定目录
cp helm /usr/local/bin
# 删除
rm -rf /root/helm/helm-v2.13.1-linux-amd64.tar.gz
# 查看版本
helm version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21

表示没有找到server端,这是正常的,因为我们还没装
Error: could not find tiller