helm一键化部署pod

news2024/12/23 10:23:24

目录

概念

安装helm

helm的命令

自定义模版

回滚


概念

helm提供了一个模版,可以一键化的部署微服务。它通过打包的方式,把所有需要的yaml文件集合一起,然后一键部署,还可以支持回滚。

helm的本质:就是可以把k8s的部署可以配置,可以集成,可以动态的修改。

helm的三个概念:

Chart:用来部署安装k8s微服务的模版,类似于Linux里面的rpm包

Repository:仓库,用来保存Chart

Release:当我们使用Chart来部署微服务时,每部署一次就会有一个release。release可以理解为版本号。

安装helm

把metrics-server包拖入master主机上

tar -xf helm-v3.10.0-linux-amd64.tar.gz

cd linux-amd64/

mv helm /usr/local/bin/

vim /etc/profile

source /etc/profile

安装仓库和模版(仓库里面有模版chart)

helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add stable http://mirror.azure.cn/kubernetes/charts
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
helm repo add incubator https://charts.helm.sh/incubator

helm的命令

helm repo list 查看仓库

helm repo update 更新当前所有仓库的chart

helm search repo aliyun   查看当前仓库里面有多少个chart

helm show chart aliyun/nginx-lego  查看chart详细信息

helm repo remove aliyun 删除仓库

helm install redis1 stable/redis -n default  从指定的仓库中部署redis的pod

helm uninstall redis1 删除redis的pod

helm upgrade nginx1 nginx1 更新配置文件

helm rollback nginx1 1 回滚

nginx1/
├── charts                                         依赖环境,一般为空
├── Chart.yaml                                  包含chart的元信息,比如chart的版本、名称等等
├── templates                                    包含了部署k8s的应用pod的模版文件
│   ├── deployment.yaml                   基于控制器部署
│   ├── _helpers.tpl
│   ├── hpa.yaml                                做hpa的监控,用于自动伸缩
│   ├── ingress.yaml                           对外访问
│   ├── NOTES.txt
│   ├── serviceaccount.yaml               创建服务账号
│   ├── service.yaml                            创建service的清单
│   └── tests
│       └── test-connection.yaml
└── values.yaml                             

values.yaml:我们的配置是在values里面完成,集合了yaml文件在这个配置里面,当配置完成之后,可以通过values配置把参数传给templates里面的模版文件,进行覆盖。

自定义模版

mkdir helm

cd /opt/helm/

helm create nginx1

yum- y install tree

tree nginx1/

cd nginx1/

vim values.yaml

cd /opt/helm/

修改service的配置文件:

vim nginx1/templates/service.yaml

如果设置nodeport需要添加,如下

helm lint nginx1/  检查语法有没有错误

failed 0 才表示没有错误

helm package nginx1/  打包

此时就会生成一个包:

helm部署命令:helm install nginx1 /opt/helm/nginx1-0.1.0.tgz 

如果修改了yaml文件,需要更新

helm upgrade nginx1 nginx1  更新

回滚

helm history nginx1  查看历史版本

helm rollback nginx1 1 回滚,把2版本回到1版本

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

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

相关文章

低压电抗器与电容器安装距离

低压电抗器与电容器的安装距离是一个关键问题,主要考虑电气安全、热效应以及电磁干扰等因素。通常建议保持适当的安装距离以确保设备的正常运行和安全性。 以下是一些常见的参考原则: 1、热效应 电抗器和电容器在运行过程中都会产生热量。如果两者之间距…

代数模型(Algebraic Models)---线性规划------ + 案例 + Python源码求解(见文中)

目录 一、代数模型(Algebraic Models)详解1.1什么是代数模型?1.2代数模型的基本形式1.3 安装所需要的Python包--运行下述案例1.4代数模型的应用案例案例 1:市场供需平衡模型Python求解代码Python求解结果如下图: 案例 …

GDPU MySQL数据库 天码行空1 数据库的创建和基本操作

一、实验目的 1.熟知机房用机安全规则。 2.通过上机操作,加深对数据库系统理论知识的理解;通过使用具体的DBMS,了解一种实际的数据库管理系统,并掌握其操作技术;通过对实际题目的上机实验&…

Java8的函数式编程简介

文章目录 环境背景方法方法1:Java 7(传统方法)方法2:Java 7 (策略模式)方法3:Java 8的Lambda表达式方法4:Java 8内建的函数式接口Predicate方法5:Java 8的方法引用方法6&…

JavaSE:5、类与对象

