开发者社区> 问答> 正文

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

已解决

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

展开
收起
提个问题 2024-06-04 10:04:23 17 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
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云文件存储 NAS 在容器场景的最佳实践 立即下载
何种数据存储才能助力容器计算 立即下载
《容器网络文件系统CNFS》 立即下载

相关镜像