Helm
00 分钟
2024-4-17
2024-4-18
type
status
date
slug
summary
tags
category
icon
password
data

Kubernetes包管理器Helm

简介

helm的功能类似于yum 或 apt,提供应用部署时候所需要的各种配置、资源清单文件,他与yum之类工具不同的是,在k8s中helm是不提供镜像的,这些镜像文件需要由专门的镜像仓库来提供。
notion image
基于helm来成功的部署一个应用服务,完整的工作流程如下: 1 部署一个稳定运行的k8s集群,在能管理k8s的主机上部署helm。 2 用户在客户端主机上,定制各种Chart资源和config资源,上传到专用的仓库(本地或者远程) 3 helm客户端向Tiller发出部署请求,如果本地有chart用本地的,否则从仓库获取 4 Tiller与k8s集群的api-server发送请求 5 api-server通过集群内部机制部署应用,需要依赖镜像的时候,从专门的镜像仓库获取。 6 基于helm部署好的应用实例,在k8s集群中,我们称之为release。

v3介绍

根据我们对 helm v2 版本的流程解析,我们发现,在客户端上部署tiller来维护 release相关的信息,有些太重量级了,所以在 helm v3 版本的时候,就剔除了专门的Tiller。在 Helm v3 中移除了 Tiller, 版本相关的数据直接存储在了 Kubernetes 中.
notion image

部署

通过官方脚本安装Helm:
也可以通过官方其他的安装方式:
案例可参考安装kubernetes-dashboard
notion image
安装完成后,可以去缓存中查看,缓存地址如下:
notion image

安装的信息:

chart包结构,里面都是资源清单信息如下:

文件信息:模版语言信息

模版中引用的数据来源:

文件夹下存在一个values.yaml,里面就是模版中引用的数据,修改自己需要的数据信息,就可以定制安装chart包
💡
Helm总结:
  • 定位:快速部署K8s应用
  • 结构:chart包,存在 模版、属性、配置、等一整套应用所需的资源清单信息
  • 定制:
    • helm install --set
      修改values.yaml
 

评论