1

我有一堆我负责的 Rancher 集群,开发人员使用其中一些集群PriorityClasses来确保安排一些更重要的工作负载。3PriorityClasses在 3 位数范围内,因此它们不会干扰默认值。但是,目前没有PriorityClasses设置为默认值,也没有设置为默认preemptionPolicyPreemptLowerPriority

rancher、longhorn、prometheus、grafana 等工作负载均未priorityClassName设置。

长话短说,我相信当资源短缺时,这会对集群造成严重破坏。

在向开发人员发表意见之前,我想收集一些数据来支持我的故事。

问题:如何检测 pod 是否因抢占而终止?

我试图用谷歌搜索该主题,但找不到任何东西。我希望kube state metrics会有一些东西,但我什么也没找到。

任何帮助将不胜感激。

4

1 回答 1

0

您可以尝试在 kubectl 的帮助下寻找令人信服的数据,例如 pod 终止原因。

您可以使用以下命令查看容器的上次重启日志:

kubectl 记录 podname -c containername --previous

您还可以使用以下命令查看 kubelet 向 apiserver 发送的有关 pod 的生命周期事件。

kubectl 描述 pod podname

最后,您还可以将最终消息写入 /dev/termination-log,这将按照文档中的说明显示。

要在 Rancher 中使用 kubectl 命令,请参阅文档页面。

于 2022-01-24T18:20:44.013 回答