如何手动从Kubernetes卸载/删除tiller



我错误地安装了一个不安全的tiller配置。

我试过helm reset,但肯定有什么东西坏了,因为现在当我尝试安装helm:

$HELM_HOME has been configured at /home/chris/.helm.
Warning: Tiller is already installed in the cluster.
(Use --client-only to suppress this message, or --upgrade to upgrade Tiller to the current version.)
Happy Helming!

但是,如果我尝试helm ls,我会得到:

Error: could not find tiller

那么,由于helm重置不足,或者存在一些错误,我需要删除哪些资源才能正确地重新安装helm(helm init(?

Tiller可以使用命令卸载

helm reset --force

helm reset --force --wait

它将强制清理集群内的所有资源。这样,您就可以再次运行helm init

kubectl delete deployment tiller-deploy -n k8s-tiller
kubectl delete service tiller-deploy -n k8s-tiller
kubectl delete -n=k8s-tiller rs tiller-deploy-6f65cf89

最初,我运行init时将--namespace设置为k8s-tiller

这也可能有用:

kubectl get all --all-namespaces | grep tiller

我想这就是您想要的:

删除为tiller创建的所有敏感信息:

kubectl get -n kube-system secrets,sa,clusterrolebinding -o name|grep tiller|xargs kubectl -n kube-system delete
kubectl get all -n kube-system -l app=helm -o name|xargs kubectl delete -n kube-system

第一个命令删除所有可能留下的敏感信息,最后一个命令删除标签app=helm过滤的所有工作负载(pod、服务、部署、复制集(

我在Helm和Tiller之间使用SSL,所以这对我有效:

kubectl delete deployment tiller-deploy -n kube-system
kubectl delete service tiller-deploy -n kube-system
kubectl delete secret tiller-secret -n kube-system

如果你不删除这个秘密,你会得到"Tiller已经安装在这个集群上"的错误,并且证书不会更新(这会使Helm挂起(。

最新更新