无意中发现在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不会接受请求,所以不会影响用户使用。
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