Kubernetes:Kubernetes应用包管理Helm

1. Helm介绍

Helm用于对需要在Kubernetes上部署的复杂应用进行定义、安装和更新。Helm以Chart的方式对应用软件进行描述,可以方便地创建、版本化、共享和发布复杂的应用软件。它是Kubernetes的软件包管理工具。包管理器类似Centos中使用的yum或者Python中的pip一样,能快速查找、下载和安装软件包

2. Helm相关组件介绍

  • Chart:一个Helm包,其中包含运行一个应用所需要的工具和资源定义,还可能包含Kubernetes集群中的服务定义。可以理解为包含了一组定义Kubernetes 资源相关的YAML文件。
  • Release:在Kubernetes集群上运行的一个Chart实例。在同一个集群上,一个Chart可以被安装多次。例如有一个MySQL Chart,如果想在服务器上运行两个MySQL数据库,就可以基于这个Chart安装两次。每次安装都会生成新的Release,会有独立的Release名称。
  • Repository:Helm chart的仓库,Repository本质上是一个Web服务器,该服务器保存了一系列的Chart软件包以供用户下载,并且提供了一个该Repository的Chart包的清单文件以供查询。Helm可以同时管理多个不同的Repository。
    Helm安装的主要流程,在仓库中查找需要的Chart,然后将Chart以Release的形式安装到Kubernetes集群中。

3. Helm的安装

使用二进制包安装helm
下载HelmClient:https://get.helm.sh/helm-v3.8.2-linux-amd64.tar.gz
或者直接执行如下命令

wget https://repo.huaweicloud.com/helm/v3.8.0/helm-v3.8.0-linux-amd64.tar.gz

下载过程比较慢。

// 解压安装包,有3个文件
]# tar zvfx helm-v3.8.2-linux-amd64.tar.gz
]# ls -l ./linux-amd64/
helm
LICENSE
README.md// 将helm放到bin目录下
]# cp linux-amd64/helm /usr/local/bin/// 查看安装版本
]# helm version// 查看命令
]# helm --help

4. Helm的使用

4.1. Chart仓库(repository)

添加、删除、列出和索引本地chart repositories。
helm官方:https://hub.helm.sh/
开源社镜像(推荐第1个):

  • https://charts.bitnami.com/bitnami
  • http://mirror.kaiyuanshe.cn/kubernetes/charts/
  • http://mirror.azure.cn/kubernetes/charts/
    如果所用服务器无法正常访问,可以查看网络策略并开通。
//添加chart仓库到本地(文件加载到了${HOME}/.cache/helm/repository/)
]# helm repo add kaiyuanshe http://mirror.kaiyuanshe.cn/kubernetes/charts/
]# helm repo add azure http://mirror.azure.cn/kubernetes/charts/
]# helm repo add bitnami https://charts.bitnami.com/bitnami//列出本地chart仓库
]# helm repo list
NAME        URL                                          
azure       http://mirror.azure.cn/kubernetes/charts/    
kaiyuanshe  http://mirror.kaiyuanshe.cn/kubernetes/charts/
bitnami     https://charts.bitnami.com/bitnami//删除本地chart仓库
]# helm repo remove kaiyuanshe//更新本地chart仓库
]# helm repo update

4.2. 搜索Chart

//搜索redis
]# helm search repo redis
]# helm search hub redis

4.2. 下载Chart

//下载到redis的chart到本地当前目录
]# helm pull bitnami/redis

4.3. 运行并管理release

  1. 运行release
//1. 使用仓库直接运行release
]# helm install my-redis bitnami/redis//2. 使用压缩包运行release
]# helm install my-redis mongodb-13.1.7.tgz//3. 使用解压后的目录运行release
]# helm install my-redis redis/
//当前目录也可以用.代替
]# helm install my-redis .
//当前目录也可以用.代替,并指定配置文件
]# helm install my-redis -f values-new.yaml .

