09-Helm 包管理
Helm 包管理概念引入安装一个应用需要多少 YAML一个 WordPress 至少需要Deployment、Service、PVC、ConfigMap、Secret、Ingress……手写 6 个文件每个几十行还要处理它们之间的依赖关系。Helm 就是 K8s 的包管理器类似 Linux 的 apt/yum或 Node.js 的 npm。一条命令就能安装整个应用所有 YAML 都打包好了。K8s 世界Chart.yamlhelm install完整 K8s 应用Node.js 世界package.jsonnpm install完整应用原理讲解三个核心概念概念含义类比Chart一个 Helm 包包含所有 K8s 资源定义npm 的 packageReleaseChart 的一次安装实例npm install 后的 node_modulesRepository存放 Chart 的仓库npm registry (npmjs.com)Chart 的结构my-chart/ ├── Chart.yaml # Chart 的元数据名字、版本、描述 ├── values.yaml # 默认配置值用户可以覆盖 ├── templates/ # K8s 资源模板 │ ├── deployment.yaml # Deployment 模板Go 模板语法 │ ├── service.yaml # Service 模板 │ └── ingress.yaml # Ingress 模板 └── charts/ # 依赖的子 Chart模板 Values 可定制Helm 的强大之处在于模板化。同一个 Chart通过传不同的 values可以部署到不同环境# values.yaml默认值replicaCount:1image:repository:nginxtag:1.27# values-prod.yaml生产环境覆盖replicaCount:3image:tag:1.27-alpineresources:limits:cpu:500mmemory:256Mi# 开发环境用默认值helminstallweb my-chart# 生产环境用自定义值helminstallweb my-chart-fvalues-prod.yaml# 也可以直接覆盖单个值helminstallweb my-chart--setreplicaCount3常用命令# 创建 Charthelm create my-chart# scaffold 一个标准 Chart# 安装helminstallmy-app ./my-chart/# 从本地目录安装helminstallmy-app bitnami/nginx# 从仓库安装需要先 helm repo add# 管理helm list# 查看所有 Releasehelm status my-app# 查看 Release 状态helm upgrade my-app ./my-chart/# 升级helm rollback my-app1# 回滚到版本 1helm uninstall my-app# 卸载# 调试helm template ./my-chart/# 预览渲染后的 YAML不连接集群helminstallmy-app ./my-chart/ --dry-run# 模拟安装校验语法helm get values my-app# 查看已安装 Release 的 valueshelmhistorymy-app# 查看版本历史Helm 的版本管理每次helm upgrade都会创建一个新的版本revision。你可以随时回滚helm rollback 1v1: 初始安装v2: 升级v3: 改配置回到 v1 状态每个 revision 都保留随时可以回滚动手实验配套实验位于docs/labs/beginner/helm/本实验不依赖外部 Chart 仓库——用helm create从零创建本地 Chart避免网络问题。步骤 1创建集群和本地 Chartcddocs/labs/beginner/helmbashsetup.shsetup.sh会自动创建一个本地 Helm Chartmy-chart/镜像使用 nginx:1.27。步骤 2认识 Chart 结构# 查看 Chart 的文件结构ls-Rmy-chart/# 查看默认配置catmy-chart/values.yaml# 预览渲染后的 YAML不实际安装helm template my-chart/步骤 3安装和自定义# 从本地 Chart 安装helminstallmy-nginx ./my-chart# 查看 Releasehelm list# 查看 Helm 创建的资源kubectl get all-lapp.kubernetes.io/instancemy-nginx# 用自定义值安装第二个实例helminstallcustom-nginx ./my-chart\--setreplicaCount2\--setservice.typeNodePort# 对比两个 Release 的值helm get values my-nginx helm get values custom-nginx步骤 4升级和回滚# 升级到 3 个副本helm upgrade my-nginx ./my-chart--setreplicaCount3# 查看版本历史helmhistorymy-nginx# 回滚到版本 1helm rollback my-nginx1# 确认回滚成功helmhistorymy-nginx kubectl get pods-lapp.kubernetes.io/instancemy-nginx步骤 5清理bashteardown.sh自检问题Chart、Release、Repository 分别是什么查看答案 **Chart** 是一个 Helm 包包含一组 K8s 资源模板和默认配置。**Release** 是 Chart 被安装后的实例——同一个 Chart 可以安装多次每次产生一个独立的 Release。**Repository** 是存放和分发 Chart 的仓库类似 npm registry。helm template和helm install --dry-run的区别是什么查看答案 helm template 在本地渲染模板并输出 YAML**不连接集群**适合快速预览模板结果或 CI 中做 lint 检查。helm install --dry-run 会连接集群模拟安装包括资源验证但不实际创建资源适合验证 Chart 在当前集群上是否能成功安装。调试模板语法用 template验证安装可行性用 --dry-run。你的团队需要把同一个微服务部署到 dev/staging/prod 三个环境。用 Helm 怎么管理查看答案 创建一个 Chart然后用三个 values 文件values-dev.yaml1 副本低资源、values-staging.yaml2 副本、values-prod.yaml3 副本高资源启用 HPA。部署时 helm install app my-chart -f values-{env}.yaml。这样只维护一份模板环境差异通过 values 管理。下一步你掌握了 K8s 的包管理器。接下来学习怎么看到集群里发生了什么→ 10. 可观测性与排错本文来自 K8s Guide—— 开源免费的 Kubernetes 中文学习指南️ 初学者轨道 面试轨道从零基础到拿 Offer 一站式覆盖 每篇文章配套 Kind 实验脚本本地一键运行 本文源码docs/beginner/17-helm.md⭐如果对你有帮助欢迎 Stargithub.com/callmebg/k8s-guide

