最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

Helm

来源:博客园

本文主要介绍关于Helm的相关概念、组件、安装


(相关资料图)

1、Helm简介

1.1 Helm是什么?

Helm是 Kubernetes 的包管理器,是 Kubernetes 中的第一个对应用程序进行管理的支撑工具。

helm类似Ubuntu 中使用的apt、Centos中使用的yum ,能快速查找、下载和安装软件包。

1.2 为什么使用Helm ?

在Kubernetes 中部署应用会使用到k8s的多种资源,如cm、deploy、svc、secret、pv、pvc,这些 k8s 资源过于分散,不方便进行管理。直接通过 kubectl 来管理一个应用,步骤比较繁琐,随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂。

Helm可以统一管理、配置和更新这些分散的 k8s 的应用资源文件,复用一套应用模板,支持发布的版本管理和控制,很大程度上简化了Kubernetes应用的部署和管理。

使用 Helm 后不用需要编写复杂的应用部署文件,可以以简单的方式在 Kubernetes 上查找、安装、升级、回滚、卸载应用程序

1.3 Helm相关组件及概念

1、相关概念

Repository:Helm Chart包仓库,提供了很多应用的Chart包供用户下载使用

官网仓库:https://artifacthub.io/ 阿里云仓库:https://developer.aliyun.com/hub

Charts:Helm使用的打包格式,预先配置好的安装包资源。

一个Chart包含了一组K8s资源集合的描述文件(比如service, deployment, configmap, serviceaccount, rbac,等),这些要素都是以template文件的形式存在,再结合values文件,最终渲染出能够被k8s执行的yaml文件

Chart有特定的文件目录结构(template、values),如果开发者想自定义一个新的 Chart,只需要使用Helm create命令生成一个目录结构即可进行开发。

Release:通过Helm将Chart部署到 K8s集群时创建的特定实例,包含了部署在容器集群内的各种应用资源。

可以用不同的release name多次安装同一个chart,比如:当集群中需要多个redis实例,你可以使用不同的配置文件安装redis chart。

2、相关组件:Helm客户端和Tiller服务端

Helm 客户端负责 chart 和 release 的创建和管理以及和 Tiller 的交互。

Tiller 服务端运行在 Kubernetes 集群中,它会处理Helm客户端的请求,与 Kubernetes API Server 交互。

2、Helm安装

环境说明:

该文档安装环境为CentOS Linux release 7.9.2009,内核版本为3.10.0-1160.81.1.el7.x86_64

daocker版本为:20.10.8 ,k8s相关版本为kubelet-1.21.1 kubeadm-1.21.1 kubectl-1.21.1

安装说明:

安装方法: 二进制安装,安装版本:v3.6.3

#下载wget https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz    #解压tar zxf helm-v3.6.3-linux-amd64.tar.gz  #移动二进制文件到bin下cp linux-amd64/helm /usr/local/bin/#查看版本helm version

===参考文档===

helm入门教学:https://zhuanlan.zhihu.com/p/350328164

关键词: 相关概念 应用程序 一个新的