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

EKS集群升级至1.24失败:Fargate Pod Kubelet版本匹配问题排查

需检查的内容
  • 验证所有Fargate Pod的kubelet版本
    执行以下命令,逐个核对每个Pod的kubelet版本是否与集群版本(v1.23.14-eks-ffeb93d)一致:

    kubectl get pods --all-namespaces -o jsonpath='{range .items[*]}{.metadata.namespace}/{.metadata.name}{"\t"}{.status.nodeInfo.kubeletVersion}{"\n"}'
    

    重点排查版本不匹配的Pod,这些就是提示中需要回收的"offending replicas"。

  • 检查Fargate Profile覆盖范围
    确认所有运行在Fargate上的Pod都被已配置的Fargate Profile包含,避免存在未纳入管理的Pod:

    aws eks list-fargate-profiles --cluster-name <你的集群名>
    # 查看具体Profile的配置细节
    aws eks describe-fargate-profile --cluster-name <你的集群名> --fargate-profile-name <Profile名称>
    

    确保Profile的命名空间选择器、Pod标签选择器覆盖了所有Fargate Pod,没有遗漏。

  • 排查异常状态的Pod
    列出所有异常状态(如Pending、CrashLoopBackOff、Terminating)的Pod,这些Pod可能无法自动重建,导致一直使用旧版本kubelet:

    kubectl get pods --all-namespaces | grep -v Running
    

    手动删除这些异常Pod,触发重建以获取最新的Fargate运行时版本。

  • 检查系统命名空间的Fargate Pod
    重点核对kube-system等系统命名空间下的Fargate Pod(如coredns、aws-node)的kubelet版本,系统Pod常因配置或权限问题无法自动更新:

    kubectl get pods -n kube-system -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.status.nodeInfo.kubeletVersion}{"\n"}'
    

    若版本不匹配,手动删除这些Pod重建。

  • 检查工作负载控制器配置
    对于Deployment、StatefulSet等控制器:

    • 确认Deployment的滚动更新策略正常,没有阻止Pod重建的配置;
    • 对于StatefulSet,由于其不会自动触发滚动更新,需要手动逐个删除Pod强制重建:
      kubectl delete pod <StatefulSet Pod名称> -n <命名空间>
      

    避免配置中固定了旧版本的镜像或运行时参数。

  • 确认Fargate运行时版本同步
    检查集群的Fargate运行时是否已更新至与v1.23集群兼容的版本:

    aws eks describe-cluster --name <你的集群名> --query 'cluster.fargateProfileStatus'
    

    确保运行时版本与集群版本匹配,否则需要等待AWS完成Fargate运行时的同步更新。


内容的提问来源于stack exchange,提问作者Ruwan Vimukthi Mettananda

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 12:05:42