これらのコマンドを使用してISTIOをインストールしました。
VERSION = 1.0.5
GCP = gcloud
K8S = kubectl
@$(K8S) apply -f istio-$(VERSION)/install/kubernetes/helm/istio/templates/crds.yaml
@$(K8S) apply -f istio-$(VERSION)/install/kubernetes/istio-demo-auth.yaml
@$(K8S) get pods -n istio-system
@$(K8S) label namespace default istio-injection=enabled
@$(K8S) get svc istio-ingressgateway -n istio-system
_
さて、すべてのコンテナ/入力/ egressなどを含めて完全にアンインストールするにはどうすれば(istio-demo-auth.yamlによってインストールされていますか?
ありがとう。
それらの ここでのドキュメント 、すべての仕様をyml
ファイルとして生成することができ、それを単純なKubectlのdelete
操作にパイプすることができます。
istioctl manifest generate <your original installation options> | kubectl delete -f -
_
これが例です。
istioctl manifest apply --set profile=default | kubectl delete -f -
_
このアプローチの欠点は、特に特定のコンポーネントを有効にした場合は、ISTIOをインストールしたときに使用したすべてのオプションを覚えておくことです。
Helmのチャートを使用してistio
をインストールした場合は、簡単にアンインストールできます。
まず、インストールされているすべてのチャートをリストします。
helm list -n istio-system
NAME NAMESPACE REVISION UPDATED STATUS
istiod istio-system 1 2020-03-07 15:01:56.141094 -0500 EST deployed
_
次の構文を使用してチャートを削除/アンインストールします。
helm delete -n istio-system --purge istio-system
helm delete -n istio-system --purge istio-init
...
_
これを行う方法の詳細については、 Webサイト を確認してください。
istio
またはistioctl
を独自のhelm
を使用してnamespace
をインストールしている場合は、namespace
を完全に削除することができます。これは、その中に作成されたすべてのリソースを削除します。
kubectl delete namespace istio-system
_
通常のISTIOアンインストール(ISTIOがHELMまたはISTIOCTLによってインストールされた方法に応じて)以下のステップを実行できます。
kubectl get pods -o=jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.namespace}{"\t"}{..image}{"\n\n"}{end}' -A | grep 'istio/proxyv' | grep -v istio-system
_
kubectl get crds | grep 'istio.io' | cut -f1-1 -d "." | xargs -n1 -I{} bash -c " echo {} && kubectl get --all-namespaces {} -o wide && echo -e '---'"
_
kubectl get crds | grep 'istio.io' | xargs -n1 -I{} sh -c "kubectl delete crd {}"
_
kubectl label default <namespace name> istio-injection=disabled
_
HELMチャートを見つける必要がないCRDSの削除
kubectl delete crd -l chart=istio
_