Skip to main content
logoTetrate Service BridgeVersion: next

Helm TSB Uninstallation

To uninstall TSB, installed using helm, you can use helm uninstall to uninstall a release. Uninstallation must be done in the following order:

  1. Data Plane.
  2. Control Plane.
  3. Management Plane.

TSB prevents the deletion of critical resources, which must be disabled to allow uninstallation. Disable it by annotating the operator deployments, then restarting them.

kubectl annotate -n istio-gateway deployment tsb-operator-data-plane --overwrite tsb.tetrate.io/deletion-protection=disabled
kubectl annotate -n istio-system deployment tsb-operator-control-plane --overwrite tsb.tetrate.io/deletion-protection=disabled
kubectl annotate -n tsb deployment tsb-operator-management-plane --overwrite tsb.tetrate.io/deletion-protection=disabled

kubectl rollout restart -n istio-gateway deployment tsb-operator-data-plane
kubectl rollout restart -n istio-system deployment tsb-operator-control-plane
kubectl rollout restart -n tsb deployment tsb-operator-management-plane

Deletion protection can also be disabled by setting this value in each operator's helm values file, then running a helm upgrade.

operator:
deletionProtection: disabled

Data Plane Uninstallation

helm uninstall dp tetrate-tsb-helm/dataplane --namespace istio-gateway

Once Helm has removed all the resources associated with the last release of the data plane chart, you will need to manually remove some resources created during the uninstallation process that are untracked by Helm.

kubectl delete serviceaccount tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrole tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrolebinding tsb-helm-delete-hook --ignore-not-found
kubectl delete istiooperators.install.istio.io --all -n istio-gateway --ignore-not-found

Control Plane Uninstallation

helm uninstall cp tetrate-tsb-helm/controlplane --namespace istio-system

Once Helm has removed all the resources associated with the last release of the control plane chart, you will need to manually remove some resources created during the uninstallation process that are untracked by Helm.

kubectl delete serviceaccount tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrole tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrolebinding tsb-helm-delete-hook --ignore-not-found
kubectl delete apiservices.apiregistration.k8s.io v1beta1.external.metrics.k8s.io
kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io xcp-edge-istio-system
kubectl delete mutatingwebhookconfigurations.admissionregistration.k8s.io xcp-edge-istio-system

Management Plane Uninstallation

helm uninstall mp tetrate-tsb-helm/managementplane --namespace tsb

Once Helm has removed all the resources associated with the last release of the management plane chart, you will need to manually remove some resources created during the uninstallation process that are untracked by Helm.

kubectl delete serviceaccount tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrole tsb-helm-delete-hook --ignore-not-found
kubectl delete clusterrolebinding tsb-helm-delete-hook --ignore-not-found
kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io xcp-central-tsb
kubectl delete mutatingwebhookconfigurations.admissionregistration.k8s.io xcp-central-tsb