相关新闻

Qwen-Agent文档解析:5步打造智能PDF/Word问答系统

Qwen-Agent文档解析:5步打造智能PDF/Word问答系统

Qwen-Agent文档解析:5步打造智能PDF/Word问答系统 【免费下载链接】Qwen-Agent Agent framework and applications built upon Qwen>3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc. 项目地址: https://gitcode.com/Git…

2026/7/27 11:20:08 阅读更多 →
七月AI代码审查实践月结:从单文件审查到全仓库质量地图的演进路径

七月AI代码审查实践月结:从单文件审查到全仓库质量地图的演进路径

七月AI代码审查实践月结:从单文件审查到全仓库质量地图的演进路径 过去一个月,团队在AI代码审查方向上完成了从"逐文件审查"到"全仓库质量地图"的体系化演进。这篇月结围绕审查模式、工具链打通、质量指标体系三个维度,梳…

2026/7/27 11:20:08 阅读更多 →
SimAI:高性能AI训练仿真系统的架构设计与优化指南

SimAI:高性能AI训练仿真系统的架构设计与优化指南

SimAI:高性能AI训练仿真系统的架构设计与优化指南 【免费下载链接】SimAI 项目地址: https://gitcode.com/gh_mirrors/si/SimAI SimAI是业界首个面向大规模AI模型训练和推理的全栈高精度仿真系统,由阿里云开源。该系统通过详细建模LLM训练全流程…

2026/7/27 11:20:08 阅读更多 →

最新新闻

OpenClaw生态演进:从AI思考到行动的技术革命

OpenClaw生态演进:从AI思考到行动的技术革命

1. OpenClaw生态演进全景:从技术宣言到产业革命 当我在2023年初次接触OpenClaw的1.0版本技术白皮书时,就像看到2007年的iPhone开发者文档——一个充满可能性的新世界正在打开。短短几个月后,2.0报告的发布让我意识到:这场变革的速…

2026/7/27 11:36:13 阅读更多 →
A3C强化学习算法:原理、实现与优化实践

A3C强化学习算法:原理、实现与优化实践

1. A3C算法概述:从策略梯度到异步优势 A3C(Asynchronous Advantage Actor-Critic)是DeepMind在2016年提出的强化学习算法,它巧妙地将策略梯度方法、Actor-Critic框架和异步训练机制相结合。作为一名长期研究深度强化学习的工程师&…

2026/7/27 11:36:13 阅读更多 →
TPS65810/11 I2C驱动与寄存器配置实战指南

TPS65810/11 I2C驱动与寄存器配置实战指南

1. 项目概述与核心价值如果你正在开发基于TI TPS65810或TPS65811电源管理单元(PMU)的嵌入式系统,比如智能手机、平板电脑或是其他便携式设备,那么与这颗芯片“对话”将是你绕不开的核心任务。这颗高度集成的PMU,内部塞…

2026/7/27 11:36:13 阅读更多 →
DAC5686增益控制、时钟配置与输出设计实战解析

DAC5686增益控制、时钟配置与输出设计实战解析

1. 项目概述:深入理解DAC5686的核心价值 在射频信号链、高速数据采集或者任意需要将数字序列精准还原为模拟波形的系统中,数模转换器(DAC)扮演着从数字世界到模拟世界的“翻译官”角色。它的性能直接决定了最终输出信号的质量、保…

2026/7/27 11:36:13 阅读更多 →
Zend-Expressive性能优化实战:从代码到部署的全链路加速方案

Zend-Expressive性能优化实战:从代码到部署的全链路加速方案

Zend-Expressive性能优化实战:从代码到部署的全链路加速方案 【免费下载链接】zend-expressive PSR-15 middleware in minutes! 项目地址: https://gitcode.com/gh_mirrors/ze/zend-expressive Zend-Expressive作为一款轻量级PSR-15中间件框架,以…

2026/7/27 11:36:13 阅读更多 →
如何在Rails项目中集成Mobile Fu?零基础入门指南

如何在Rails项目中集成Mobile Fu?零基础入门指南

如何在Rails项目中集成Mobile Fu?零基础入门指南 【免费下载链接】mobile-fu Automatically detect mobile requests from mobile devices in your Rails application. 项目地址: https://gitcode.com/gh_mirrors/mo/mobile-fu Mobile Fu是一款专为Rails应用…

2026/7/27 11:35:13 阅读更多 →

日新闻

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:54 阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/27 6:31:56 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/27 4:01:12 阅读更多 →

月新闻