如何在kubernetes上删除使用helm部署失败的应用

解决方案步骤:

  1. 列出当前命名空间中的 Helm 发布

    bash

    复制

    下载

    helm list -n wx-system

    确认是否存在名为 redis 的发布

  2. 卸载现有的 Redis 发布

    bash

    复制

    下载

    helm uninstall redis -n wx-system
  3. 删除关联的 PVC(持久卷声明)

    bash

    复制

    下载

    kubectl delete pvc -n wx-system -l app.kubernetes.io/instance=redis
  4. 检查并清理残留资源

    bash

    复制

    下载

    # 检查服务
    kubectl get svc -n wx-system | grep redis
    
    # 检查配置
    kubectl get secret -n wx-system | grep redis
    
    # 如果发现残留资源,手动删除:
    kubectl delete svc,secret,statefulset -n wx-system -l app.kubernetes.io/instance=redis
  5. 重新运行安装命令

    bash

    复制

    下载

    helm install redis redis-18.12.1.tgz \
      --namespace wx-system \
      --set global.storageClass=nfs-client \
      --set master.service.type=NodePort \
      --set auth.password="*******" \
      --wait

如果问题仍然存在:

  1. 检查 Helm 发布状态

    bash

    复制

    下载

    helm status redis -n wx-system
  2. 强制删除残留状态

    bash

    复制

    下载

    helm delete redis -n wx-system --ignore-not-found
  3. 清理 Helm 秘密(secret)

    bash

    复制

    下载

    kubectl delete secret -n wx-system -l owner=helm,name=redis

重新安装时的备选方案:

如果名称冲突问题持续存在,可以尝试使用新名称安装:

bash

复制

下载

helm install new-redis-name redis-18.12.1.tgz \
  --namespace wx-system \
  --set global.storageClass=nfs-client \
  --set master.service.type=NodePort \
  --set auth.password="password01" \
  --wait

注意事项:

  1. 使用 --wait 参数时,确保所有依赖服务(如 nfs-client)已就绪

  2. 如果 NFS 存储有问题,检查 StorageClass 是否正确:

    bash

    复制

    下载

    kubectl get storageclass nfs-client -o yaml
  3. 安装后验证:

    bash

    复制

    下载

    kubectl get pods,svc,pvc -n wx-system

这些步骤应该能解决 "cannot re-use a name that is still in use" 错误,并成功部署 Redis。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值