GKE Autopilot错误修改Pod的limits/requests资源配置问题咨询
问题原因
这不是配置异常修改,是GKE Autopilot集群的默认资源调度规则:Autopilot默认要求Pod的CPU、内存、临时存储的limits必须和requests完全相等,也就是必须满足Guaranteed QoS等级要求。当你提交的Pod配置里limits和requests不一致时,Autopilot的准入控制器会自动把limits下调到和requests一致,并注入autopilot.gke.io/resource-adjustment annotation记录调整过程,你贴出的配置里modified:true字段也明确标注了是系统自动完成的调整。
解决方案
- 如果你确实需要Pod使用更高的资源上限,直接把
requests的值调整为你原本设置的limits的值即可,调整后的配置示例:
resources: limits: cpu: "3500m" memory: "8192Mi" ephemeral-storage: "5Gi" requests: cpu: "3500m" memory: "8192Mi" ephemeral-storage: "5Gi"
Autopilot会按照你设置的requests值调度节点,不会再修改limits配置。
- 如果你希望保留Burstable QoS(limits > requests)的配置模式,可以在Pod的annotation中添加
autopilot.gke.io/no-optimize: "true",关闭Autopilot对该Pod的资源自动调整能力,该配置仅在较新版本的GKE Autopilot集群中生效。 - 如果你需要批量调整全集群的资源调整规则,可以联系集群管理员在集群层面调整Autopilot的资源管控策略。
内容的提问来源于stack exchange,提问作者Fran Arenas
相关产品推荐
相关产品推荐

