kubernetes》》k8s》》Heml

Heml

资料
下载地址

安装
csharp 复制代码
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash


csharp 复制代码
# helm 添加 仓库
# helm repo add  仓库名称  仓库地址
helm repo add  stable  http://mirror.azure.cn/kubernetes/charts/
# 移除仓库
helm repo remove 仓库名称 
# 查看helm 仓库列表
helm repo list
# 结果如下
NAME                           	URL                                                               
nfs-subdir-external-provisioner	https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
aliyun                         	https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts            
stable                         	http://mirror.azure.cn/kubernetes/charts/ 

#  搜索 chart应用
helm  search repo  mysql
# 结果如下
NAME                            	CHART           VERSION	    APP VERSION	   DESCRIPTION                                       
aliyun/mysql                    	0.3.5        	           	Fast, reliable, scalable, and easy to use open-...
stable/mysql                    	1.6.9        	5.7.30     	DEPRECATED - Fast, reliable, scalable, and easy...
stable/mysqldump                	2.6.2        	2.4.1      	DEPRECATED! - A Helm chart to help backup MySQL...
stable/prometheus-mysql-exporter	0.7.1        	v0.11.0    	DEPRECATED A Helm chart for prometheus mysql ex...
aliyun/percona                  	0.3.0        	           	free, fully compatible, enhanced, open source d...
aliyun/percona-xtradb-cluster   	0.0.2        	5.7.19     	free, fully compatible, enhanced, open source d...
stable/percona                  	1.2.3        	5.7.26     	DEPRECATED - free, fully compatible, enhanced, ...
stable/percona-xtradb-cluster   	1.0.8        	5.7.19     	DEPRECATED - free, fully compatible, enhanced, ...
stable/phpmyadmin               	4.3.5        	5.0.1      	DEPRECATED phpMyAdmin is an mysql administratio...
aliyun/gcloud-sqlproxy          	0.2.3        	           	Google Cloud SQL Proxy                            
aliyun/mariadb                  	2.1.6        	10.1.31    	Fast, reliable, scalable, and easy to use open-...
stable/gcloud-sqlproxy          	0.6.1        	1.11       	DEPRECATED Google Cloud SQL Proxy                 
stable/mariadb                  	7.3.14       	10.3.22    	DEPRECATED Fast, reliable, scalable, and easy t...

查看 mysql 的chart信息

csharp 复制代码
# 查看chart的values信息
helm show values stable/mysql 
# 查看chart信息
helm show chart stable/mysql
# 获取关于该chart的所有信息
helm show all stable/mysql 


拉取仓库中的 mysql



》》values.yaml

chart支持在安装时根据参数进行定制化配置,而values.yaml 则提供这些配置参数的默认值

》》templates目录

各类Kubernetes 资源的配置模板都放置在这里。Helm会将 values.yaml 中的参数值 注入模板中,生成标准的yaml配置文件

定制化 chart

1>>指定 values文件

csharp 复制代码
helm install mysql --values=定制化的values.yaml

2>> --set 直接传入参数






升级和回滚 release

创建 chart

csharp 复制代码
# 创建自定义的chart
helm create zen
# 打包
helm package zen
# 安装
helm install release名称 zen-0.1.0.tgz


调试 chart

csharp 复制代码
# 检测chart.yaml 的语法,报告错误以及给出建议
helm lint chart.yaml
# helm install --dry-run --debug 会模拟安装 chart,并输出每个模板生成的YAML内容。
helm install --dry-run   chart.yaml  --debug

helm install

Helm按照以下顺序安装资源:

csharp 复制代码
# Helm 客户端不会等到所有资源都运行才退出。许多 charts 需要大小超过 600M 的  镜像,可能需要很长时间才能安装到集群中
# 你可以使用 helm status 来追踪 release 的状态,或是重新读取配置信息:
helm status  release名称 

Namespace

NetworkPolicy

ResourceQuota

LimitRange

PodSecurityPolicy

PodDisruptionBudget

ServiceAccount

Secret

SecretList

ConfigMap

StorageClass

PersistentVolume

PersistentVolumeClaim

CustomResourceDefinition

ClusterRole

ClusterRoleList

ClusterRoleBinding

ClusterRoleBindingList

Role

RoleList

RoleBinding

RoleBindingList

Service

DaemonSet

Pod

ReplicationController

ReplicaSet

Deployment

HorizontalPodAutoscaler

StatefulSet

Job

CronJob

Ingress

APIService

常用命令

csharp 复制代码
# 列出所有可被部署的版本
helm list   
helm ls
# 卸载chart
# 它将删除和该版本相关的所有相关资源(service、deployment、 pod等等)甚至版本历史。
helm uninstall chart名称(当时安装指定的release名称)
# --keep-history 选项, Helm将会保存版本历史。
helm uninstall chart名称(当时安装指定的release名称) --keep-history 
使用 helm list --uninstalled 只会展示使用了 --keep-history 删除的 release。
helm list --all 会展示 Helm 保留的所有 release 记录,包括失败或删除的条目(指定了 --keep-history)
# 查看chart状态
helm status chart名称
# 安装heml包 最简单的使用方法只需要传入两个参数:你命名的release名字和你想安装的chart的名称。
# 或者通过 --generate-name  让Heml生成要给release名称
# -f  myvalues.yml  可以指定对应的values,没有指定 是chart中自带
# helm show values stable/mysql > xxvalues.yml
helm install release名称 chart包 
helm install  chart包  --generate-name    
helm install  chart包  --generate-name   -f  myvalues.yml    指定values  文件 


相关推荐
Henry-SAP5 小时前
SAP PP核心引擎计划策略业务解析
人工智能·云原生·sap·erp
小白的码BUG之路7 小时前
Docker -- 构建nacos镜像
运维·docker·容器
赵谨言11 小时前
红蓝对抗Docker渗透复盘-技能与产出汇总
docker·容器·eureka
打工仔折腾 AI15 小时前
飞牛OS上用Docker Compose部署ExerciseDiary运动记录并配置远程访问
运维·人工智能·后端·python·docker·容器·ai agent 实战
天衍四九-16 小时前
Docker Compose企业实战系列(八·终章):多环境隔离实战,开发/测试/生产一键切换
运维·docker·容器
ysu_031417 小时前
Docker-Desktop-WSL2实战指南-Windows从安装配置到项目容器化
windows·python·docker·容器·composer·dockerfile·wsl2
陈陈CHENCHEN18 小时前
【Kubernetes】纯 IPv6 K8s 集群访问外部 IPv4 服务
云原生·容器·kubernetes
明王明王18 小时前
从零搭建一个 AI Infra 实验室⑫:Docker 为什么默认看不到 GPU
人工智能·docker·容器
天衍四九-18 小时前
Docker Compose企业实战系列(四):Redis生产级部署|密码加固、持久化、内存优化完整方案
redis·docker·容器
troy12819 小时前
如何在谷歌云(Google Cloud)上部署 Kubernetes 集群
云原生·容器·kubernetes