开发者社区 > PolarDB开源 > 正文

容器服务K8s集群告警内存使用过高后的注意事项

已解决

容器服务K8s集群告警内存使用过高后的注意事项

展开
收起
提个问题 2024-06-04 10:04:23 86 0
1 条回答
写回答
取消 提交回答
  • 开发者社区问答官方账号
    官方回答
    采纳回答
    集群内存水位过高的原因分为:节点内存水位过高、Pod内存水位较内存限制过高。
    • 节点内存水位过高:当发现集群节点内存水位过高、或收到集群告警内存过高(通常节点水位85%触发hard eviction)时,会造成节点上Pod被驱逐,进而影响正常业务。
    • Pod内存水位较内存限制过高:当Pod内存水位较Pod内存限制(pod resource limit)过高,会造成Pod进程OOM,进而造成Pod重启或Pod内子进程终止。
    解决方法:
    • 节点内存水位过高时:
      • 当节点资源不足,请及时扩容集群节点,请参见扩容节点池。或开启Autoscaler节点自动扩缩,请参见创建自动伸缩节点池
      • 评估节点规格是否符合业务需求,当内存使用率高,但CPU使用率较低成为常态时,推荐使用内存密集型的机型规格进行集群节点机型替换。
    • Pod内存水位较内存限制过高时:
      • 首先请检查Pod内存限制Limit设置得是否合理,若不合理请提高内存限制Limit。
      • 检查Pod中您的业务进程是否存在内存泄漏情况。
      • 若Pod中存在系统缓存(如pagecache等)使用情况,请提高Pod内存限制,进行内存容量规划。
    • 可以使用集群诊断功能,做一下内存诊断,通过诊断分析一下内存使用高的原因。
    2024-06-04 10:04:25
    赞同 展开评论 打赏

PolarDB 是阿里云自研的云原生数据库产品家族,采用存储计算分离、软硬一体化设计,既拥有分布式设计的低成本优势,又具有集中式的易用性,可满足大规模应用场景需求。 2021年,阿里云先后宣布PolarDB PostgreSQL版与PolarDB分布式版开源,并持续推动开源版本迭代和演进,助力开发者通过开源版本快速使用阿里云数据库产品技术,并参与产品迭代中来。 开源历程参见:OpenPolarDB.com/about

相关电子书

更多
基于容器服务ACK与ACR构建企业级端到端DevSeOps流 立即下载
内存取证与IaaS云平台恶意行 为的安全监控 立即下载
云服务器ECS内存增强型实例re6全新发布 立即下载

相关镜像