当前位置: 首页 > news >正文

【Kubernetes】使用Helm简化k8s部署、管理

使用Helm简化Kubernetes部署、管理

Helm 是 Kubernetes 的包管理工具,能够简化应用的部署、管理和升级流程。以下是使用 Helm 的基本步骤和常见操作。

先决条件

想成功和正确地使用Helm,需要以下前置条件。

  1. 一个 Kubernetes 集群(参考macOS上优雅运行Docker容器)
  2. 确定你安装版本的安全配置
  3. 安装和配置Helm。

安装Helm

macOS

brew install helm

Windows

choco install kubernetes-helm

Debian/Ubuntu

sudo apt-get install curl gpg apt-transport-https --yes
curl -fsSL https://packages.buildkite.com/helm-linux/helm-debian/gpgkey | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/helm.gpg] https://packages.buildkite.com/helm-linux/helm-debian/any/ any main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm

基本概念

概念 描述 简单类比
Chart Helm 的应用包,包含模板和默认配置。 nginx.deb 安装包文件
Repository Chart 的存储仓库,用于分发和共享。 Ubuntu 的软件源(如 archive.ubuntu.com)
Release 在集群中运行的 Chart 的一个实例。 系统上正在运行的 nginx 进程
Values 用于覆盖 Chart 中模板默认参数的配置。 安装软件时传入的配置参数(如安装路径)

Helm的一般操作:

  • helm search:    搜索chart
  • helm pull:     下载chart到本地目录查看
  • helm install:    上传chart到Kubernetes
  • helm list:      列出已发布的chart
  • helm uninstall: 卸载一个版本

Bitnami

Bitnami 是一家被 VMware 收购的公司,长期专注于为流行开源软件提供打包好的、跨平台的安装程序。在容器化时代之前,他们就为数百个应用提供了虚拟机镜像、云镜像和原生安装包。

Bitnami是Helm中最常用的仓库之一,提供了许多常用的Kubernetes应用程序的Helm Charts。Helm作为Kubernetes的包管理器,允许用户从Chart repository快速查找和安装软件包。此外,用户可以通过Helm命令获取Bitnami Charts的详细信息。

Bitnami 提供了数百个经过验证的 Chart,涵盖:

数据库

helm install my-postgresql bitnami/postgresql
helm install my-redis bitnami/redis
helm install my-mongodb bitnami/mongodb

消息队列与中间件

helm install my-kafka bitnami/kafka
helm install my-rabbitmq bitnami/rabbitmq
helm install my-nginx bitnami/nginx

应用框架

helm install my-wordpress bitnami/wordpress
helm install my-joomla bitnami/joomla
helm install my-redmine bitnami/redmine

使用Helm部署一个MySQL

这里是没有使用Helm部署数据库MySQL的例子,需要手动管理

  1. 创建命名空间
  2. 创建本地存储PV和StorageClass
  3. 创建MySQL配置ConfigMap
  4. 创建MySQL密码Secret
  5. 创建MySQL StatefulSet
  6. 创建MySQL Service
  7. 部署脚本

下面就看看如何用Helm简化部署MySQL

1. 添加Bitnami仓库(若添加过,忽略)

helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

2. 创建自定义values文件

创建 mysql-values.yaml 文件:

image:registry: docker.iorepository: mysqltag: 8.0.34pullPolicy: Alwaysauth:rootPassword: "root123!"database: "myapp"username: "appuser"password: "app1234!"replicationUser: "replicator"       # 复制专用用户replicationPassword: "replica-pass" # 复制用户密码primary:persistence:enabled: truesize: 8GistorageClass: "local-path"resources:requests:memory: "512Mi"cpu: "250m"limits:memory: "1Gi"cpu: "500m"secondary:replicaCount: 1persistence:enabled: truesize: 8GistorageClass: "local-path"extraEnvVars:- name: MYSQL_ROOT_PASSWORDvalue: "root123!"# 禁用所有辅助功能
volumePermissions:enabled: falsearchitecture: "replication"

3. 部署MySQL

helm install my-mysql bitnami/mysql -f mysql-values.yaml -n mysql --create-namespace --version=9.14.0

验证

  1. 进入Pod
kubectl exec -ti my-mysql-primary-0 -n mysql -- /bin/sh
  1. 链接主节点/从节点
mysql -h my-mysql-primary.mysql.svc.cluster.local -uroot -p

k8s_helm

可以看到只需要3步,就可以部署一个主从复制架构的MySQL,比手动管理是方便太多,这是因为helm封装很多细节,具体查看某个Chart可以把它拉去到本地,查看

helm pull bitnami/mysql --version=9.14.0 --untar

引用

java-developer

例子: https://github.com/WilsonPan/java-developer/k8s/helm

http://www.rkmt.cn/news/47467.html

相关文章:

  • CompletableFuture Java8 异步编程工具
  • 2025年评价高的单插插入门最新TOP品牌厂家排行
  • 【Python】基于 PyQt6 和 Conda 的 PyInstaller 打包工具 - 教程
  • Java EE初阶--多线程 - 教程
  • 2025年评价高的绿篱修剪机最新TOP厂家排名
  • 【转】Milo库OPCUA协议java实现
  • 2025年热门的超低压反渗透膜最新TOP品牌厂家排行
  • 2025年耐用的微型磁力齿轮泵厂家推荐及选购指南
  • 2025年靠谱的轻型卡车天窗用户好评厂家排行
  • 2025年11月蛋白胨厂家推荐:行业榜对比评测与参数排行
  • 2025年11月酵母抽提物品牌榜:五强横评与鲜味稳定性对比
  • 2025年11月白酒曲厂家推荐榜:五家口碑对比与性能评测
  • Nov 12
  • 【日记】解决了一个人际冲突,但耳机怕是永远找不回来了(1344 字)
  • 手写汉字识别准确率
  • 2025年诺士诚公司:全过程工程咨询资质全景深度解析
  • 2025年口碑好的免拉手封边条厂家推荐及选购参考榜
  • 2025年质量好的水泥毯厂家推荐及选购参考榜
  • 2025年专业的注塑挤出机螺杆TOP品牌厂家排行榜
  • 2025年正规的烤漆龙骨厂家最新权威推荐排行榜
  • Perplexity解惑
  • 2025年11月昆明男科医院排名榜:权威数据透视五家机构
  • 2025年靠谱的改性沥青设备厂家最新推荐权威榜
  • 2025年昆明泌尿生殖医院权威深度解析:专业诊疗体系与惠民服务全透视
  • 2025年11月昆明泌尿医院排行:五家机构资质服务对比与客观评价
  • AI大模型在智能家居中的落地场景 - 详解
  • 2025年优质的学生宿舍铁床厂家推荐及采购指南
  • 2025年质量好的淋浴房配件TOP实力厂家推荐榜
  • 2025年可靠的网带炉行业内口碑厂家排行榜
  • 2025年正规的模压桥架厂家推荐及选购参考榜