Skip to main content

Uninstall

Choose retain data or destroy data before running commands.

1. Inventory and back up​

export NAMESPACE='<namespace>'
kubectl get anzo,anzograph,pod,pvc --namespace "${NAMESPACE}"
kubectl get pv \
--output custom-columns=NAME:.metadata.name,CLAIM:.spec.claimRef.name,RECLAIM:.spec.persistentVolumeReclaimPolicy

Stop unless:

  • the required backup/export has been restored successfully in a test target;
  • every PVC and PV has an identified owner;
  • retention and finalizer behavior is understood;
  • no other custom resource uses the operator or CRD.

2. Retain data​

Set product retention fields before deletion. Confirm associated PVs use Retain when the volumes must survive PVC deletion. Then delete only the product resource:

kubectl delete anzo <graph-studio-name> --namespace "${NAMESPACE}" --wait=true
# Or:
kubectl delete anzograph <graph-lakehouse-name> --namespace "${NAMESPACE}" --wait=true

kubectl get pvc --namespace "${NAMESPACE}"
kubectl get pv

For standalone Helm, confirm retention first, then run:

helm uninstall <release-name> --namespace "${NAMESPACE}" --wait
kubectl get pvc --namespace "${NAMESPACE}"

Do not remove retained volumes until their data is no longer required.

3. Remove an unused operator​

After all managed resources are gone:

helm uninstall <operator-release> --namespace "${NAMESPACE}" --wait

Helm does not remove operator CRDs. Keep them unless a cluster administrator confirms that no resources of that type exist anywhere.

4. Destroy data​

Permanent deletion

Deleting PVCs or PVs can permanently destroy product data. Require an approved change record and verified backup before continuing.

Delete only the explicitly approved PVCs. Confirm completion with kubectl get pvc,pv. If deletion is blocked, inspect finalizers and storage-controller events; do not remove finalizers blindly. Automated teardown patterns and clean verification scripts can be referenced in Agentic reference.