Newer
Older
#! /bin/sh
#
# Clean kubernetes pods stuck in "Terminating" state
#
# Example:
#
# k8s-pods-cleaner.sh hub --yes
#
if [ -z "$1" ]; then
echo "Usage: $0 NAMESPACE [--yes]"
exit 0
fi
NS="$1"
PERFORM="$2"
for pod in $(kubectl get pod -n "$NS" | awk 'NR>1 && $3=="Terminating" {print $1}'); do
if [ -n "$PERFORM" ]; then
kubectl get pod -n "$NS" "$pod" -oyaml > "/tmp/$NS-$pod.yaml"
kubectl delete pod -n "$NS" "$pod" --force
else
kubectl get pod -n "$NS" "$pod"
fi
done