首页 > 其他分享 >在K8S中,helm是什么?如何使用?

在K8S中,helm是什么?如何使用?

时间:2024-02-28 09:24:23浏览次数:23  
标签:Kubernetes -- Chart 如何 values helm Helm K8S

在Kubernetes(K8s)中,Helm 是一个用于简化Kubernetes应用程序部署和管理的包管理工具。它采用了声明式配置和模板化的概念,使得Kubernetes资源的打包、安装、升级、回滚等操作变得更加方便和高效。

Helm 主要由两个核心组件构成:

  1. Helm CLI(命令行接口): 提供了一系列命令,让用户能够在本地与Kubernetes集群交互,处理Helm Chart和Release。

  2. Chart:这是Helm的基本构建块,它是一个打包好的目录结构,包含了一组描述Kubernetes资源的YAML文件,以及一个描述应用配置选项的values.yaml文件。Chart也可以有依赖关系,这样就可以轻松管理复杂应用的多层依赖。

Helm 的使用步骤一般如下:

1.安装Helm
2.对于Helm 3(当前推荐版本)
# 下载适用于您操作系统的Helm客户端
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

# 或者通过各自平台的包管理器安装(以macOS为例)
brew install helm
3.初始化Helm (Helm 2.x版本需要此步骤,Helm 3.x不需要初始化)
# Helm 2.x版本需要初始化Tiller(Helm 3已废弃Tiller)
helm init --upgrade # 在Helm 2.x版本中升级或初始化Tiller
4.添加Helm仓库
helm repo add stable https://charts.helm.sh/stable # 添加官方稳定仓库
helm repo update # 更新仓库索引
5.搜索Chart
helm search repo <chart-name> # 搜索仓库中的可用Chart
6.下载并查看Chart
helm pull stable/<chart-name> --untar # 下载并解压Chart到当前目录
tree <chart-name> # 查看Chart的目录结构
7.安装Chart
helm install <release-name> <chart-name> \
  --create-namespace \
  --namespace <target-namespace> \
  --values=my-values.yaml # 如果有自定义配置文件
8.升级Chart
helm upgrade <release-name> <chart-name> \
  --values=new-values.yaml # 使用新配置文件升级
9.卸载Chart
helm uninstall <release-name>
10.查看已安装的Chart
helm list [-a] # 显示已安装的Release,默认只显示活动状态的,-a参数显示所有状态
11.查看Release详细信息
helm status <release-name>
12.回滚Chart
helm rollback <release-name> <revision> # 回滚到指定修订版本
13.创建和管理自己的Chart
  • 创建一个新的Chart工程结构,可以使用helm create <chart-name>命令。
  • 修改Chart的模板和values.yaml文件来适应你的应用需求。
  • 测试Chart,使用helm template <chart-name>生成Kubernetes资源配置清单。
  • 构建Chart包,使用helm package <chart-directory>

综上所述,以上是一些基本的Helm操作,具体的使用可能需要根据实际情况调整命令参数。通过Helm,你可以便捷地管理和分发Kubernetes应用,极大地提升了大规模应用部署和维护的效率。

标签:Kubernetes,--,Chart,如何,values,helm,Helm,K8S
From: https://www.cnblogs.com/huangjiabobk/p/18038947

相关文章

  • 在K8S中,etcd数据库中数据如何更改?
    在Kubernetes(K8s)中,etcd中的数据更改主要发生在以下几个场景中:创建、更新和删除Kubernetes资源对象:当用户在Kubernetes中创建(POST)、更新(PUT)或删除(DELETE)一个资源对象(如Pod、Service、Deployment等)时,KubernetesAPI服务器会将这些更改转换为对etcd的相应操作。API服务器会将更改......
  • 在K8S中,etcd是什么类型数据库?
    在Kubernetes(K8s)中,etcd是一个高度可靠、分布式的键值存储数据库,用于存储集群的共享配置和服务发现信息。etcd在Kubernetes架构中扮演着核心组件的角色,是集群状态数据的关键存储后端。1.etcd的类型:键值存储(Key-ValueStore):etcd最基本的功能是作为键值存储,它允许用户存储和......
  • 在K8S中,etcdctl如何使用?
    在Kubernetes(K8s)中,etcdctl是用于直接与etcd集群交互的命令行工具,主要用于管理和调试etcd存储中的键值对数据。etcd是K8s集群的核心组件之一,它作为一个高可用的分布式键值存储系统,用于保存集群的所有重要配置数据。以下是如何在Kubernetes环境中使用etcdctl的基本......
  • k8s架构解析
    Kubernetes(K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。Kubernetes由多个组件组成,每个组件都扮演着不同的角色。以下是Kubernetes中一些主要组件的详细说明:kube-apiserver:API服务器是Kubernetes集群的中心,提供了资源操作的唯一入口。它负责接收......
  • Ubuntu如何进救援模式
    linux的救援模式-1详解在Ubuntu中引导到救援模式或紧急模式这篇教程将介绍如何在Ubuntu22.04、20.04和18.04LTS版本中引导到救援Rescue模式或紧急Emergency模式。你可能已经知道,在RHEL7、RHEL8、Ubuntu16.04LTS及其更新的版本的Linux发行版中运行等级R......
  • centos如何换源
    centos如何换源?万事先备份mkdir-p/etc/yum/backup/cp-r/etc/yum.repos.d/*/etc/yum/backup/1、将源文件备份cd/etc/yum.repos.d/&&mkdirbackup&&mv*repobackup/2、下载阿里源文件curl-o/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com......
  • RunnerGo UI自动化测试脚本如何配置
    RunnerGo提供从API管理到API性能再到可视化的API自动化、UI自动化测试功能模块,覆盖了整个产品测试周期。RunnerGoUI自动化基于Selenium浏览器自动化方案构建,内嵌高度可复用的测试脚本,测试团队无需复杂的代码编写即可开展低代码的自动化测试。 以一条简单的搜索场景为例,本文......
  • 面试官:如何设计一个高并发系统?
    面试题如何设计一个高并发系统?面试官心理剖析面试官对高并发系统的深入询问,实际上是对求职者专业技能和经验的精准检验。在许多公司发布的职位描述(JD)中,高并发经验被视作一项重要的加分项,这反映了当前互联网行业对高并发处理能力的极高要求。对于那些真正在互联网公司中负责过......
  • 初中英语优秀范文100篇-091How to Eat in a Healthy Way-如何以健康的方式饮食
    PDF格式公众号回复关键字:SHCZFW091记忆树1Hello,everybody.I'mLiHua.翻译大家好,我是李华简化记忆李华句子结构Hello,everybody.这是一个常见的打招呼的方式,通常用于引起听众的注意。在这里,“Hello”是一个感叹词,而“everybody”是一个代词,表示“每个人”,表示......
  • 如何使用ETLCloud拉通金蝶云
    一、ETLCloud集成组件ETLCloud采用了一种创新的基于平台底座的理念。它通过将组件和平台进行分离,用户可以在平台上自行下载和安装所需的组件,而无需升级整个底座版本。这样用户就可以通过不断升级组件来增强数据集成平台的处理能力。同时,平台开发了适用于主流SaaS和应用系统的对接......