helm安装和基础用法
Helm是Kubernetes的一个包管理工具,它的工作方式类似于Linux系统中的apt或yum,以及Python的pip。它允许开发者和运维人员预先打包好Kubernetes资源配置(如部署、服务、存储卷等),这些打包好的配置被称为“chart”。使用Helm可以简化Kubernetes应用程序的部署和管理过程。
Helm的核心概念包括:
Chart:Chart是Helm管理的包单位,它包含了运行一个应用所需要的所有Kubernetes资源定义。一个Chart可以简单到定义一个单个的对象,也可以复杂到定义一组相互依赖的应用服务。
Repository(仓库):Chart的存储库,允许用户分享和发布自己打包的Chart。Helm官方提供了一个公共Repository,社区也有很多其他的Repository。
Release:在Kubernetes集群中部署Chart的实例。每次部署新的Chart或者更新现有的Chart时,Helm都会创建一个新的Release。这样做的好处是可以追踪每次部署的变化,方便回滚到之前的版本。
官网下载地址https://github.com/helm/helm/releases
这里提供一个本地下载helm helm-v3.13.3-linux-amd64.tar.gz
tar -zxvf helm-v3.13.3-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/helm
helm --help
安装好后查看官网和help,就可以尝试使用了
helm repo add 命令用来添加仓库
helm update 命令更新仓库
helm repo add stable https://charts.helm.sh/stable #官方仓库
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts #国内阿里仓库
添加仓库然后更新源,用search可以查看该源提供的仓库,也可以直接搜索相关软件的chart包
helm search repo aliyum
helm search repo nginx
类似这种效果
如果要安装chart包,用install命令,格式用helm install 自定义名称 源/chart包名,比如下载nginx的chart包
helm install my-nginx stable/nginx-ingress
其他常用命令还有
helm pull stable/nginx-ingress 将chart的压缩包下载到当前目录
helm pull stable/nginx-ingress --untar 下载并解压
在修改了chart的yaml文件后可以用命令
helm lint /PATH 来检查这个文件的语法等有没有问题
helm package /PATH 然后通过这个命令将chart目录打包为tgz文件
对于tgz结尾的压缩包就可以用helm install 自定义名字 tgz路径来安装了
chart 包卸载命令把install换成uninstall即可
其他还有helm upgrade my-nginx stable/nginx-ingress 更新命令
helm rollback my-nginx回滚命令