创建Helm脚本
一、创建脚本
Helm 是 Kubernetes 的包管理工具,它可以帮助您简化和自动化 Kubernetes 应用程序的部署和管理。使用 Helm,您可以创建和管理称为 Helm Chart 的应用程序打包,这些 Chart 包含了 Kubernetes 资源和配置信息,可以在不同的 Kubernetes 集群上部署和管理应用程序。
在 Helm 中,通过执行 `helm create` 命令,您可以快速创建一个新的 Helm Chart。这个命令会生成一个初始的 Helm Chart 目录结构,并包含一些示例文件,让您可以快速开始构建自己的应用程序。
以下是使用 `helm create` 命令初步生成 Helm Chart 文件的步骤:
1. 打开终端或命令行界面。
2. 进入您希望创建 Helm Chart 的目录,例如:`cd /path/to/charts`
3. 执行 `helm create` 命令并指定 Chart 的名称,例如:helm create rabbitmq-management
执行上述命令后,Helm 将在当前目录下创建名为 `rabbitmq-management` 的 Helm Chart 目录,并生成以下文件和目录:
rabbitmq-management
├── Chart.yaml
├── charts
├── templates
│ ├── _helpers.tpl
│ ├── deployment.yaml
│ ├── service.yaml
│ └── tests
│ └── test-connection.yaml
└── values.yaml
生成的文件中,`templates` 目录包含了一些示例模板文件,您可以根据需要修改或添加更多的模板文件来定义要部署的 Kubernetes 资源。`values.yaml` 文件包含了一些默认的配置值,您可以在这里定义 Chart 的默认配置,并在模板中使用这些配置。
一旦生成了初始的 Helm Chart 文件,您可以根据需要编辑和定制 Chart,然后使用 `helm install` 命令将应用程序部署到 Kubernetes 集群中。
二、测试语法
helm lint
helm lint ./rabbitmq-management
==> Linting ./rabbitmq-management
[INFO] Chart.yaml: icon is recommended1 chart(s) linted, 0 chart(s) failed
三、 查看脚本内容
helm template
helm template rabbitmq-management ./rabbitmq-management---
# Source: rabbitmq-management/templates/service.yaml
apiVersion: v1
kind: Service
metadata:name: rabbitmq-managementlabels:dce.daocloud.io/app: rabbitmq-managementhelm.sh/chart: rabbitmq-management-0.1.0app.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-managementapp.kubernetes.io/version: "1.16.0"app.kubernetes.io/managed-by: Helm
spec:type: NodePortports:- port: 5672targetPort: 5672protocol: TCPname: connection- port: 15672targetPort: 15672protocol: TCPname: managementselector:app.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-management
---
# Source: rabbitmq-management/templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:name: rabbitmq-managementlabels:dce.daocloud.io/app: rabbitmq-managementdce.daocloud.io/component: rabbitmq-managementhelm.sh/chart: rabbitmq-management-0.1.0app.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-managementapp.kubernetes.io/version: "1.16.0"app.kubernetes.io/managed-by: Helm
spec:replicas: 1selector:matchLabels:app.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-managementtemplate:metadata:labels:dce.daocloud.io/app: rabbitmq-managementdce.daocloud.io/component: rabbitmq-managementapp.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-managementspec:securityContext:{}containers:- name: rabbitmq-managementsecurityContext:{}image: "10.32.224.129/rabbitmq/rabbitmq:3.6.2-management"imagePullPolicy: IfNotPresentports:- name: connectioncontainerPort: 5672protocol: TCP- name: managementcontainerPort: 15672protocol: TCPlivenessProbe:tcpSocket:port: 5672initialDelaySeconds: 45timeoutSeconds: 1periodSeconds: 10successThreshold: 1failureThreshold: 3readinessProbe:tcpSocket:port: 5672initialDelaySeconds: 30timeoutSeconds: 1periodSeconds: 10successThreshold: 1failureThreshold: 9resources:limits:cpu: 1memory: 1Girequests:cpu: 100mmemory: 1Gi
---
# Source: rabbitmq-management/templates/tests/test-connection.yaml
apiVersion: v1
kind: Pod
metadata:name: "rabbitmq-management-test-connection"labels:helm.sh/chart: rabbitmq-management-0.1.0app.kubernetes.io/name: rabbitmq-managementapp.kubernetes.io/instance: rabbitmq-managementapp.kubernetes.io/version: "1.16.0"app.kubernetes.io/managed-by: Helmannotations:"helm.sh/hook": test
spec:containers:- name: wgetimage: busyboxcommand: ['wget']args: ['rabbitmq-management:5672']restartPolicy: Never
相关文章:
创建Helm脚本
一、创建脚本 Helm 是 Kubernetes 的包管理工具,它可以帮助您简化和自动化 Kubernetes 应用程序的部署和管理。使用 Helm,您可以创建和管理称为 Helm Chart 的应用程序打包,这些 Chart 包含了 Kubernetes 资源和配置信息,可以在不…...
2.05 购物车后台刷新并显示
一.用户登录添加商品使用cookie存入购物车,并把购物车商品传入到后台 步骤1:创建购物车BO对象 public class ShopcartBO {private String itemId;private String itemImgUrl;private String itemName;private String specId;private String specName;p…...
2023年第四届“华数杯”数学建模思路 - 案例:异常检测
文章目录 赛题思路一、简介 -- 关于异常检测异常检测监督学习 二、异常检测算法2. 箱线图分析3. 基于距离/密度4. 基于划分思想 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 一、简介 – 关于异常检测 异常…...
inline的盒子设置transform不生效
目录 如何遇到的问题原因为什么会这样怎么解决 如何遇到的问题 最近在开发过程中,因为需要对一个icon进行旋转,而icon本身,是设置span的伪类来进行的,结果我发现无论怎么设置transform都无法使其生效。 span::before {font-famil…...
自然语言处理学习笔记(四)————词典分词
目录 1.中文分词 2.词典分词 (1)词的定义 (2)词典性质——齐夫定律 (3)词典 (4)加载词典 (5)hanlp词典路径 1.中文分词 中文分词:指的是将一…...
jsoncpp库和nlohmann-json库实现JSON与字符串类型转换
在ROS中,可以使用jsoncpp库来实现JSON与字符串类型之间的转换。jsoncpp是ROS自带的一个JSON库,它提供了一些函数来解析和生成JSON数据。 下面是一个使用jsoncpp库实现JSON与字符串类型转换的示例代码: #include <ros/ros.h> #include…...
20230803 函数传参引用
定义多输出变量的函数时,通过直接传参数内存地址在函数内部直接修改外部变量的值。需要定义函数时 在输入参数前加 引用符号 & 。 C 值传递、指针传递、引用传递详解...
IDEA SpringBoot项目引入外部jar并打包
1、首先,我们再pom.xml中导入依赖包时,打包可以正常进行。 但如果我们引入了第三方的外部jar包(这里需要先把jar包添加到该项目依赖库中,这里不做演示),如图 2、导致打包时报错,程序包不存在或…...
ModaHub魔搭社区——阿里云通义千问宣布开源!70亿参数模型上线魔搭社区,免费可商用
通义千问开源!8月3日,AI模型社区魔搭ModaHub上架两款开源模型Qwen-7B和Qwen-7B-Chat,阿里云确认其为通义千问70亿参数通用模型和对话模型,两款模型均开源、免费、可商用。在多个权威测评中,通义千问7B模型取得了远超国内外同等尺寸模型的效果,成为当下业界最强的中英文7B…...
Jenkins 自动化部署实例讲解,另附安装教程!
【2023】Jenkins入门与安装_jenkins最新版本_丶重明的博客-CSDN博客 也可以结合这个互补看 前言 你平常在做自己的项目时,是否有过部署项目太麻烦的想法?如果你是单体项目,可能没什么感触,但如果你是微服务项目,相…...
arcgis字段计算器
1、两字段叠加。要求待叠加的字段类型为文本或字符串类型。如下: 2、字符串部分提取。...
数据结构: 线性表(无哨兵位单链表实现)
文章目录 1. 线性表的链式表示: 链表1.1 顺序表的优缺点1.2 链表的概念1.3 链表的优缺点1.4 链表的结构 2. 单链表的定义2.1 单链表的结构体2.2 接口函数 3. 接口函数的实现3.1 动态申请一个结点 (BuySListNode)3.2 单链表打印 (SListPrint)3.3 单链表尾插 (SListPushBack)3.4 …...
Exploring the Underlying Architecture of CSS3
引言 在现代的网页设计中,CSS(层叠样式表)起着至关重要的作用。CSS3作为最新的CSS标准,引入了许多令人兴奋的功能和特性。但是,要真正理解CSS3的底层架构实现原理,对于前端开发者来说,是非常重…...
方差分析||判断数据是否符合正态分布
方差分析练习题 练习学习笔记: (1) 标准差和标准偏差、均方差是一个东西。标准误差和标准误是一个东西。这两个东西有区别。 (2)单因素方差分析(MATLAB求解) (3)使用an…...
java linq多字段排序时间比较
public static void main(String[] args) {//100万条数据List<CrmInvestSaleUserCount> waitAssignUserList new ArrayList<>();for (int i 0; i < 1000000; i) {waitAssignUserList.add(new CrmInvestSaleUserCount().setSales_username("test" i…...
【c++】rand()随机函数的应用(二)——舒尔特方格数字的生成
目录 一、舒尔特方格简介 二、如何生成舒尔特方格 (一)线性同余法 1、利用线性同余法生成随机数序列的规律 (1) 当a和c选取合适的数时,可以生成周期为m的随机数序列 (2) 种子seed取值也是有周期的 2、利用线性同余法生成5阶舒尔特方格…...
“深入剖析JVM内部机制:探索Java虚拟机的运行原理“
标题:深入剖析JVM内部机制:探索Java虚拟机的运行原理 摘要:本文将深入探讨Java虚拟机(JVM)的内部机制,包括类加载、内存管理、垃圾回收、即时编译等关键概念和原理,帮助开发者更好地理解JVM的运…...
pandas 新增数据列的几种方式
准备数据 将下面的数据存到csv中 ymd,bWendu,yWendu,tianqi,fengxiang,fengli,aqi,aqiInfo,aqiLevel 2018-01-01,3℃,-6℃,晴~多云,东北风,1-2级,59,良,2 2018-01-02,2℃,-5℃,阴~多云,东北风,1-2级,49,优,1 2018-01-03,2℃,-5℃,多云,北风,1-2级,28,优,1 2018-01-04,0℃,-8℃…...
linux_驱动_iic总线获取si7006温湿度
应用层si7006.c #include<stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <stdlib.h> #include <string.h> #include <sys/ioctl.h> #include <arpa/inet.h>…...
虚拟机网络图标不见了
有3台虚拟机之前正常运行的,有一天打开虚拟机发现2台虚拟机的网络连接图标不见了,也ping不通另外两台。 解决:在终端执行以下命令,即可ping通 [roothadoop103 ~]# sudo nmcli network off [roothadoop103 ~]# sudo nmcli network…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
沙箱虚拟化技术虚拟机容器之间的关系详解
问题 沙箱、虚拟化、容器三者分开一一介绍的话我知道他们各自都是什么东西,但是如果把三者放在一起,它们之间到底什么关系?又有什么联系呢?我不是很明白!!! 就比如说: 沙箱&#…...
Python学习(8) ----- Python的类与对象
Python 中的类(Class)与对象(Object)是面向对象编程(OOP)的核心。我们可以通过“类是模板,对象是实例”来理解它们的关系。 🧱 一句话理解: 类就像“图纸”,对…...
C++中vector类型的介绍和使用
文章目录 一、vector 类型的简介1.1 基本介绍1.2 常见用法示例1.3 常见成员函数简表 二、vector 数据的插入2.1 push_back() —— 在尾部插入一个元素2.2 emplace_back() —— 在尾部“就地”构造对象2.3 insert() —— 在任意位置插入一个或多个元素2.4 emplace() —— 在任意…...
Selenium 查找页面元素的方式
Selenium 查找页面元素的方式 Selenium 提供了多种方法来查找网页中的元素,以下是主要的定位方式: 基本定位方式 通过ID定位 driver.find_element(By.ID, "element_id")通过Name定位 driver.find_element(By.NAME, "element_name"…...
新版NANO下载烧录过程
一、序言 搭建 Jetson 系列产品烧录系统的环境需要在电脑主机上安装 Ubuntu 系统。此处使用 18.04 LTS。 二、环境搭建 1、安装库 $ sudo apt-get install qemu-user-static$ sudo apt-get install python 搭建环境的过程需要这个应用库来将某些 NVIDIA 软件组件安装到 Je…...
中国政务数据安全建设细化及市场需求分析
(基于新《政务数据共享条例》及相关法规) 一、引言 近年来,中国政府高度重视数字政府建设和数据要素市场化配置改革。《政务数据共享条例》(以下简称“《共享条例》”)的发布,与《中华人民共和国数据安全法》(以下简称“《数据安全法》”)、《中华人民共和国个人信息…...
