4. Helm 安装与配置:Helm v3 安装、添加仓库、常用命令速查

Helm v3 是 Kubernetes 生态中事实上的包管理标准。本章将指导你完成 Helm v3 的安装、仓库配置以及核心命令的速查,为后续实现网络拓扑资源配额策略奠定工具基础。

4.1 Helm v3 安装方式对比

Helm v3 移除了 Tiller 服务端组件,架构更简洁、安全。以下为三种主流安装方式及其适用场景:

安装方式 命令 / 步骤 适用场景
官方脚本(推荐) curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash 快速安装,自动检测系统架构
包管理器 macOS: brew install helm
Windows: choco install kubernetes-helm
Linux: snap install helm --classic
与本地包管理生态集成
二进制下载 从 https://get.helm.sh/helm-v3.x.x-linux-amd64.tar.gz 下载并解压至 /usr/local/bin 离线环境或 CI/CD 管道
版本验证:安装完成后执行 helm version --short,输出应类似 v3.15.0+...etc。确保版本号 ≥ 3.10.0,以支持最新的 OCI 仓库特性。

4.2 添加与管理 Helm 仓库

Helm 仓库(Repository)是 Chart 包的存储与分发中心。添加仓库后,你可以搜索、安装和升级来自不同源的 Chart。

4.2.1 核心仓库操作

操作 命令示例 说明
添加仓库 helm repo add bitnami https://charts.bitnami.com/bitnami 将 Bitnami 仓库加入本地索引
更新仓库 helm repo update 拉取所有已添加仓库的最新 Chart 列表
列出仓库 helm repo list 显示已配置的仓库名称与 URL
移除仓库 helm repo remove bitnami 从本地索引中删除指定仓库
仓库安全提示:仅添加受信任的仓库源(如 Bitnami、官方 Stable、你自己的 OCI 仓库)。添加第三方仓库前,建议使用 helm repo index 验证其 index.yaml 文件完整性。

4.2.2 仓库搜索与 Chart 信息查看

# 搜索所有仓库中的 Chart
helm search repo nginx

# 查看 Chart 的详细信息(版本、依赖、描述)
helm show chart bitnami/nginx

# 查看 Chart 的默认 values 配置
helm show values bitnami/nginx

4.3 Helm 常用命令速查

以下命令覆盖了 Helm 日常使用的核心生命周期,从安装到回滚:

命令 功能 常用参数
helm install 安装一个新的 Release --name my-release --namespace my-ns ./mychart
helm upgrade 升级一个已存在的 Release --install --values custom-values.yaml
helm rollback 回滚到指定版本 my-release 2(回滚到 revision 2)
helm uninstall 卸载 Release 并删除相关资源 --keep-history(保留历史记录)
helm list 列出当前命名空间下的所有 Release --all-namespaces -a
helm get manifest 获取 Release 生成的 Kubernetes YAML my-release
helm history 查看 Release 的修订历史 my-release
常用组合:在 CI/CD 中,推荐使用 helm upgrade --install --atomic --timeout 5m 实现幂等部署。如果升级失败,--atomic 会自动回滚到上一个稳定版本。

4.4 Helm v3 架构与命令流程

下图展示了 Helm v3 的客户端架构以及从仓库到集群的典型命令流程:

Helm v3 架构与命令流程 用户 / CI Helm 客户端 Chart 仓库 K8s API Server helm install 拉取 Chart 返回 Chart 包 渲染模板 + 提交 Release 存储 Helm v3 将 Release 信息 存储在 K8s Secret 中 架构简化 v3 移除 Tiller 服务端 直接与 API Server 交互

4.5 快速验证:安装一个示例 Chart

完成安装与仓库配置后,建议通过以下步骤验证环境是否就绪:

  1. 添加 Bitnami 仓库:helm repo add bitnami https://charts.bitnami.com/bitnami
  2. 更新仓库索引:helm repo update
  3. 安装 Nginx 测试:helm install my-nginx bitnami/nginx --namespace default --create-namespace
  4. 查看 Release 状态:helm list -n default
  5. 卸载测试:helm uninstall my-nginx -n default
OCI 仓库支持:Helm v3 原生支持 OCI 格式的仓库。添加 OCI 仓库时使用 helm repo add myrepo oci://registry.example.com/helm-charts,无需 helm repo update,直接通过 helm install myrelease myrepo/mychart --version 1.0.0 安装。