码迷,mamicode.com
首页 > 其他好文 > 详细

关于CentOS 6下Hadoop占用系统态CPU高的处理办法【转】

时间:2017-04-18 15:52:20      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:lib   文件   http   kernel   知识库   cache   UI   bsp   ext   

一次不经意发现Hadoop的系统态CPU使用率很高,然后百度一下居然是个已知问题

    RHEL6优化了内存申请的效率,而且在某些场景下对KVM的性能有明显提升:http://www.Linux-kvm.org/wiki/images/9/9e/2010-forum-thp.pdf。

    而Hadoop是个高密集型内存运算系统,这个改动似乎给它带来了副作用。理论上运算型Java程序应该更多的使用用户态CPU才对,Cloudera官方也推荐关闭THP。于是参考一些文章作了调整: 

  1. # for hadoop , disable thp
  2. echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
  3. echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag

     作用非常明显:

技术分享   

    效果很明显,大概12:05分的时候操作的,系统态占用基本消失了。文件Cache使用上升、机器负载下降。

    除了手动修改运行时参数之外,还可以修改 /etc/grub.conf 里内核的启动参数,追加“transparent_hugepage=never”(此选项只对 /sys/kernel/mm/redhat_transparent_hugepage/enabled 有效)。

    原本 transparent_hugepage 功能是在内核2.6.38之后才引入的,红帽在RHEL6就将此功能合并进来、详细还有待进一步了解。

关于CentOS 6下Hadoop占用系统态CPU高的处理办法【转】

标签:lib   文件   http   kernel   知识库   cache   UI   bsp   ext   

原文地址:http://www.cnblogs.com/seaspring/p/6727967.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!