Helm 常用命令小记

官网:https://helm.sh/zh/docs/helm/


Helm
 

helm           #查看helm基本操作命令
helm version   #查看helm的版本
helm env       #查看环境变量
helm create chartName    #创建chart目录(含基本配置文件和目录)
helm package chartDir    #将chart目录打包
helm template chartName  #渲染template目录下的模板文件(即将这些模板文件的字段内容用values.yaml填充,然后直接输出到终端)

helm search repo keyword   #根据关键字检索chart包
helm search hub keyword
#上面2个命令仅仅在第3个字段有区别,repo表示在本地所添加的仓库中进行检索;hub表示在Helm Hub中进行检索。

helm list  #查看发布到k8s中的chart对应的release

helm push chart.tgz repoName    上传chart到chart仓库
例:helm push demo.tgz harbor-10.30.12.211 --username=admin --password=Harbor12345
#有些仓库是有账号密码验证的,所以需要加上账号、密码的参数(比如Harbor提供的chart仓库功能,可参考下面的私有仓库搭建先搭建一个私有仓库出来,再进行仓库相关命令的测试)

命令:helm pull repoName/keyword    #从chart仓库中拉取chart到本地
例:helm pull harbor-10.30.12.211/demo
#harbor-10.30.12.211/demo的结构是本地起的仓库名/chart包的名字前缀,只要在harbor-10.30.12.211仓库中含有demo为前缀的chart包,就会被下载到本地

helm lint chartName    #检查chart包中的文件内容是否正确(即该chart包去k8s中是否能够成功安装部署)
#包可以是chart目录、chart压缩包

helm install releaseName chartName    #将chart包发布到k8s集群中安装部署
#releaseName为release的名字,chartName为chart包名,chart可以是未打包的chart,也可以是打包的chart,也可以是仓库中的chart。【chart和release的关系可以大致理解为程序和进程的关系,一个是静态的,一个是动态的】
helm install chartName --generate-name
#可以不指定release的名字,只需要指定–generate-name即可随机生成一个名字
#创建完后可以使用helm list查看是否有对应的release

helm uninstall releaseName   #将部署到k8s中的release卸载掉
#卸载完后使用helm list查看relDemo是否被删除了,同时可以使用kubectl get pods查看相应的pod等与release相关的资源是否全部删除干净

helm upgrade releaseName chartName     #将部署到k8s中的release升级,即相当于应用升级
#relName指定一个release,该release对应一个k8s中的应用,chartName指定一个chart包,整个过程为直接使用指定的chart包替换部署release。就helm而言release还是原来那个,不过对应的chart包被替换了。对k8s而言,仅仅是将原先资源删除,然后用新的chart包创建资源。
#使用helm list查看release的CHART字段是否更新,同时可以使用kubectl get pods查看相应的pod等与release相关的资源是否全部更新(看名字、运行时间)

helm rollback releaseName revision   #将release回退到前一个或若干个版本(k8s中会同步回退)
#revision为第几个版本,1表示第一个版本,2表示第二个版本,以此类推。通常回滚会搭配helm history releaseName使用,通过该命令查看所有的关于本release的发布历史,然后选择回退到哪个版本
#回滚成功后使用helm list查看该release的CHART和APP VERSION是否更新(具体得看chart中的chart.yaml中的version和appVersion有没有相应的修改),同时可以使用kubectl get pods查看相应的pod等与release相关的资源是否全部更新(看名字、运行时间)

helm history releaseName    #查看release的发布历史(包括安装、升级、回滚)
helm status releaseName     #查看release的基本信息

helm show —— 查看chart包文件内容

helm show chart chartName  #查看chart包中的chart.yaml文件内容
#chart包可以是本地的未打包的chart目录(即helm create 创建出来的chart目录),也可以是打包的chart压缩包(由helm package打包),也可以是保存在仓库中的chart包

helm show values chartName    #查看chart包中的values.yaml文件内容
#包同上有3种选择

helm show readme chartName     #查看chart包中README文件内容
#包同上有3种选择

helm show all chartName   #查看chart包中chart.yaml、values.yaml、README文件内容
#包同上有3种选择

helm get —— 查看release指定内容(与helm show作用、格式相同)

helm get notes releaseName      #查看release的说明信息(相当于chart中的NOTES.TXT)
helm get manifest releaseName   #查看release在k8s中创建出来的资源
helm get hooks releaseName      #查看release的回调创建资源
helm get values releaseName     #查看release的values配置
helm get all releaseName        #查看上述所有内容

helm plugin —— 插件管理

helm plugin list     #查看本地安装好的插件 (插件管理)

helm plugin install pluginURL    #安装插件
例:helm plugin install https://github.com/chartmuseum/helm-push
#最后的url地址为插件的下载地址,可参考 https://github.com/chartmuseum/helm-push

helm plugin uninstall pluginName   #卸载插件
helm plugin update pluginName   #更新插件,将插件升级到最新版本
#在下载插件的时候会保存插件及其下载地址,更新的时候使用原本的下载地址直接下载最新版本替换

helm repo —— 仓库管理

helm repo list     #(仓库管理)查看添加的chart仓库,可在这些chart仓库中拉取chart(实际上就相当于一个应用的安装包)

helm repo add repoName repoURL     #本地添加chart仓库
例:helm repo add abc http://mirror.azure.cn/kubernetes/charts/
#repoName是你自己起的一个名字,用来代表这个repoURL,后续操作仓库的命令中直接用repoName来代替repoURL,只要指定了repoName,就表示要去操作repoName指向的repoURL的仓库

helm repo remove repoName  #本地删除chart仓库

helm repo update   #将本地所添加的chart仓库的最新信息缓存到本地
#helm search命令是检索某仓库中的chart包,假设仓库中一开始是没有所指定的chart包,所以helm search是检索不到的。这时候如果将chart包上传至该仓库,本地需要执行一遍helm repo update以更新本地的缓存数据才能检索到该指定的chart,因为helm search就是读取本地缓存数据的

helm repo index repoDir --url=repoURL     #根据指定仓库目录下的chart包生成index.yaml索引文件
例:helm repo index repo --url=http://192.168.0.1:8080/
#repoDir指定一个仓库的目录,该目录用来存放chart包及索引文件index.yaml。url指定仓库的访问路径,生成的索引文件中会以该url为地址前缀拼接上chart包名作为chart包的访问路径

helm 私有仓库搭建(以Harbor为例)

......

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络飞鸥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值