searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

pod处于pending状态时的解决思路

2023-09-25 03:16:57
19
0

一、问题描述

 

  • 创建pod后,发现pod处于pending状态
    [root@master CStor-CSI]# kubectl get pods -n cstor
    NAME                                     READY   STATUS    RESTARTS   AGE
    demo-csi-provisioner-567c9b9c7914-kpss4   0/7     Pending   0          45m
    demo-csi-provisioner-567c9b9c7914-v7qpq   0/7     Pending   0          45m

二、解决思路

 

  • 首先获取特定Pod的描述信息,查看问题描述
    [root@master CStor-CSI]# kubectl describe pod demo-csi-provisioner-567c9b9c7914-kpss4 -n cstor
    
    Warning  FailedScheduling  4m16s (x4 over 19m)  default-scheduler  0/3 nodes are available: 1 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }, 3 node(s) didn't match Pod's node affinity/selector. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
    
    #这个警告表示有3个节点不符合Pod的节点亲和性(node affinity)或选择器(selector)的要求。
    #Pod可能通过nodeSelector字段或其它节点亲和性配置要求指定了特定的节点标签,
    #但是这些节点不满足这些要求,因此无法调度Pod到这些节点上。
    

 

  • 其次根据问题描述,查看nodeSelector
    [root@master CStor-CSI]# kubectl edit pod demo-csi-provisioner-567c9b9c7914-kpss4 -n cstor
    #查看nodeSelector:
    #    node-role.kubernetes.io/master: ""
    # 发现pod中nodeSelector字段存在上述信息,因此要在node节点label字段上增加上述信息
    

 

  • 在node节点label字段增加信息
    [root@master CStor-CSI]# kubectl label node node1 node-role.kubernetes.io/master=""
    node/node1 labeled

 

  • 查看pod的状态
    [root@master CStor-CSI]# kubectl get pods -n cstor
    NAME                                     READY   STATUS    RESTARTS   AGE
    demo-csi-provisioner-567c9b9c7914-kpss4   7/7     Running   0          48m
    demo-csi-provisioner-567c9b9c7914-v7qpq   7/7     Running   0          48m
    

 

三、总结

      当pod处于pending状态时,可以根据kubectl describe命令查看pod中的问题描述,根据问题描述来排查问题、定位问题即可解决。

0条评论
作者已关闭评论
小北
3文章数
0粉丝数
小北
3 文章 | 0 粉丝
小北
3文章数
0粉丝数
小北
3 文章 | 0 粉丝
原创

pod处于pending状态时的解决思路

2023-09-25 03:16:57
19
0

一、问题描述

 

  • 创建pod后,发现pod处于pending状态
    [root@master CStor-CSI]# kubectl get pods -n cstor
    NAME                                     READY   STATUS    RESTARTS   AGE
    demo-csi-provisioner-567c9b9c7914-kpss4   0/7     Pending   0          45m
    demo-csi-provisioner-567c9b9c7914-v7qpq   0/7     Pending   0          45m

二、解决思路

 

  • 首先获取特定Pod的描述信息,查看问题描述
    [root@master CStor-CSI]# kubectl describe pod demo-csi-provisioner-567c9b9c7914-kpss4 -n cstor
    
    Warning  FailedScheduling  4m16s (x4 over 19m)  default-scheduler  0/3 nodes are available: 1 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }, 3 node(s) didn't match Pod's node affinity/selector. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
    
    #这个警告表示有3个节点不符合Pod的节点亲和性(node affinity)或选择器(selector)的要求。
    #Pod可能通过nodeSelector字段或其它节点亲和性配置要求指定了特定的节点标签,
    #但是这些节点不满足这些要求,因此无法调度Pod到这些节点上。
    

 

  • 其次根据问题描述,查看nodeSelector
    [root@master CStor-CSI]# kubectl edit pod demo-csi-provisioner-567c9b9c7914-kpss4 -n cstor
    #查看nodeSelector:
    #    node-role.kubernetes.io/master: ""
    # 发现pod中nodeSelector字段存在上述信息,因此要在node节点label字段上增加上述信息
    

 

  • 在node节点label字段增加信息
    [root@master CStor-CSI]# kubectl label node node1 node-role.kubernetes.io/master=""
    node/node1 labeled

 

  • 查看pod的状态
    [root@master CStor-CSI]# kubectl get pods -n cstor
    NAME                                     READY   STATUS    RESTARTS   AGE
    demo-csi-provisioner-567c9b9c7914-kpss4   7/7     Running   0          48m
    demo-csi-provisioner-567c9b9c7914-v7qpq   7/7     Running   0          48m
    

 

三、总结

      当pod处于pending状态时,可以根据kubectl describe命令查看pod中的问题描述,根据问题描述来排查问题、定位问题即可解决。

文章来自个人专栏
文章 | 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0