背景
在查看k8s的环境的时候,突然发现存在n多个pod状态为Evicted。差不多得有几百个。
解决
同事愉快的丢了个链接给我,让我自己看一波:What will happen to evicted pods in kubernetes?
查看了一下pod的信息。结果发现是磁盘满了。
kubectl describe pod {pode_name} -n {namespace}
但是得手动删除Evicted状态的pod
kubectl get pods --all-namespaces -o json | jq '.items[] | select(.status.reason!=null) | select(.status.reason | contains("Evicted")) | "kubectl delete pods \(.metadata.name) -n \(.metadata.namespace)"' | xargs -n 1 bash -c
将Evicted状态的pod删除后,清理一波磁盘。
du -h --max-depth=1 //查看当前目录,哪个文件占用最大
du -sh * //查看当前目录下各文件及文件夹占用大小
cp /dev/null a.log //将a.log文件清除为空
最后k8s上的服务显示正常了。