使用helm删除istio会留下一些工件,其中一些我无法删除。我该如何删除它?

问题描述 投票:0回答:2

当我尝试从我的集群中移除istio时(AKS,如果它很重要),使用

helm del --purge istio

它似乎工作。但是,当我再次尝试安装istio时,我收到了许多关于已经存在的错误的错误。比如“gateways.networking.istio.io”,“istio-grafana-post-install”等等。我写了一个脚本来手动清理残羹剩饭,但它在作业上失败了。特别是,

Error: jobs.batch "istio-security-post-install" already exists

我似乎无法使用kubectl删除此资源。我不知道为什么,但它找不到它。

我的问题是双重的

  1. 卸载istio的正确方法是什么,所以它不会留下所有这些工件?

和/或

  1. 清除所有未正确删除的istio工件的最佳方法是什么?

谢谢,埃里克

istio
2个回答
1
投票

我能够删除Istio,但删除后我可以安装它而不会出现错误或超时(导致pod状态为ContainerCreating)的唯一方法如下:

首次安装:

1)跟随here的步骤

2)然后安装Helm:

curl https://raw.githubusercontent.com/helm/helm/master/scripts/get > get_helm.sh
chmod 700 get_helm.sh
./get_helm.sh
kubectl create serviceaccount tiller --namespace kube-system
kubectl create clusterrolebinding tiller-cluster-rule \
 --clusterrole=cluster-admin \
 --serviceaccount=kube-system:tiller
helm init --service-account=tiller

3)安装Istio:helm install install/kubernetes/helm/istio --name istio --namespace istio-system

删除:

1)kubectl delete -f $HOME/istio.yaml

2)helm delete --purge istio

3)kubectl delete ns istio-system

3)kubectl delete -f install/kubernetes/helm/istio/templates/crds.yaml -n istio-system

*是的,这些基本上都是来自文档的3种卸载方法,但它确保删除所有组件)

4)再次安装Istio(重新安装适用于helm templatehelm install方法):helm install install/kubernetes/helm/istio --name istio --namespace istio-system

回答你的主要问题,似乎这仍然不明显,并没有100%“正确的方式:你可以在这个github issue中阅读更多关于这一点。


0
投票

GitHub上有一个helm delete的问题,但它应该通过“升级到2.12.1”修复,不知道你使用的是哪个版本的helm。

下面的命令可以帮我删除Istio安装。

helm del --purge istio

kubectl delete -f .\install\kubernetes\istio-demo.yaml

© www.soinside.com 2019 - 2024. All rights reserved.