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

回到主节点:

打包

上传仓库

报错,系统识别不了证书

要加个代码

上传成功:

如何从镜像当中拉取

直接复制

下载即可

相关推荐
瀚高PG实验室28 分钟前
CentOS 8 安装HGDB V4.5 psql命令执行报错
linux·运维·centos·瀚高数据库
chaofan98031 分钟前
AI驱动的浏览器自动化革命:Claude Code + BrowserCat MCP深度实践指南
运维·自动化·claude code
Fireworkitte2 小时前
DevOps 详解
运维·devops
平生不喜凡桃李2 小时前
Linux 线程概念与控制
java·linux·运维
codervibe2 小时前
从毕业设计到企业级模板:一次 Spring Boot 后端项目目录结构重构实录
后端·github
无敌的牛3 小时前
Linux重定向的理解
linux·运维·服务器
Github项目推荐3 小时前
Rust生态系统在Web开发中的优势(9754)
面试·github
java叶新东老师3 小时前
docker in docker - 在docker容器中使用宿主机的docker
linux·运维·flink
木宇(记得热爱生活)4 小时前
Ubuntu卡在启动画面:显卡驱动与密码重置
linux·运维·ubuntu
极客奇点4 小时前
容器化成本优化:K8s资源请求与限制的黄金法则——从资源画像分析到25%成本削减的实战指南
云原生·容器·kubernetes·降本增效·成本优化