62

Tiller 在我的 Kubernetes 集群中无法正常工作。我想删除 Tiller 的所有内容。Tiller (2.5.1) 有 1 个 Deployment、1 个 ReplicaSet 和 1 个 Pod。

我试过了:kubectl delete deployment tiller-deploy -n kube-system

  • 导致“部署“分蘖部署”被删除”
  • 但是,tiller-deploy 会立即重新创建
  • kubectl get deployments -n kube-system 显示 tiller-deploy 再次运行

我也试过:kubectl delete rs tiller-deploy-393110584 -n kube-system

  • 导致“replicaset”tiller-deploy-2745651589“被删除”
  • 但是,tiller-deploy-2745651589 会立即重新创建
  • kubectl get rs -n kube-system 显示 tiller-deploy-2745651589 再次运行

永久删除 Tiller 的正确方法是什么?

4

6 回答 6

89

要从 Kubernetes 集群中卸载 tiller:

helm reset

要从 Kubernetes 集群中删除失败的 tiller:

helm reset --force
于 2017-11-30T22:49:03.920 回答
36

如果你想以最干净的方式从集群中删除分蘖,那就是删除安装期间部署的所有组件。

如果您已经知道分蘖部署的命名空间:

$ kubectl delete all -l app=helm -n kube-system
pod "tiller-deploy-8557598fbc-5b2g7" deleted
service "tiller-deploy" deleted
deployment.apps "tiller-deploy" deleted
replicaset.apps "tiller-deploy-75f6c87b87" deleted
replicaset.apps "tiller-deploy-8557598fbc" deleted

小心该命令,将删除指定名称空间中的所有内容并带有相应的标签。

app分配的标签将标识所有组件(复制控制器、部署、服务等)。

您可以描述 pod 以验证标签:

$ kubectl describes pod tiller-deploy-8557598fbc-5b2g7 -n kube-system
Name: tiller-deploy-8557598fbc-5b2g7
Namespace: kube-system
Priority: 0
PriorityClassName: <none>
Node: srvlpi03 / 192.168.1.133
Start Time: Tue, 20 Aug 2019 15:51:03 -0400
Labels: app = helm
        name = tiller
        pod-template-hash = 8557598fbc
于 2019-08-20T20:15:59.293 回答
9

您必须卸载 3 件事才能完全摆脱分蘖:

  1. 部署
  2. 服务
  3. 秘密
    kubectl delete deployment -n some-namespace tiller-deploy 
    kubectl delete svc -n some-namespace tiller-deploy 
    kubectl delete secret -n some-namespace tiller-secret

如果启用了 TLS,请务必备份密钥,因为它存储所有证书。

于 2019-07-25T17:52:58.917 回答
2

您也可以尝试以下命令

kubectl delete deployment tiller-deploy --namespace kube-system
于 2019-05-09T07:11:23.340 回答
1

原来它作为副本集运行:

kubectl delete replicasets -n kube-system tiller-deploy-6fdb84698b

为我工作

helm reset --force没有卸下分蘖。

于 2019-08-06T14:22:51.903 回答
0

Kubectl 获取 hpa --all-namespaces(或 -n kube-system)

在正常的分蘖部署中,他们使用副本集。对于您的设置,可能有一个 Horizo​​ntalPodAutoscaler 对象,它针对分蘖的副本集。

您可以先删除 HPA,然后删除关联的副本集、pod、configmap,或者您可以使用“helm reset”命令重置 helm。

于 2019-06-28T10:52:10.740 回答