如何查看 Helm 安装失败的原因

How to check reason for Helm install failure

我想使用 helm install . 启动 zookeeper,但它显示 Error: release <servicename> failed: services "zookeeper" already exists。如果我也执行 helm list,我什么也看不到。在安装该服务之前,我使用 helm list 检查它是否已经存在,但它不存在。

如何查看失败原因?

执行 helm list --all - Helm List

然后,如果您有一个冲突版本,那么可能需要使用 --purge 标志再次删除该版本

但可能是您有一个名为 zookeeper 的服务对象,它不是 helm 版本的一部分或尚未清理。您可以使用 kubectl get services 检查(或者添加 --all-namespaces 标志,如果它可能位于与您的上下文不同的名称空间中)。如果是这样,那么您需要直接使用 kubectl delete

删除资源

选项 01

访问 minikube 的 ETCD,找到并清理密钥。

Detailed procedure is here

命令:

https://gist.github.com/iahmad-khan/5d32b4070b6faf3836b932a7177095ff

选项02(会丢失已有的东西)

停止 minikube

删除用户主目录中的 kube 目录 ~/.minikube

启动一个新的 minikube

所以,我终于让它工作了。看起来我的 yaml 文件中有一些错误。但在这个过程中,我学会了如何正确清理 minikube 实例。我执行了以下命令来启动一个新的 minikube 实例,以防有人遇到类似的问题。这是在 CentOS 7 上完成的。感谢@Ijaz 为我指明了正确的方向。

minikube stop && minikube delete && rm -rf ~/.minikube && rm -rf ~/.kube
rm -rf /etc/kubernetes/
rm -rf /var/lib/minikube/certs/
minikube start --vm-driver=none

我认为最简单的解决方案是为安装命令添加--debug标志:

helm install chart my-chart --debug

或者如果您愿意:

helm  upgrade --install chart my-chart --debug

一一显示所有创建的资源以及安装过程中出现的相关错误。