解决k8s部署dashboard时一直处于Pending状态的问题

    科技2025-12-19  10

    部署dashboard时一直处于Pending状态

    搭建Dashboard时执行 kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml

    查看pod状态,一直报错Pending

    [root@master01 k8s]# kubectl get pods -n kubernetes-dashboard NAME READY STATUS RESTARTS AGE dashboard-metrics-scraper-6c9bfb459b-ldrfb 0/1 Pending 0 28m kubernetes-dashboard-5947dc95db-n42cs 0/1 Pending 0 20m

    查看pod的详细信息,发现报错调度错误:0/2 nodes are available: 2 node(s) didn’t match node selector

    [root@master01 k8s]# kubectl describe pod kubernetes-dashboard-5947dc95db-n42cs -n kubernetes-dashboard Name: kubernetes-dashboard-5947dc95db-n42cs Namespace: kubernetes-dashboard Priority: 0 PriorityClassName: <none> Node: <none> Labels: k8s-app=kubernetes-dashboard pod-template-hash=5947dc95db Annotations: <none> Status: Pending Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning FailedScheduling 83s (x241 over 21m) default-scheduler 0/2 nodes are available: 2 node(s) didn't match node selector.

    原因:如果当前集群中没有一个node的label符合这个nodeSelector,就会报这个错误

    解决方法:在yaml文件里面注释掉nodeSelector

    重新启动dashboard,验证pod启动成功

    [root@master01 k8s]# kubectl get pods -n kubernetes-dashboard NAME READY STATUS RESTARTS AGE dashboard-metrics-scraper-7f44bd8d8b-pqs75 1/1 Running 0 7s kubernetes-dashboard-849796f7fd-9kfnm 1/1 Running 0 7s
    Processed: 0.014, SQL: 9