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

一次不经意发现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就将此功能合并进来、详细还有待进一步了解。

时间: 2024-11-08 19:18:37

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

关于csrss.exe和winlogon.exe进程多、占用CPU高的解决办法

原地址 http://blog.sina.com.cn/s/blog_912e77480101nuif.html 最近VPS的CPU一直处在100%左右,后台管理上去经常打不开,后来发现上远程都要好半天才反映过来,看到任务管理器有多个winlogon.exe进程和占用CPU高,百度查了下,说是有人在破解远程,最后按教程修改3389端口和改密码,重启后CPU直接降下来了,winlogon.exe进程也只有一个,一切恢复正常. 我太懒了,之前知道winlogon.exe进程多,但没这几天严重,今天查

如何排查用户态CPU使用率高

查看CPU使用在 Linux 系统下,使用 top 命令查看 CPU 使用情况. %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st us(user):表示 CPU 在用户态运行的时间百分比,通常用户态 CPU 高表示有应用程序比较繁忙.典型的用户态程序有:数据库.Web 服务器等.sy(sys):表示 CPU 在内核态运行的时间百分比(不包括中断),通常内核态 CPU 越低越好,否则表示系统存在某些瓶

Centos下Hadoop安装配置

首先声明本人的配置是根据: http://www.cnblogs.com/xia520pi/archive/2012/05/16/2503949.html 进行修改的,因此在这里表示感谢. 在这里我自己对于原有的文章进行了修改. 原作的某些命令不适合在centos上进行使用. 以及一些不太注意的细节,在这里我提了出来. 首先在安装之前,应先建立hadoop的用户组和hadoop用户, 然后再进行以下的安装配置.这里是很多新手都忽略的地方. 1.2 环境说明 集群中包括4个节点:1个Master,

centos下hadoop的安装

hadoop的安装不难,但是需要做不少的准备工作. 一.JDK 需要先安装jdk.centos下可以直接通过yum install java-1.6.0-openjdk来安装.不同发布版的安装方式可能不一样. 二.设置ssh 之后,需要设置ssh为密钥认证登录.如果没有这一步,那么以后每次hadoop运行的时候都会提示输入密码.可以直接ssh-keygen -t rsa一路回车生成ssh的密钥对,然后进入当前用户的家目录,进入.ssh目录,cp /home/hadoop/.ssh/id_rsa.

在CentOS 7下更改yum源与更新系统

在CentOS 7下更改yum源与更新系统. [1] 首先备份/etc/yum.repos.d/CentOS-Base.repo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup [2] 进入yum源配置文件所在文件夹 cd /etc/yum.repos.d/ [3] 下载163的yum源配置文件,放入/etc/yum.repos.d/(操作前请做好相应备份) wget http://mir

在win7下Linux (centos)的安装双系统

在win7下Linux (centos)的安装双系统 装法有两种.(太多了,第二不写了 ) 一.U盘安装 整个过程过程可分为三步. 1.从最后一个硬盘格式化一些空间出来,我的是格式100G, 方法: 在win7下右键点击"我的电脑",进入"管理",再进入"磁盘管理",找到F盘(我最后一个是F盘),点击右键,删除卷,在创建新卷:"30G",(格式为NTFS)(因为我的F盘130G),所以现在剩下100G是空的,别急,空的100G

centos 7下的systemctl 以及service 和chkconfig

登录|注册     cds86333774的博客 目录视图 摘要视图 订阅 [有奖征文]Bluemix云上实践征集喽~      Python 创意编程活动      CSDN日报20170511 --<开发人员的必备技能> Centos7下的systemctl命令与service和chkconfig 标签: systemctlservicechkconfigCentos7systemd 2016-04-15 22:54 6264人阅读 评论(0) 收藏 举报 分类: Linux(5) 版权声

Linux下Hadoop 2.2.0 集群配置攻略

Hadoop 2.2.0 集群配置攻略 用户输入标识: chmod +x jdk-7u45-linux-x64.rpm  为黑色带底纹 系统输出标识: java version "1.7.0_51" 为绿色小字 2014年3月20-日 by lilihao Q 404536204 1. 安装sun jdk (1). 到Oracle的官方网站下载jdk,目前最新版本是7u51 安装包: http://www.oracle.com/technetwork/java/javase/downl

细水长流话Hadoop(1)Hadoop序列化系统

声明:个人原创,转载请注明出处.文中引用了一些网上或书里的资料,如有不妥之处请告之. 本文是我阅读Hadoop 0.20.2第二遍时写的笔记,在阅读过程中碰到很多问题,最终通过各种途径解决了大部分.Hadoop整个系统设计精良,源码值得学习分布式的同学们阅读,以后会将所有笔记一一贴出,希望能方便大家阅读Hadoop源码,少走弯路. 1 序列化核心技术... 1 2 类型对象大小比较... 3 3 Writable类型工厂... 4 4 ObjectWritable类型... 5 5 其它序列化系