以上三种方法中,如果要安装的机器上无法连接连接远程仓库,可以下载压缩包后,本地修改配置文件,运行第3种命令,并指定配置文件进行安装。

  1. 查看已经运行的release
]# helm list
NAME       NAMESPACE   REVISION    UPDATED                                   STATUS       CHART               APP VERSION
my-redis   default     1           2024-03-09 17:54:13.504601252 +0800 CST   deployed    redis-cluster-9.8.1     7.2.4
  1. 获取release的状态
]# helm status my-redis
  1. 删除releases
]# helm uninstall my-redis
  1. 获取releases部署历史
]# helm history mongodb-name2
REVISION    UPDATED                     STATUS      CHART                APP VERSION DESCRIPTION    
1           Sun Oct  9 17:54:13 2022    deployed    redis-cluster-9.8.1  7.2.4       Install complete
  1. 升级和回滚
//升级一个release
helm upgrade [RELEASE] [CHART] [flags]
//回滚release
helm rollback <RELEASE> [REVISION] [flags]

参考:
https://www.cnblogs.com/maiblogs/p/16771609.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/785419.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS实战开发-如何实现一个简单的健康生活应用(上)

介绍 本篇Codelab介绍了如何实现一个简单的健康生活应用&#xff0c;主要功能包括&#xff1a; 用户可以创建最多6个健康生活任务&#xff08;早起&#xff0c;喝水&#xff0c;吃苹果&#xff0c;每日微笑&#xff0c;刷牙&#xff0c;早睡&#xff09;&#xff0c;并设置任…

nodejs 中 yarn的安装和使用

Yarn是一个快速、可靠、易于使用的包管理工具,它是Facebook、Google、Tencent等公司使用的默认JavaScript包管理工具。Yarn可以帮助开发者在项目中管理依赖,确保不同环境之间的依赖一致性,并且加速依赖的下载和安装。 安装Yarn Yarn支持多种操作系统,包括macOS、Linux和W…

BabySQL【2019极客大挑战】

知识点&#xff1a; 功能分析 登录界面一般是 where username and password 可以从username出手&#xff0c;注释掉and语句单引号闭合绕过 通过测试和报错信息发现是一个单引号读取输入可以单引号闭合绕过关键字过滤 or and 过滤 || &&替换双写绕过select from wher…

【leetcode】力扣简单题两数之和

题目 思路 代码实现 #include<iostream> #include<unordered_map>using namespace std;class Solution { public:vector<int> TwoNumber(const vector<int>& nums, int target){vector<int> number_vector;unordered_map<int, int> …

【Linux】常见命令

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 常用命令 1. ls2. pwd3. cd4. touch5. cat6. mkdir7. rm8. cp9. mv10. tail11. vim12.…

TCP粘包是怎么回事,如何处理?

还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#xff0c;webgl&#xff0c;ech…

java-网络编程-(socket)-聊天室的编写 -01

socket 是java中的一插口,要实现网络通信的话,需要连接插口和插口,而数据的传输使用了流的思想,读数据操作运用了输入流,而写数据运用了输出流, 聊天对话的实现 一个类作为服务端对象,用于接受客户端写出的输出流, 一个类作为客户端对象,用于输到的服务端的进行读取的输入流…

css隐藏溢出隐藏的滚动条

msOverflowStyle: none: 这个属性用于在 Internet Explorer 浏览器中定义滚动条的样式。将其设置为 none 可以隐藏滚动条。 scrollbarWidth: none: 这个属性用于定义滚动条的宽度。将其设置为 none 可以隐藏滚动条。这个属性在一些新的浏览器中被支持&#xff0c;如 Firefox。…

巧克力(蓝桥杯)

文章目录 巧克力题目描述解题分析贪心 巧克力 题目描述 小蓝很喜欢吃巧克力&#xff0c;他每天都要吃一块巧克力。 一天小蓝到超市想买一些巧克力。超市的货架上有很多种巧克力&#xff0c;每种巧克力有自己的价格、数量和剩余的保质期天数&#xff0c;小蓝只吃没过保质期的…

基于《2023腾讯云容器和函数计算技术实践精选集》—探索腾讯云TKE的Docker容器、Serverless和微服务优势

重剑无锋&#xff0c;大巧不工。 ——金庸 腾讯云TKE&#xff0c;全称Tencent Kubernetes Engine&#xff0c;是一种完全托管式的容器服务。它可以帮助用户快速、高效地部署和管理Kubernetes集群&#xff0c;并提供一系列与之相关的云服务&#xff0c;如负载均衡、云硬盘、对象…

