2. Helm 安装与配置
本章将指导你在主流操作系统上完成 Helm 的安装、仓库配置与基础验证。安装方式分为包管理器安装和二进制脚本安装两种,推荐生产环境使用官方脚本或包管理器以保持版本一致性。
2.1 安装 Helm
2.1.1 Linux 安装
方式一:官方安装脚本(推荐)
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
方式二:apt(Debian/Ubuntu)
curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm
方式三:yum(RHEL/CentOS)
sudo yum install -y https://get.helm.sh/helm-latest-linux-amd64.tar.gz
# 或使用 rpm 仓库
curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
2.1.2 macOS 安装
方式一:Homebrew(推荐)
brew install helm
方式二:MacPorts
sudo port install helm
2.1.3 Windows 安装
方式一:Chocolatey
choco install kubernetes-helm
方式二:Scoop
scoop install helm
方式三:手动下载
从 Helm Releases 下载 helm-v3.x.x-windows-amd64.zip,解压后将 helm.exe 所在目录加入系统 PATH 环境变量。
版本确认:安装完成后执行
helm version,输出应包含 version.BuildInfo{Version:"v3.x.x"},确保为 Helm 3 及以上版本。
2.2 配置 Helm 仓库
Helm 使用 Chart 仓库 作为应用分发的中央存储。安装后需要添加官方或第三方仓库才能搜索和安装 Chart。
2.2.1 添加官方稳定仓库
helm repo add stable https://charts.helm.sh/stable
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
2.2.2 常用公共仓库列表
| 仓库名称 | URL | 说明 |
|---|---|---|
| stable | https://charts.helm.sh/stable | 官方稳定仓库(已归档,建议迁移至其他仓库) |
| bitnami | https://charts.bitnami.com/bitnami | 最活跃的第三方仓库,覆盖常用中间件 |
| prometheus-community | https://prometheus-community.github.io/helm-charts | Prometheus 生态监控 Chart |
| grafana | https://grafana.github.io/helm-charts | Grafana 官方 Chart |
| ingress-nginx | https://kubernetes.github.io/ingress-nginx | Nginx Ingress Controller |
| jetstack | https://charts.jetstack.io | cert-manager 证书管理 |
2.2.3 仓库管理常用命令
# 列出已添加的仓库
helm repo list
# 更新仓库索引(获取最新 Chart 列表)
helm repo update
# 移除仓库
helm repo remove <repo-name>
注意:添加仓库后必须执行
helm repo update 才能同步最新索引。如果仓库 URL 变更,需先 helm repo remove 再重新添加。
2.3 验证安装
完成安装和仓库配置后,通过以下步骤验证 Helm 是否正常工作:
- 检查版本
helm version --short # 预期输出: v3.x.x+... (例如 v3.14.0+g2c3c5b6) - 搜索 Chart
helm search repo bitnami/nginx # 应返回 nginx Chart 的版本列表 - 查看仓库列表
helm repo list # 应显示已添加的仓库名称和 URL - 安装测试 Chart
helm install test-nginx bitnami/nginx --dry-run --debug # --dry-run 模拟安装,不实际部署到集群
验证成功标志:所有命令无报错,
helm search 返回 Chart 列表,helm install --dry-run 输出渲染后的 YAML 资源清单。
2.4 Helm 常用命令概览
Helm 3 的命令体系围绕 Chart 管理、Release 管理 和 仓库管理 三大核心功能展开。下表列出日常使用频率最高的命令:
| 分类 | 命令 | 功能说明 | 常用参数 |
|---|---|---|---|
| 仓库管理 | helm repo add |
添加 Chart 仓库 | --username --password |
helm repo update |
更新本地仓库索引 | — | |
helm repo list |
列出已添加仓库 | — | |
| Chart 管理 | helm search |
搜索 Chart(支持仓库和 hub) | repo hub --versions |
helm pull |
下载 Chart 包到本地 | --untar --version |
|
helm create |
创建 Chart 脚手架 | --starter |
|
| Release 管理 | helm install |
安装 Chart 到集群 | --namespace --set --values --dry-run |
helm upgrade |
升级 Release | --install --reset-values --reuse-values |
|
helm rollback |
回滚到指定版本 | --cleanup-on-fail |
|
helm uninstall |
卸载 Release | --keep-history |
|
| 信息查询 | helm list |
列出已部署的 Release | --all-namespaces --filter |
helm status |
查看 Release 状态 | --show-resources |
2.5 Helm 安装与配置流程总览
下图展示了从安装 Helm 到首次部署 Chart 的完整链路:
2.6 常见安装问题与排查
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
command not found: helm |
Helm 未加入 PATH | 将 Helm 二进制所在目录加入 $PATH,或使用完整路径执行 |
Error: no repositories found |
未添加任何仓库 | 执行 helm repo add stable https://charts.helm.sh/stable |
Error: Kubernetes cluster unreachable |
kubeconfig 未配置或集群未启动 | 检查 kubectl cluster-info 是否正常,确认 KUBECONFIG 环境变量 |
Error: cannot connect to Tiller |
使用了 Helm 2 命令或 Tiller 未安装 | Helm 3 已移除 Tiller,确保使用 helm3 命令 |
Error: context deadline exceeded |
网络超时或仓库地址不可达 | 检查网络代理设置,尝试更换仓库源或使用 --insecure-skip-tls-verify |
最佳实践:建议将 Helm 版本与 Kubernetes 集群版本保持匹配。Helm 3 支持 Kubernetes 1.16+,使用
helm version 和 kubectl version 对比确认兼容性。