Kubernetes Pod 驱逐详解

参考网址1
参考网址2

QoS等级为 Guaranteed 的 Pod 会在 QoS 等级为 Burstable 的 Pod 之前被驱逐吗?

在 Kubernetes 中,Pod 使用的资源最重要的是 CPU、内存和磁盘 IO,这些资源可以被分为可压缩资源(CPU)和不可压缩资源(内存,磁盘 IO)。可压缩资源不可能导致 Pod 被驱逐,因为当 Pod 的 CPU 使用量很多时,系统可以通过重新分配权重来限制 Pod 的 CPU 使用。而对于不可压缩资源来说,如果资源不足,也就无法继续申请资源(内存用完就是用完了),此时 Kubernetes 会从该节点上驱逐一定数量的 Pod,以保证该节点上有充足的资源。
当不可压缩资源不足时,Kubernetes 是通过 kubelet 来驱逐 Pod 的。kubelet 也不是随机驱逐的,它有自己的一套驱逐机制,每个计算节点的 kubelet 都会通过抓取** cAdvisor** 的指标来监控节点的资源使用量,下面我们来具体分析每种情况。
pod的QoS即当pod的服务质量,就是当pod所在的节点,资源不足的情况,pod是否被优先杀掉、或者保留。

一、查看pod的QoS

kubectl describe po Nginx-taints-7cb576f789-cbgbf | grep QoS

二、存储资源不足



三、内存资源不足



四、Node OOM (Out Of Memory)


posted @ 2023-06-15 13:56  kht  阅读(141)  评论(0编辑  收藏  举报