zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Pod状态异常排查问题集-pending状态排查思路

思路状态异常 排查 Pod 问题 pending
2023-09-14 09:15:18 时间
Pending是挂起状态: 表示创建的Pod找不到可以运行它的物理节点,不能调度到相应的节点上运行, 那么这 种情况如何去排查呢?我门可以从两个层面分析问题:
 
 

物理层面分析


[root@master ~]# kubectl describe node node1 | tail -n 9
Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
  Resource           Requests      Limits
  --------           --------      ------
  cpu                3257m (90%)   13 (361%)
  memory             3203Mi (46%)  24843Mi (358%)
  ephemeral-storage  0 (0%)        0 (0%)
  hugepages-2Mi      0 (0%)        0 (0%)
Events:              <none>
  • 查看节点资源使用情况:如free -m查看内存、top查看CPU使用率、df –h查看磁盘使用情况,这样就可以快速定位节点资源情况,判断是不是节点有问题
  • 查看节点污点:kubectl describe nodes master1(控制节点名字),如果节点定义了污点,那么Pod不能容忍污点,就会导致调度失败,如下: Taints: node-role.kubernetes.io/master:NoSchedule 这个看到的是控制节点的污点,表示不允许Pod调度(如果Pod定义容忍度,则可以实现调度)

 

pod本身分析


  • 在定义pod时,如果指定了nodeName是不存在的,那也会调度失败
  • 在定义Pod时,如果定义的资源请求比较大,导致物理节点资源不够也是不会调度的
理节点层面分析