如何批量删除k8s中的deployment和pod

kubectl  get pods 发现有很多pod出问题了

要删除所有Evicted或者 OutOfCpu 的pods应用如下语句:
 

# 打印所有Evicted  的 pod

kubectl get pods | grep Evicted | awk '{print $1}'

# 批量删掉pod

kubectl get pods | grep Evicted | awk '{print $1}' | xargs kubectl delete pod
# 打印所有OutOfCpu 的 pod

kubectl get pods | grep OutOfcpu | awk '{print $1}'

# 批量删掉pod

kubectl get pods | grep OutOfcpu | awk '{print $1}' | xargs kubectl delete pod
  • Terminating可使用kubectl中的强制删除命令
# 删除POD
kubectl delete pod PODNAME --force --grace-period=0

# 删除NAMESPACE
kubectl delete namespace NAMESPACENAME --force --grace-period=0
  • 若以上方法无法删除,可使用第二种方法,直接从ETCD中删除源数据
# 删除default namespace下的pod名为pod-to-be-deleted-0
ETCDCTL_API=3 etcdctl del /registry/pods/default/pod-to-be-deleted-0

# 删除需要删除的NAMESPACE
etcdctl del /registry/namespaces/NAMESPACENAME
发布了178 篇原创文章 · 获赞 83 · 访问量 85万+

猜你喜欢

转载自blog.csdn.net/fuck487/article/details/103945766