技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 系统运维 --> kswapd 进程占用过多资源导致RAC宕机

kswapd 进程占用过多资源导致RAC宕机

浏览:2466次  出处信息
    最近在上海一个客户现场,帮助诊断一个RAC宕机问题,最终发现是kswapd进程占用了大量的CPU资源。

    在Top采样输出中,最高的两个就是kswapd0,kswapd1两个进程,分别占用307.9%,299%的CPU资源:

     PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND           

    1415 root      20  -5     0    0    0 R 307.9  0.0 121:58.00 [kswapd1]        

    1414 root      20  -5     0    0    0 R 299.0  0.0  90:33.22 [kswapd0]

    2713 root      20  -5     0    0    0 R 112.5  0.0  23:29.55 [kjournald]      

    8342 root      10  -5     0    0    0 S 21.3  0.0   4:08.28 [kjournald]

    29428 root      15   0     0    0    0 S 11.0  0.0  10:59.91 [pdflush]       

    最终资源耗尽,导致一个节点将另外一个节点驱逐。

    记录一下在网上找到的kswapd进程的解释:

    1.Linux uses kswapd for virtual memory management such that pages that have been recently accessed are kept in memory and less active pages are paged out to disk.

    2.系统每过一定时间就会唤醒kswapd进程,查看内存资源是否紧张,如果不紧张,则继续睡眠,在kswapd中,有2个阀值,pages_hige和pages_low,当空闲内存页的数量低于pages_low的时候,kswapd进程就会扫描内存并且每次释放出 32个free pages,直到free page的数量到达pages_high.

    kswapd进程导致系统故障的案例为数不少,有些是Bug导致的,以下Bug是Redhat网站登记的重要参考:

    https://bugzilla.redhat.com/show_bug.cgi?id=293641

    这个客户的环境可以通过系统优化来解决。

建议继续学习:

  1. 从谷歌宕机事件认识互联网工作原理    (阅读:7832)
  2. ORACEL RAC 字符集    (阅读:4634)
  3. 【分布式系统工程实现】如何检测一台机器是否宕机?    (阅读:2732)
  4. Grid Control监控-进程累积导致的宕机    (阅读:2782)
  5. Oracle RAC廉价数据仓库解决方案    (阅读:2626)
  6. Oracle RAC中的RDS内部互联    (阅读:2612)
  7. RAC的负载均衡    (阅读:2602)
  8. RAC环境下Memory System Deconfigured    (阅读:2263)
  9. oracle RAC DRM基本概念    (阅读:2001)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1