1、类的定义与对象的创建 定义属性 创建对象 2、对象的使用 使用一个变量来指代某个对象,只不过引用类型的变量,存储的是对象的引用,而不是对象本身 public class Main {public static void main(String [] argv){Person p1new Person();P…

Oracle发送邮件功能:配置自动化发信指南?

Oracle发送邮件服务设置方法?怎么用Oracle数据库发信? Oracle数据库作为企业级应用的核心,其内置的发送邮件功能为企业提供了强大的自动化工具。AokSend将详细介绍如何配置Oracle发送邮件功能,以实现自动化发信,从而提…

C和指针:指针

内存和地址 程序视角看内存是一个大的字节数组,每个字节包含8个位,可以存储无符号值0至255,或有符号值-128至127。 多个字节可以合成一个字,许多机器以字为单位存储整数,每个字一般由2个或4个字节组成。 由于它们包含了更多的位&…

react native(expo)多语言适配

项目基于 expo框架 开发。请先配置好 expo 开发环境 1.引入i18n-js npx expo install i18n-js 2.新建languages文件夹,其中包括英文、中文等语种目录。结构如下: *.json文件为语种翻译后的json键值对,用于UI中引用; { "appName&q…

【C语言】(指针系列3)数组指针+函数指针+typedef+函数数组指针+转移表

前言:前言:开始之前先感谢一位大佬,清风~徐~来-CSDN博客,由于是时间久远,博主指针的系列忘的差不多了,所以有顺序部分借鉴了该播主的,同时也加入了博主自己的理解,有些地方如果解释的…

MySQL语句案例编写复习

先看我的表数据和结构 1.查询年龄为16,17,18,19岁的女性员工信息。 select * from emp where gender 女 and age in(16,17,18,19); 2.查询性别为 男 ,并且年龄在 20-40 岁(含)以内的姓名为三个字的员工。 select * from emp where gender 男 and age between …

猫罐头多久喂一次?营养健康的罐头推荐

一.猫罐头多久喂一次 猫咪长期只食用干粮,容易饮水不足,从而引发上尿道或膀胱结石、堵塞等问题,所以最好每周喂至少2个猫罐头,帮助猫咪补充水分。如果条件允许,全罐喂养,每天都给猫咪吃猫罐头是…

车机中 Android Audio 音频常见问题分析方法实践小结

文章目录 前言1. 无声2. 断音3. 杂音4. 延迟播放5. 焦点问题6. 无声问题(连上 BT )其他完善中…… 前言 本文主要总结了一下车机开发中遇到的 Audio 有关的问题,同时参考网上的一案例,由于Audio 模块出现音频问题的场景很多,对每一个出现的问…

Blender渲染太慢怎么办?blender云渲染已开启

动画行业蓬勃发展,动画制作软件亦持续推陈出新,当制作平台日益丰富,创作难度降低,创作效率提升,如何高效完成复杂动画的渲染就成了从业者更关心的问题。 云渲染技术的出现,无疑为动画制作者提供了前所未有…

家庭理财管理系统

👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 家庭理财管理系统拥有多种角色,可以自行设置权限和用户等,主要功能有: 收入管理、支付管理、资产管理、负债详情、统计报表、家庭成员管理、用户管理等…

JavaSE - 易错题集 - 006

1. 哪个正确 A abstract类只能用来派生子类,不能用来创建abstract类的对象。 B final类不但可以用来派生子类,也可以用来创建final类的对象。 C abstract不能与final同时修饰一个类。 D abstract类定义中可以没有abstract方法。 正确答案&#xff1…

决策树算法上篇

决策树概述 决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。 示例一: 上表根据…

1.C++中程序的基本结构

在教孩子的学习过程中,使用的开发IDE为小熊猫Dev-C 6.7.5版本,以后的复杂截图,基本上都是基于此版本进行的,同时在适当的时候,录制视频也会基于此版本来完成。 以下为一个最基本的C程序 int main() {// 程序主体retur…

无痛生娃,00后当妈啦

姐妹们,你们家开始催婚了吗?我是00后,大学也才毕业一年啊,我妈已经开始给我物色对象,过年让我去相亲了!大学的时候不让谈,说怕异地以后感情不稳定,结果呢,一毕业要我结婚…

频域滤波为什么使用psf2otf函数?线性卷积和循环卷积等效的条件

线性卷积和循环卷积是本质不同的运算。然而,在某些条件下,线性卷积和循环卷积是等效的。建立这种等效关系具有重要意义。对于两个向量 x 和 y,循环卷积等于二者的离散傅里叶变换 (DFT) 之积的逆 DFT 变换。 禹晶、肖创柏、廖庆敏《数字图像处…

基于python+django+mysql+Nanodet检测模型的水稻虫害检测系统

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…