helm3使用需要注意的并推送charts到harbor

HELM3使用需要注意的

不需要Tiller了

以前安装helm2的时候会在k8s集群中安装一个叫tiller的容器,用于和集群交互,helm3移除了tiller这个组件,默认通过~/.kube/config与集群进行交互,也就是说使用了与kubctl相同的上下文访问权限,若不在默认位置可通过–kubeconfig参数进行指定,按照官方安装文档安装即可直接使用

更新某个release到新的版本,回滚到上一个版本

原来是0.1.0现在更新到0.1.1,然后回滚

[root@EPG1 mychart]# helm list
NAME    	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART        	APP VERSION
mycharts	default  	1       	2020-02-20 14:52:57.724255389 +0800 CST	deployed	mychart-0.1.0	1.16.0 
[root@EPG1 ~]# helm upgrade mycharts myharborlib/mychart --version 0.1.1
Release "mycharts" has been upgraded. Happy Helming!
NAME: mycharts
LAST DEPLOYED: Thu Feb 20 15:48:49 2020
NAMESPACE: default
STATUS: deployed
REVISION: 2
TEST SUITE: None
[root@EPG1 ~]# helm list
NAME    	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART        	APP VERSION
mycharts	default  	2       	2020-02-20 15:48:49.307073392 +0800 CST	deployed	mychart-0.1.1	1.16.1     
[root@EPG1 ~]# helm rollback mycharts
Rollback was a success! Happy Helming!
[root@EPG1 ~]# helm list
NAME    	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART        	APP VERSION
mycharts	default  	3       	2020-02-20 15:57:44.582470748 +0800 CST	deployed	mychart-0.1.0	1.16.0     

推送到harbor

可从charts仓库推送或下载charts

目前尝试过推送到harbor中,首先harbor要支持charts,需要在安装时添加参数–with-chartmuseum

./install.sh  --with-chartmuseum

harbor安装自行百度

这样在harbor的项目详情页面就会有个叫 Helm Charts 的标签
在这里插入图片描述

下载charts默认支持,不多做介绍,推送charts到harbor目前遇到一些坑下面做简要介绍

helm(3.0.3)现在默认不支持推送到charts库,需要安装插件helm-push

https://github.com/chartmuseum/helm-push

helm plugin install https://github.com/chartmuseum/helm-push

由于网络原因这样安装可能会安装,我是先直接这样安装了一下,超时了没装成功,然后又在网上直接下载的文件放到了/root/.local/share/helm/plugins/这个目录里面,然后好使了。

push charts 先要添加repo(其实不加好像直接url也行,我这里先加上)

helm repo add myharborlib  https://[harbor-domain-name]/chartrepo/chart_repo --ca-file /root/helm/ca/newca/ca.crt

因为harbor默认是带ssl认证的所以得需要上harbor上找到之前的证书,这里是自签的证书/root/helm/ca/newca/ca.crt

[root@EPG1 .kube]# helm repo list
NAME       	URL                                                         
harbor     	https://helm.goharbor.io                                    
myharborlib	https://[harbor-domain-name]/chartrepo/chart_repo

然后push,这里有个坑,我这项目chart_repo是公共项目,按理说公共项目是不要用户名密码的,但是不添加报错,加了就好了

helm push mychart/ myharborlib --ca-file /root/helm/ca/newca/ca.crt -u admin -p yourpasswd

至此就能把charts push到自己搭建的harbor上了,这次总结了目前认为比较坑的地方,以后有其他发现再添加到这个文档里。

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。默认情况下,Harbor不包含Helm Charts的功能支持。如果你希望在Harbor中管理Helm Charts,你需要进行一些额外的配置和安装。 1. **启用ChartMuseum功能**: - Harbor从1.6版本开始引入了对Helm Charts的支持,但这需要通过启用ChartMuseum来实现。你可以通过修改Harbor的配置文件来启用此功能。 - 编辑`harbor.yml`文件,找到`expose`部分添加以下内容: ```yaml expose: type: ingress tls: enabled: true certificate: name: your-certificate ``` - 保存配置文件后,重新启动Harbor服务以使更改生效。 2. **安装Helm Push插件**: - Helm Push插件允许你将Helm Charts推送Harbor。你可以使用以下命令安装Helm Push插件: ```sh helm plugin install https://github.com/chartmuseum/helm-push ``` - 安装完成后,你可以使用`helm push`命令将Helm Charts推送Harbor3. **创建ChartMuseum项目**: - 在Harbor界面上创建一个新项目,用于存储Helm Charts。确保该项目具有适当的权限设置。 - 在创建项目时,选择“ChartMuseum”作为项目类型。 4. **上传Helm Charts**: - 你可以使用`helm push`命令将Helm Charts上传到Harbor。例如: ```sh helm push my-chart-0.1.0.tgz harbor ``` - Helm Charts将被上传到你在Harbor中创建的ChartMuseum项目中。 5. **访问和管理Helm Charts**: - 一旦Helm Charts被上传到Harbor,你可以通过Harbor的用户界面访问和管理它们。只有具有适当权限的用户才能执行这些操作。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值