When experimenting with something like ceph, installing it, making changes, uninstalling and reinstalling … you will find that more advanced apps tend to implement finalizers making a full uninstall rather challenging. More complex apps tend to have an uninstaller script for just this reason. When lacking such a script though, here is a generic script which can take care of a lot, or all of the clean up work:
** Note, you are entering a danger zone. **
#!/bin/bash
if [ "$1" == "" ]
then
echo "Syntax:"
echo ""
echo "$0 <searchstr>"
exit 1
fi
CRDS=`kubectl get crd --no-headers | grep $1 | cut -d ' ' -f 1`
array_crds=( $CRDS )
for crd in "${array_crds[@]}"
do
echo ""
echo $crd
RESOURCES=`kubectl get $crd --no-headers | grep $1 | cut -d ' ' -f 1`
array_resources=( $RESOURCES )
for next in "${array_resources[@]}"
do
echo $next
kubectl patch $crd $next -p '{"metadata":{"finalizers":null}}' --type=merge
kubectl delete $crd $next
done
done