关于 helm-release-management
该技能为 Helm chart 的日常发布管理提供操作指引,面向负责 Kubernetes 发布的开发和运维人员。内容涵盖安装、升级、卸载、状态查询、版本历史与发布列表。
主要功能
- 01安装并配置 Helm release
- 02升级现有 release 并处理值覆盖
- 03卸载 release,可选择保留历史
- 04按命名空间列出 release
- 05查看状态、资源、清单和值
- 06查询 release 修订历史
适用场景
- 01在指定命名空间部署 Helm chart
- 02升级 chart 版本或调整配置值
- 03检查 release 状态和部署资源
- 04跨命名空间查看发布及历史
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill helm-release-management安装后在 Claude Code 中输入/helm-release-management确认已加载。
附带文件REFERENCE.md
详细介绍
Helm 发布管理
全面介绍日常 Helm 发布操作,包括安装、升级、卸载和发布跟踪。
何时使用此技能
| 在以下情况下使用此技能…… | 在以下情况下改用 …… |
|---|---|
运行 helm install、helm upgrade、helm uninstall 或列出发布 | 升级失败且需要回滚或恢复卡住的状态时,使用 helm-release-recovery |
| 检查发布状态、历史记录或推出新的 Chart 版本 | 重点在于跨环境配置值时,使用 helm-values-management |
| 将现有 Chart 从预发布环境提升到生产环境 | 编写要安装的 Chart 时,使用 helm-chart-development |
何时使用
在以下情况下自动使用此技能:
- 用户请求部署或安装 Helm Chart
- 用户提到升级或更新 Helm 发布
- 用户想要列出或管理跨命名空间的发布
- 用户需要检查发布历史记录或状态
- 用户请求卸载或移除发布
核心发布操作
安装新发布
# Basic install
helm install <release-name> <chart> --namespace <namespace> --create-namespace
# Install with custom values
helm install myapp bitnami/nginx \
--namespace production \
--create-namespace \
--values values.yaml \
--set replicaCount=3
# Install with atomic rollback on failure
helm install myapp ./mychart \
--namespace staging \
--atomic \
--timeout 5m \
--wait
# Install from repository with specific version
helm install mydb bitnami/postgresql \
--namespace database \
--version 12.1.9 \
--values db-values.yaml
# Dry-run before actual install
helm install myapp ./chart \
--namespace prod \
--dry-run \
--debug
关键标志:
--namespace- 目标命名空间(务必明确指定)--create-namespace- 如果命名空间不存在,则创建--values/-f- 指定值文件--set- 覆盖单个值--atomic- 失败时自动回滚(推荐)--wait- 等待资源就绪--timeout- 最长等待时间(默认 5m)--dry-run --debug- 预览但不安装
升级现有发布
# Basic upgrade with new values
helm upgrade myapp ./mychart \
--namespace production \
--values values.yaml
# Upgrade with value overrides
helm upgrade myapp bitnami/nginx \
--namespace prod \
--reuse-values \
--set image.tag=1.21.0
# Upgrade with new chart version
helm upgrade mydb bitnami/postgresql \
--namespace database \
--version 12.2.0 \
--atomic \
--wait
# Install if not exists, upgrade if exists
helm upgrade --install myapp ./chart \
--namespace staging \
--create-namespace \
--values values.yaml
# Force upgrade (recreate resources)
helm upgrade myapp ./chart \
--namespace prod \
--force \
--recreate-pods
关键标志:
--reuse-values- 重用现有值,并与新值合并--reset-values- 重置为 Chart 默认值,忽略现有值--install- 如果发布不存在,则安装--force- 强制更新资源(谨慎使用)--recreate-pods- 即使没有变更也重新创建 Pod--cleanup-on-fail- 升级失败时删除新资源
值覆盖优先级(从低到高):
- Chart 默认值(Chart 中的
values.yaml) - 之前的发布值(使用
--reuse-values时) - 父 Chart 值
- 用户指定的值文件(
-f values.yaml) - 单个值覆盖(
--set key=value)
卸载发布
# Basic uninstall
helm uninstall myapp --namespace production
# Uninstall but keep history (allows rollback)
helm uninstall myapp \
--namespace staging \
--keep-history
# Uninstall with timeout
helm uninstall myapp \
--namespace prod \
--timeout 10m \
--wait
列出发布
# List releases in namespace
helm list --namespace production
# List all releases across all namespaces
helm list --all-namespaces
# List with additional details
helm list \
--all-namespaces \
--output yaml \
--max 50
# List including uninstalled releases
helm list --namespace staging --uninstalled
# Filter releases by name pattern
helm list --filter '^my.*' --namespace prod
关键标志:
--all-namespaces/-A- 列出所有命名空间中的发布--all- 显示所有发布,包括失败的发布--uninstalled- 显示已卸载的发布--failed- 仅显示失败的发布--pending- 显示待处理的发布--filter- 按发布名称筛选(正则表达式)
发布信息与历史记录
检查发布状态
# Get release status
helm status myapp --namespace production
# Show deployed resources
helm status myapp \
--namespace prod \
--show-resources
查看发布历史记录
# View revision history
helm history myapp --namespace production
# View detailed history
helm history myapp \
--namespace prod \
--output yaml \
--max 10
检查发布
# Get deployed manifest
helm get manifest myapp --namespace production
# Get deployed values
helm get values myapp --namespace production
# Get all values (including defaults)
helm get values myapp --namespace prod --all
# Get release metadata
helm get metadata myapp --namespace production
# Get release notes
helm get notes myapp --namespace production
# Get everything
helm get all myapp --namespace production
有关常见工作流(部署新应用、更新配置、升级 Chart 版本、多环境部署)、最佳实践、故障排查以及与其他工具的集成,请参阅 REFERENCE.md。
Agent 优化
| 场景 | 命令 |
|---|---|
| 列出发布(结构化) | helm list -n <ns> -o json |
| 发布历史记录(结构化) | helm history <release> -n <ns> --output json |
| 发布状态(结构化) | helm status <release> -n <ns> -o json |
| 值(结构化) | helm get values <release> -n <ns> -o json |
| 失败的发布 | helm list -n <ns> --failed -o json |
相关技能
- Helm 调试 - 排查部署失败问题
- Helm 值管理 - 高级值配置
- Helm 发布恢复 - 回滚和恢复策略
- ArgoCD CLI 登录 - 与 ArgoCD 集成 GitOps
- Kubernetes 操作 - 管理已部署的资源
参考资料
评论
支持 Markdown