OSPF---开放式最短路径优先协议

1. OSPF描述 OSPF协议是一种链路状态协议。每个路由器负责发现、维护与邻居的关系&#xff0c;并将已知的邻居列表和链路费用LSU报文描述&#xff0c;通过可靠的泛洪与自治系统AS内的其他路由器周期性交互&#xff0c;学习到整个自治系统的网络拓扑结构;并通过自治系统边界的路…

掼蛋游戏规则

1、牌型&#xff1a;单牌、对牌、三张牌、三带二、顺子、同花顺、钢板&#xff08;例&#xff1a; 222333、444555&#xff09;、炸弹&#xff08;4涨以上相同的牌&#xff09;、三连对 2、牌大小&#xff1a;大王&#xff0c;小王&#xff0c;级牌&#xff0c;A&#xff0c;…

从学习海底捞到学习巴奴,中国餐饮带洋快餐重归“产品主义”

俗话说“民以食为天”&#xff0c;吃饭一向是国人的头等大事&#xff0c;餐饮业也是经济的强劲助推力。新世纪以来&#xff0c;餐饮业不断讲述着热辣滚烫的商业故事。 2006年&#xff0c;拥有“必胜客”、“肯德基”等品牌的餐饮巨头百胜集团&#xff0c;组织两百多名区域经理…

太阳能光伏发电应用场景有哪些?

随着全球能源结构的转型和环保意识的提升&#xff0c;太阳能光伏发电作为一种清洁、可再生的能源形式&#xff0c;其应用场景正日益广泛。下面&#xff0c;我们将详细探讨太阳能光伏发电的主要应用场景。 首先&#xff0c;工业领域是太阳能光伏发电的重要应用领域。工业厂房通常…

EasyCVR视频汇聚平台海康Ehome2.0与5.0设备接入时的配置区别

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

Nessus【部署 01】Linux环境部署漏洞扫描工具Nessus最新版详细过程分享(下载+安装+注册+激活)

Nessus最新版详细部署过程分享 1. 获取激活码2.主程序下载安装启动2.1 下载2.2安装2.3 启动 3.许可证及插件3.1 许可证获取3.2 插件安装 4.安装总结 Nessus官方网站&#xff1a; https://www.tenable.com/products/nessus/nessus-essentials 及介绍&#xff1a; 国际数据公司&…

AMBE-2000

这份文件是关于AMBE-2000™ Vocoder Chip的用户手册&#xff0c;由Digital Voice Systems, Inc. (DVSI) 提供。以下是手册的核心内容概要&#xff1a; 产品介绍&#xff1a; 产品介绍部分详细描述了AMBE-2000™ Vocoder Chip的主要特点和优势&#xff0c;以及它的应用领域。以下…

编程语言 MoonBit 本周有超多重磅更新等你来探索:expect 测试添加 inspect 函数,还有……

MoonBit 更新 1. expect 测试添加 inspect 函数 expect 测试添加针对 Show 接口的 inspect 函数&#xff0c;签名如下&#xff1a; pub fn inspect(obj: Show,~content: String "",~loc: SourceLoc _,~args_loc: ArgsLoc _ ) -> Result[Unit, String]⚠️ 此…

什么是软件缺陷(bug)?

什么是软件缺陷&#xff08;bug&#xff09;&#xff1f; 定义1&#xff1a;软件缺陷是计算机系统或程序中存在的任何一种破坏正常运行能力的问题或错误&#xff0c;或隐藏的功能缺陷或瑕疵。缺陷会导致软件产品在某种程度上不能满足用户的需求。 定义2&#xff1a;从产品内部…

ConfigMap和Secret配置Pod环境变量与热更新

目录 环境变量注入 卷挂载 最佳实践 在云原生应用开发和部署过程中&#xff0c;ConfigMap 和 Secret 是非常重要的资源对象&#xff0c;用于存储和管理应用程序的配置信息和敏感数据。然而&#xff0c;当我们更新 ConfigMap 或 Secret 的内容时&#xff0c;对于已经运行的 P…