helm 是基于 kubernetes 的包管理器。它之于 kubernetes 就如 yum 之于 centos,pip 之于 python,npm 之于 javascript
Helm 有两个重要得概念:chart 和 release
chart :是创建一个应用的信息集合,包括各种 kubernetes 对象得配置模板、参数定义、依赖关系、文档说明等,可以将 chart 想象成 yum 中的软件安装包
release :是 chart 的运行实例,代表了一个正在运行的应用。当 chart 被安装到 kubernetes 集群,就会生成一个 release,chart 能够多次安装到同一个集群,但是只会有一个 release
1、下载
wget https://get.helm.sh/helm-v3.2.0-linux-amd64.tar.gz
2、解压
tar -zxvf helm-v3.2.0-linux-amd64.tar.gz
3、拷贝
cp linux-amd64/helm /usr/local/bin
4、验证
[root@master ~]# helm version
version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"}
5、添加 chart 源
helm repo add stable https://kubernetes-charts.storage.googleapis.com
helm repo add aliyuncs https://apphub.aliyuncs.com
6、查询当前集群有哪些 chart 库
[root@master1 ~]# helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
aliyuncs https://apphub.aliyuncs.com
7、查询某个库 有哪些安装程序
[root@master1 ~]# helm search repo aliyuncs | head -5
NAME CHART VERSION APP VERSION DESCRIPTION
aliyuncs/admin-mongo 0.1.0 1 MongoDB管理工具(web gui)
aliyuncs/aerospike 0.3.2 v4.5.0.5 A Helm chart for Aerospike in Kubernetes
aliyuncs/airflow 4.3.3 1.10.9 Apache Airflow is a platform to programmaticall...
aliyuncs/ambassador 5.3.0 0.86.1 A Helm chart for Datawire Ambassador
8、查找安装程序
helm search repo nginx
9、安装一个程序
helm install nginx aliyuncs/nginx
10、查询 svc
[root@master1 ~]# kubectl get svc -n default
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 116m
nginx LoadBalancer 10.99.247.71 <pending> 80:30300/TCP,443:32617/TCP 45s
11、访问 集群
[root@master1 ~]# curl http://10.99.247.71
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
.......
<p><em>Thank you for using nginx.</em></p>
</body>
</html>
12、查看安装的应用
[root@master1 ~]# helm list
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
nginx default 1 2020-12-15 11:48:13.181211885 +0800 CST deployed nginx-5.1.5 1.16.1
13、删除一个应用
helm uninstall nginx