pipeline-convert/clean-pod.sh

30 lines
1.2 KiB
Bash
Raw Normal View History

2024-07-04 09:12:58 +08:00
#!/bin/bash
# 定义时间阈值(秒)
THRESHOLD=$((48 * 60 * 60))
# 获取当前时间
current_time=$(date +%s)
# 获取并删除超过48小时的Pod
kubectl get pods --all-namespaces -o json | jq -r '.items[] | select(.metadata.name | test("^admin-workflow-.*-tensorboard-pod$")) | "\(.metadata.namespace) \(.metadata.name) \(.metadata.creationTimestamp)"' | while read namespace name creation_timestamp; do
creation_time=$(date -d "$creation_timestamp" +%s)
age=$((current_time - creation_time))
if [ $age -ge $THRESHOLD ]; then
echo "Deleting pod $name in namespace $namespace"
#kubectl delete pod $name -n $namespace
fi
done
# 获取并删除超过48小时的Service
kubectl get svc --all-namespaces -o json | jq -r '.items[] | select(.metadata.name | test("^admin-workflow-.*-tensorboard-svc$")) | "\(.metadata.namespace) \(.metadata.name) \(.metadata.creationTimestamp)"' | while read namespace name creation_timestamp; do
creation_time=$(date -d "$creation_timestamp" +%s)
age=$((current_time - creation_time))
if [ $age -ge $THRESHOLD ]; then
echo "Deleting service $name in namespace $namespace"
#kubectl delete svc $name -n $namespace
fi
done