配置Fargate的EKS集群无法调度Pod问题求助
问题解决:Fargate EKS集群部署Redis Operator遇到的调度超时与日志ConfigMap缺失问题
一、Pod调度超时(redis-operator-79d6d769dc-j246j)
针对Fargate环境下的Pod调度失败,重点排查以下几个方向:
- Fargate Profile匹配验证:
确认你的Fargate Profile是否包含default命名空间,或者是否为Redis Operator的Pod配置了Profile能匹配到的标签。Fargate仅调度符合Profile标签选择器的Pod,如果Profile没覆盖default命名空间,且Pod没有对应标签,就会出现调度超时。你可以通过eksctl get fargateprofile --cluster <集群名>查看Profile配置,若需要调整,用eksctl update fargateprofile添加对应命名空间或标签规则。 - Pod资源请求检查:
Fargate有最小资源限制(0.25vCPU、0.5Gi内存),如果Redis Operator Deployment中配置的resources.requests低于这个值,或者超出Fargate支持的资源范围(最大4vCPU、16Gi内存),会导致调度失败。修改Deployment的resources字段,确保资源请求在Fargate支持区间内:resources: requests: cpu: "0.25" memory: "0.5Gi" - 子网与安全组配置:
即使已创建NAT网关,也要确认Fargate使用的子网路由表正确指向NAT网关,且安全组允许Pod的出站流量(拉取镜像、访问K8s API等)。另外,确保子网启用了Fargate兼容性(创建集群时选择的子网默认支持,若手动添加子网需确认配置)。
二、aws-logging ConfigMap缺失
Redis Operator默认依赖aws-logging ConfigMap来配置日志,只需手动创建该ConfigMap即可解决:
apiVersion: v1 kind: ConfigMap metadata: name: aws-logging namespace: default data: flb_log_level: "info" # 可根据需求调整为debug/warn/error等
执行kubectl apply -f <上述yaml文件路径>创建后,Operator的日志功能即可正常启用。
内容的提问来源于stack exchange,提问作者Shobit Jain
相关产品推荐
相关产品推荐

