当前位置: 首页 > news >正文

helm的原理及作用

Helm 是 Kubernetes 的包管理工具,就像 Ubuntu 系统的 apt、CentOS 系统的 yum 以及 Python 的 pip 一样,它能帮助用户更便捷地管理 Kubernetes 应用。下面从 Helm 的基本概念、工作原理、使用场景、常用操作等方面为你详细介绍:

基本概念

  • Chart:它是 Helm 管理的应用安装包,包含了运行一个应用所需的所有资源定义文件,比如 Deployment、Service、ConfigMap 等 Kubernetes 资源的 YAML 文件,类似于 RPM 或 DEB 软件包。
  • Release:是 Chart 在 Kubernetes 集群中的一个实例。同一个 Chart 可以在同一个集群中多次安装,每次安装都会创建一个新的 Release。
  • Repository:用于存储和共享 Chart 的地方,可类比于软件源,用户可以从不同的仓库中搜索和下载所需的 Chart。

工作原理

Helm 主要由客户端(Helm)和服务端(Tiller,在 Helm 3 中已移除)两部分组成。Helm 客户端负责与用户交互,接收用户的命令并处理 Chart。在 Helm 3 中,移除了 Tiller,Helm 客户端直接与 Kubernetes API 服务器通信,将 Chart 中的资源部署到集群中。

使用场景

  • 应用部署:借助 Helm,能够快速部署复杂的应用。比如,部署一个包含 Web 服务器、数据库和缓存的应用时,只需一个命令就能完成所有组件的部署。
  • 应用升级与回滚:方便对已部署的应用进行升级和回滚操作。若升级过程中出现问题,可迅速回滚到上一个稳定版本。
  • 应用配置管理:允许用户通过参数化配置定制应用部署。不同环境(开发、测试、生产)可使用不同的配置参数,实现灵活部署。

常用操作

安装 Helm

Helm 可以在不同的操作系统上进行安装,以下是在 Linux 系统上使用脚本安装的示例命令:

bash

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
添加 Chart 仓库

bash

helm repo add stable https://charts.helm.sh/stable
更新仓库索引

bash

helm repo update
搜索 Chart

bash

helm search repo stable/mysql
安装 Chart

bash

helm install my-mysql stable/mysql
查看 Release 列表

bash

helm list
升级 Release

bash

helm upgrade my-mysql stable/mysql
回滚 Release

bash

helm rollback my-mysql 1
删除 Release

bash

helm uninstall my-mysql

优势

  • 简化部署:Helm 把多个 Kubernetes 资源文件打包成一个 Chart,通过参数化配置和模板引擎,极大简化了应用的部署过程。
  • 版本管理:对每个 Release 进行版本管理,便于追踪和管理应用的部署历史,还能方便地进行升级和回滚操作。
  • 共享与复用:可将自定义的 Chart 发布到仓库中供他人使用,也能使用他人共享的 Chart,提高开发效率。

相关文章:

  • AquaCrop 模型新视角:多技术助力农业精准水管理
  • 在一台服务器上通过 Nginx 配置实现不同子域名访问静态文件和后端服务
  • 解决社区录音应用横屏状态下,录音后无法播放的bug
  • JS逆向入门案例4——某数据服务平台数据爬取
  • Unity-Shader详解-其五
  • Coco AI 开源应用程序 - 搜索、连接、协作、您的个人 AI 搜索和助手,都在一个空间中。
  • sherpa-ncnn:Endpointing(断句规则)
  • 【最新版】likeshop连锁点餐系统-PHP版+uniapp前端全开源
  • 计数排序-详解
  • 机器学习第一讲:机器学习本质:让机器通过数据自动寻找规律
  • jquery+ajax+SpringBoot实现前后端分离技术
  • Java游戏服务器开发流水账(2)开发中Maven的管理
  • React 实现 JWT 登录验证的最小可运行示例
  • Oracle EBS FORM快捷键与触发器的关系与使用
  • 永久免费的小工具,内嵌微软接口
  • 二叉搜索树的插入操作(递归遍历)
  • C语言 指针(9)
  • 动态SQL与静态SQL
  • 10.王道_HTTP
  • 【AI论文】FlexiAct:在异构场景中实现灵活的动作控制
  • 阿里CEO:将以饱和式投入打法,聚焦几大核心战役
  • 越秀地产前4个月销售额约411.2亿元,达年度销售目标的34.1%
  • 习近平抵达莫斯科对俄罗斯进行国事访问并出席纪念苏联伟大卫国战争胜利80周年庆典
  • 专访|“甲亢哥”的操盘手,带NBA球星们玩转中国流量
  • 抗战回望20︱《山西省战区抗敌行政工作检讨会议议决案》:“强民政治”、“说服行政”
  • 共生与伴生:关于人工智能时代艺术评论的对象与主体的思考