kubernetes中pod状态Evicted

avatar 2022年4月20日19:23:59 评论 1,157 次浏览

无意中发现在kubernetes中有个pod出现多个状态为“Evicted”,虽然这个状态不影响使用,但是这个错误也不会自动的修复,以前遇到过一次就手动删除了,后期也没有出现过,这次出现主要原因是因为在集群中出现问题的pod的node节点曾经出现过磁盘报警,已经清理过磁盘了,但是没有修复,下面看看报错内容吧:

[root@www.wulaoer.org ~]# kubectl get pod -n wulaoer-qa
wulaoer-656c6586bf-r5fzt      1/1     Running             0          2d
wulaoer-77774d99f6-jcjwp   1/1     Running             0          29d
wulaoer-68864cbf6d-6sw2p   0/1     Evicted             0          8h
wulaoer-68864cbf6d-bk8wt   0/1     Evicted             0          8h
wulaoer-68864cbf6d-gjr67   0/1     Evicted             0          8h
wulaoer-68864cbf6d-j9kct   0/1     Evicted             0          8h
wulaoer-68864cbf6d-l4c99   0/1     Evicted             0          8h
wulaoer-68864cbf6d-lkbhk   0/1     Evicted             0          8h
wulaoer-68864cbf6d-msd95   0/1     Evicted             0          8h

只有一个正常,其他的都是Evicted,主要是我的副本是1,下面看看日志:

[root@www.wulaoer.org ~]# kubectl describe pod -n beijing-qa base-member-card-producer-service-68864cbf6d-j9kct
.......................
Annotations:    cattle.io/timestamp: 2022-03-08T03:04:57Z
                kubernetes.io/psp: ack.privileged
Status:         Failed
Reason:         Evicted
Message:        Pod The node had condition: [DiskPressure].
.................................................

提示pod节点有问题,磁盘压力问题,所以清理pod所在node节点的磁盘即可,然后在批量删除状态为Evicted的pod

[root@www.wulaoer.org ~]# kubectl get pod -n wulaoer | grep Evicted | awk '{print $1}' | xargs kubectl delete pod -n wulaoer #wulaoer是命名空间名称

问题解决了,如果出现这个问题不要紧张,在kubernetes中pod的针对外部的请求会有自我检查,会把请求转发到正常的pod上,有异常的pod不会接受请求,所以不会影响用户使用。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: