helm学习

简介: helm学习

引用案例:

学习连接:https://www.bilibili.com/video/BV12D4y1Y7Z7/?p=7&vd_source=e03131cedc959fdee0d1ea092e73fb24 (时间:06:16)
helm新建一个chart,然后删除templates里面的文件,重新编写一个,最后完成发布,更新,回滚动作

1,创建一个模版的chart包,删除原来的内容,自定义成我们的需要的内容,后面我们自定义部署的yanm文件
heml create nginx-chart
cd nginx-chart

values.yaml #清空所有默认定义的变量,后面我们根据需要自定义
rm -rf templates/* #删除原来所有默认的部署yaml文件,后面我们根据需要自定义

2,自定义的模版yaml文件

deployment.yaml

values.yaml

3 ##安装(新建)releae实例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[root@master test]# helm install nginx-release ./nginx-chart/
NAME: nginx-release
LAST DEPLOYED: Fri Oct 4 09:09:10 2024
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None

查看实例启动情况
helm list
kubectl get pods
查看svc
kubectl get pod,svc,ep
ep是service后端匹配的pod的地址

浏览器访问通过nodeport映射出来的服务
比如我的地址是:
http://192.168.17.102:30001/

查看并确认pod运行的版本
kubectl get pod nginx-deployment-5c8469b67f-cq959 -o yaml|grep image
输出结果包含:
image: nginx:1.17

模拟修改代码,对版本进行升级
修改values.yml文件中的版本号
imageTag: 1.20.0

查看helm有哪些release
helm release   

  1. 升级release实例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
方法一:
helm upgrade release实例名 chart名 --set imageTag=1.19 #通过传递命令的方式进行升级,指定release名和chart名进行相关set设置的升级
方法二:
helm upgrade release实例名 chart名 -f /../mychart/values.yaml #通过指定yaml文件的方式进行升级,指定release名和chart名,相关的values.yaml文件进行升级
更新release实例
helm upgrade nginx-release nginx-chart -f nginx-chart/values.yaml
Release "nginx-release" has been upgraded. Happy Helming!
NAME: nginx-release
LAST DEPLOYED: Fri Oct 4 10:37:11 2024
NAMESPACE: default
STATUS: deployed
REVISION: 2
TEST SUITE: None

更新以后显示版本变化的有两个地方,上面的REVISION会变化,还有就是pod适用的镜像的版本也会变化
查看重新生成的pod名称
kubectl get pods
查看pod的image
kubectl get pod nginx-deployment-7dd78bf775-tz5mb -o yaml|grep image
输出结果包含:
image: nginx:1.20.0   

  1. 回滚release实例版本(将nginx的版本1.20.0回滚为1.17)

1
2
3
4
5
6
7
8
9
10
11
12
helm rollback release实例名 #指定release实例名,回滚到上一个版本
helm rollback release实例名 版本号 #注意版本号是release的版本号,不是镜像版本号

回滚后查看
helm list
release的版本是一个阿拉伯数字,不管是升级还是回滚,一直都是递增的
查看重新生成的pod名称
kubectl get pods
查看pod的image
kubectl get pod nginx-deployment-7dd78bf775-tz5mb -o yaml|grep image
输出的结果是版本回滚到了1.17
image: nginx:1.17   

[kod.lnybc.com)
[kod.lzxdjc.com)
[kod.zxbaoye.com)
[kod.jzxtyz.com)
[kod.cncs-epa.com)
[kod.xinwanheng.com)
[kod.20141212.com)

  1. 获取release的实力历史

1
2
3
helm history release实例名
示例:
helm history nginx-release   

目录
打赏
0
1
1
0
41
分享
相关文章
在Kubernetes中,helm是什么?如何使用?
【4月更文挑战第9天】在Kubernetes中,helm是什么?如何使用?
1019 5
Helm 简介:Kubernetes 的包管理器
Helm 简介:Kubernetes 的包管理器
223 2
AppFlow:无代码部署Dify并集成到企业微信
本文介绍如何通过计算巢AppFlow完成Dify的无代码部署,并将Dify应用集成到企业微信中使用。具体步骤包括:创建企业微信应用,获取AgentID和Secret;使用计算巢AppFlow模板创建连接流,配置Dify和企业微信的鉴权凭证;配置企业微信API接收消息和可信IP;最后测试应用确保正常运行。文中还提供了常见问题的解决方案,如域名主体校验未通过和配置企业可信IP报错等。
1646 11
AppFlow:无代码部署Dify并集成到企业微信
对话 | ECS如何构筑企业上云的第一道安全防线
随着中小企业加速上云,数据泄露、网络攻击等安全威胁日益严重。阿里云推出深度访谈栏目,汇聚产品技术专家,探讨云上安全问题及应对策略。首期节目聚焦ECS安全性,提出三道防线:数据安全、网络安全和身份认证与权限管理,确保用户在云端的数据主权和业务稳定。此外,阿里云还推出了“ECS 99套餐”,以高性价比提供全面的安全保障,帮助中小企业安全上云。
202148 16
对话 | ECS如何构筑企业上云的第一道安全防线
在K8S中,helm是什么?如何使用?
在K8S中,helm是什么?如何使用?
k8s学习--利用helm部署应用mysql,加深helm的理解
k8s学习--利用helm部署应用mysql,加深helm的理解
791 0
Ubuntu 22.04LTS版本二进制部署K8S 1.30+版本
这篇文章详细介绍了在Ubuntu 22.04 LTS系统上使用VMware Fusion虚拟化软件部署Kubernetes 1.30+版本的完整过程,包括环境准备、安装containerd、配置etcd、生成证书、部署高可用组件、启动Kubernetes核心组件以及网络插件的部署和故障排查。
539 5

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问