You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EKS集群部署Kubernetes Pod长期处于PENDING状态无法就绪求助

故障排查与解决方案

问题背景

关联项目仓库:udagram-microservices
完成kubectl与AWS EKS集群的对接配置后,按以下步骤完成资源部署:

# 部署配置和密钥资源
kubectl apply -f env-configmap.yaml
kubectl apply -f env-secret.yaml
kubectl apply -f aws-secret.yaml
# 逐个部署业务服务的 Deployment 和 Service
kubectl apply -f svcname-deployment.yaml
kubectl apply -f svcname-service.yaml

部署状态示意图
部署后所有Pod持续数小时处于PENDING状态,执行kubectl describe pod <POD_NAME>查询得到三个异常Pod:reverseproxy-667b78569b-2c6hv、udagram-api-feed-856bbc5c45-jcgtk、udagram-api-users-6fbd5cbf4f-qbmdd的诊断信息。


根因分析与解决步骤

结合EKS环境特性,按优先级排查以下问题:

  • 集群节点资源不足
    这是EKS场景下Pod长期PENDING最常见原因,先执行kubectl get nodes查看节点状态,再执行kubectl describe node <节点名>检查节点剩余CPU、内存资源是否满足Pod的resources.requests配置。
    • 若资源不足:可调整Deployment的资源请求阈值,或为EKS集群新增工作节点,也可以开启集群自动扩缩容(Cluster Autoscaler)功能。
  • 调度规则匹配失败
    检查Pod配置的节点选择器(nodeSelector)、亲和性/反亲和性规则、污点容忍(tolerations)是否和集群节点的标签、污点匹配。如果是Fargate模式的EKS集群,需要确认Pod的命名空间、标签是否匹配Fargate Profile的配置。
  • 存储资源挂载失败
    如果Pod配置了PersistentVolumeClaim(PVC),执行kubectl get pvc检查PVC是否处于Bound状态,EBS CSI驱动是否正常安装运行,存储类(StorageClass)配置是否正确。
  • 镜像拉取权限问题
    检查Pod引用的镜像是否存放在私有ECR仓库,EKS节点的IAM角色是否拥有对应镜像仓库的拉取权限,镜像地址、标签是否填写正确。

内容的提问来源于stack exchange,提问作者Oussama Bouchikhi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 10:39:03