k8s-helm

Helm:

什么是helm,在没有这个heml之前,deployment service ingress的作用就是通过打包的方式,把deployment service ingress这些打包在一块,一键式的部署服务,类似于yum

官方提供的一个类似于安全仓库的功能,可以实现一键化部署应用

三个部分组成:

Chart helm的软件包,部署包,service ingress,定义好的yaml资源,类似于yum的rpm包

Release: 可以理解为版本,也可以理解为在安装过程中,这个部署的应用起一个名字

Repository:仓库,提供一个服务器,服务器中包含chart的资源,yaml资源的保存的本地地址

下载 helm3

添加自动补齐

source <(helm completion bash)

安装仓库

直接复制命令

helm repo add bitnami https://charts.bitnami.com/bitnami

helm repo add stable http://mirror.azure.cn/kubernetes/charts

helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts

helm repo add incubator https://charts.helm.sh/incubator

如何查看仓库列表:

如何更新:

查询bitnami是否有nginx的资源

同理查其他

查看简要:

查看所有信息

如何安装:

Helm install:安装

My-nginx:release安装的名称或者版本

Bitnami/nginx:bitnami仓库名,nginx就是chart一系列yaml资源的集合

如何删除:

查看

删除

如何在 helm自定义模板:

根据自己的需求,定义chart,然后部署到集群当中去

Charts:用于存储依赖,如果这个chart依赖于其他的chart,依赖文件保存在这个目录

Chart.yaml:helm chart的元数据,包含了这个chart的名称,版本维护者信息等等

Template:包含清单模板的目录

Deployment.yaml部署应用的模板文件

Helpers.tpl帮助文档,告诉用户如何实现缩行为

hpa.yaml:定义了应用程序副本数的扩缩容行为

ingress.yaml:定义了外部流量如和转发到应用形成

NOTES.txt:注意事项

serviceaccount.yaml:应用程序的服务账号

service.yaml集群内部的访问

test-connection.yaml:测试的目录和文件,部署完chart之后,用来测试文件

values.yaml:核心文件,自定义的值,都是通过values.yaml,把我们的数据覆盖到安装的chart

验证语法是否正确:不能在当前目录检测,必须要在上一级目录检测,否则报错

正确模式:

打包

如何部署

Helminstall:安装chart

Nginx-11:release版本号

./nginx:当前目录下的nginx的chart

--dry-run--debug:这个chart不会被部署到集群当中,参数验证,测试chart的配置是否正确

安装:

如和删除

一键部署,一键删除

两种安装方式,基于目录和基于安装包,效果是一样的

演示基于目录安装

测试访问是否正常:

地址映射

  1. 修改chart之后,如何重新部署
  2. 回滚
  3. 如何上传harbor仓库

演示修改重新部署

访问测试

演示回滚:

演示上传harbor

重新安装一下即可

./ install

回到主节点:

打包

上传仓库

报错,系统识别不了证书

要加个代码

上传成功:

如何从镜像当中拉取

直接复制

下载即可

相关推荐
lifeng43211 小时前
Jenkins集成部署(图文教程、超级详细)
运维·jenkins
白手小弟1 小时前
python wxauto库实现微信自动化发送信息、回复、添加好友等
运维·自动化
ii_best1 小时前
ios按键精灵自动化的脚本教程:自动点赞功能的实现
运维·ios·自动化
3DVisionary2 小时前
数字图像相关DIC技术用于机械臂自动化焊接全场变形测量
运维·数码相机·自动化·焊接变形实验·数字图像相关dic技术·自动化焊接全场变形测量·非接触高精度环境适应性全场测量
ether-lin2 小时前
DevOps实战:用Kubernetes和Argo打造自动化CI/CD流程(2)
kubernetes·自动化·devops
IT机器猫2 小时前
Docker完整技术汇总
运维·docker·容器
无所不在的物质2 小时前
Jenkins基础教程
运维·云原生·自动化·jenkins
一休哥助手3 小时前
全面解析 Linux 系统监控与性能优化
linux·运维·性能优化
watl03 小时前
【Android】unzip aar删除冲突classes再zip
android·linux·运维
木心3 小时前
Git基本操作快速入门(30min)
git·github