You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Helm Release卡在Uninstalling状态求助(AKS集群+Helm3)

解决Helm3 Release卡在uninstalling状态的问题

以下是针对AKS集群中Helm3 Release长期处于uninstalling状态的修复方法,可实现删除残留记录并复用Release名称:

方法1:手动清理Helm Release Secret(推荐)

Helm3将Release元数据存储在对应命名空间的Secret中(命名格式为sh.helm.release.v1.<RELEASE_NAME>.v<版本号>),直接清理该Secret即可移除残留的Release记录:

  1. 定位目标Release的Secret:
    kubectl get secrets -n <RELEASE_NAMESPACE> | grep <RELEASE_NAME>
    
    替换<RELEASE_NAMESPACE>为Release所在命名空间,<RELEASE_NAME>为目标Release名称。
  2. 确认该Release对应的K8s资源已完全清理(如Deployments、Services、PVC等),若有残留可手动删除:
    kubectl delete deployments,services,pvc --all -n <RELEASE_NAMESPACE> # 仅在确认无其他重要资源时使用
    
  3. 删除找到的Release Secret:
    kubectl delete secret <SECRET_NAME> -n <RELEASE_NAMESPACE>
    
    替换<SECRET_NAME>为步骤1中找到的Secret名称。
  4. 验证清理结果:
    helm list -a -n <RELEASE_NAMESPACE>
    
    此时应看不到目标Release,即可复用该名称重新安装。

方法2:强制更新Release状态

若不想直接删除Secret,可通过修改Secret内容将Release状态标记为已删除:

  1. 按方法1步骤1找到目标Secret名称。
  2. 执行patch命令更新Secret的status字段(以下命令将状态设置为deleted,值为base64编码后的{"status":"deleted"}):
    kubectl patch secret <SECRET_NAME> -n <RELEASE_NAMESPACE> --type merge -p '{"data":{"status":"eyJzdGF0dXMiOiJkZWxldGVkIn0="}}'
    
  3. 再次执行helm list -a验证状态是否更新,之后即可复用Release名称。

方法3:清理残留Hook资源

若卸载过程中Hook Pod未正常完成,可能导致Release状态卡住:

  1. 查找命名空间内的Hook相关Pod:
    kubectl get pods -n <RELEASE_NAMESPACE> | grep hook
    
  2. 删除所有残留的Hook Pod:
    kubectl delete pod <HOOK_POD_NAME> -n <RELEASE_NAMESPACE>
    
  3. 尝试重新执行卸载命令:
    helm uninstall <RELEASE_NAME> -n <RELEASE_NAMESPACE> --force
    

内容的提问来源于stack exchange,提问作者Saurav Saha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 15:40:41