CentOS 6.2及最新操作系统部署Hadoop的注意事项

简介:
最近新采购的一批机器,由于intel cpu体系架构的改变,新机器的系统需要升级,选择了CentOS 6.2系统。
   1  在新机器上将MR业务开启后,导致整个集群都反应很慢,运行的job几乎都被卡住;通过ganglia监控发现,机器的system cpu超过30%,机器几乎是满负载的情况。
  原因分析:
  RHEL 6.2和6.3系统中包含了一个新特性,被称为“transparent hugepage compaction”,它和Hadoop负载不能很好的交互。相比于其他的 操作系统,这导致了严重的性能损失。Red Hat会在未来的更新中解决此问题。
   解决方法:把如下命令增加到开机启动中。
echo always > /sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
   2  解决上述问题,把MR业务开启一段时间后,经常出现某个task卡死的情况,job会一直hang住,查看TT日志
2013-08-2006:12:31,050INFO org.apache.hadoop.mapred.TaskLogsTruncater: Initializing logs' truncater withmapRetainSize=-1and reduceRetainSize=-1
2013-08-2006:12:31,053FATAL org.apache.hadoop.mapred.Child: Error running child :  java.lang.OutOfMemoryError: unable to create newnative
thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:640)
at org.apache.hadoop.mapred.ReduceTask$ReduceCopier.fetchOutputs(ReduceTask.java:1932)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:382)
at org.apache.hadoop.mapred.Child$4.run(Child.java:270)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1157)
at org.apache.hadoop.mapred.Child.main(Child.java:264)
  从上面的 日志看,是OOM的错误,不能创建新的进程。但查看该TT机器,内存充足,应该不是内存导致的问题。
  后来又check了环境的配置,发现在以前RHEL 5.4系统中生效的ulimit的nproc限制,在新系统中并没有生效(可以通过ulimit -u查看)。google后得知,6.2系统中修改了这一配置,新的配置需要在里/etc/security/limits.d/90-nproc.conf设置生效。
[hdfs@hd0447-sw40 ~]$ cat /etc/security/limits.d/90-nproc.conf
# Default limit fornumber of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903for
reasoning.
*          soft    nproc     1024
   在处理hadoop前期环境的时候,发现有些机器在没有业务的情况下机器负载很高的情况,这里也记录一下。
   1. 通过top命令发现plymouthd进程cpu负载达到近100%
  解决方法:打开 /boot/grub/menu.lst , 去掉 “rhgb quiet”这两个参数 ,然后重启
   2.power_saving死锁引起的高负载
  解决方法:
  方法1:rmmod acpi_pad,重启机器,机器将不支持电源节能;
  方法2:在BIOS中开启ACPI支持,重启,更新内核至2.6.32-358.2.1.el6.x86_64;
  方法3:在BIOS里设置禁用;
  方法4:要将驱动程序列入黑名单,编辑 /etc/modprobe.d/blacklist.conf,然后添加blacklist acpi_pad。
  开始使用方法1,解决了大多数机器power_saving死锁的问题,有些机器的整体负载还是会保持在10%以上,查看后发现还有部分power_saving进程,采用方法4,问题得以解决


最新内容请见作者的GitHub页:http://qaseven.github.io/

相关文章
|
3月前
|
监控 前端开发 Linux
centos7系统安装部署zabbix5.0
【9月更文挑战第23天】在CentOS 7系统上部署Zabbix 5.0的步骤包括:安装MariaDB数据库及必要软件包,配置Zabbix仓库,设置数据库并导入Zabbix数据库架构,配置Zabbix服务器与前端参数,启动相关服务,并通过浏览器访问Web界面完成安装向导。
184 0
|
3月前
|
Oracle Java 关系型数据库
CentOS 7.6操作系统部署JDK实战案例
这篇文章介绍了在CentOS 7.6操作系统上通过多种方式部署JDK的详细步骤,包括使用yum安装openjdk、基于rpm包和二进制包安装Oracle JDK,并提供了配置环境变量的方法。
289 80
|
3月前
|
分布式计算 Hadoop Java
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
本文是一份详细的Hadoop集群搭建指南,基于Hadoop 3.3.4版本和CentOS 8操作系统。文章内容包括虚拟机创建、网络配置、Java与Hadoop环境搭建、克隆虚拟机、SSH免密登录设置、格式化NameNode、启动Hadoop集群以及通过UI界面查看Hadoop运行状态。同时,还提供了常见问题的解决方案。
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
|
2月前
|
存储 Linux 开发者
虚拟机centos7.9一键部署docker
本文介绍了如何在 CentOS 7.9 虚拟机上安装 Docker 社区版 (Docker-ce-20.10.20)。通过使用阿里云镜像源,利用 `wget` 下载并配置 Docker-ce 的 YUM 仓库文件,然后通过 `yum` 命令完成安装。安装后,通过 `systemctl` 设置 Docker 开机自启并启动 Docker 服务。最后,使用 `docker version` 验证安装成功,并展示了客户端与服务器的版本信息。文中还提供了列出所有可用 Docker-ce 版本的命令。
216 0
虚拟机centos7.9一键部署docker
|
3月前
|
存储 Kubernetes 负载均衡
CentOS 7.9二进制部署K8S 1.28.3+集群实战
本文详细介绍了在CentOS 7.9上通过二进制方式部署Kubernetes 1.28.3+集群的全过程,包括环境准备、组件安装、证书生成、高可用配置以及网络插件部署等关键步骤。
520 3
CentOS 7.9二进制部署K8S 1.28.3+集群实战
|
3月前
|
运维 Linux
CentOS操作系统常见的故障处理
本文分享了CentOS操作系统网卡启动失败的故障处理方法,包括使用命令查看日志和禁用NetworkManager服务。
239 4
CentOS操作系统常见的故障处理
|
3月前
|
Windows
Windows操作系统部署安装Kerberos客户端
详细介绍了在Windows操作系统上部署安装Kerberos客户端的完整过程,包括下载安装包、安装步骤、自定义安装路径、修改环境变量、配置hosts文件和Kerberos配置文件,以及安装后的验证步骤。
406 3
Windows操作系统部署安装Kerberos客户端
|
3月前
|
资源调度 分布式计算 Hadoop
YARN(Hadoop操作系统)的架构
本文详细解释了YARN(Hadoop操作系统)的架构,包括其主要组件如ResourceManager、NodeManager和ApplicationMaster的作用以及它们如何协同工作来管理Hadoop集群中的资源和调度作业。
146 3
YARN(Hadoop操作系统)的架构
|
2月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
|
3月前
|
Linux pouch 容器
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。
131 2
CentOS7部署阿里巴巴开源的pouch容器管理工具实战