优化cdh集群性能-可在安装集群前操作002

优化cdh集群性能-可在安装集群前操作002
//读完cdh官方文档后,可知的优化操作
可在《03搭建cdh 生产环境前的Linux 优化(涉及到Linux内存参数优化)》
https://blog.51cto.com/12445535/2365948 这步同时操作

讲解了:
提供了一些性能问题的解决方案,并介绍了配置最佳实践。

1、禁止tuned 服务 //是内存分配管理
//关于tuned服务是什么?
RHEL/CentOS 在 6.3 版本以后引入了一套新的系统调优工具 tuned/tuned-adm,其中 tuned 是服务端程序,用来监控和收集系统各个组件的数据,并依据数据提供的信息动态调整系统设置,达到动态优化系统的目的;tuned-adm 是客户端程序,用来和 tuned 打交道,用命令行的方式管理和配置 tuned,tuned-adm 提供了一些预先配置的优化方案可供直接使用
//动态调优方案,用户可以在不同的时间段内采用不同的调优方案。由于以服务进程形式存在,就可以很方便的和crontab结合!Tuned 是监控并收集各个系统组件用量数据的守护进程,并可使用那些信息根据需要动态调整系统设置。它可以对 CPU 和网络使用的更改作出反应,并调整设置以提高活动设备的性能或者降低不活跃设备的电源消耗。

见图:

具体细节
[root@NewCDH-0--141 ~]# cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core)
[root@NewCDH-0--141 ~]# systemctl status tuned
● tuned.service - Dynamic System Tuning Daemon
   Loaded: loaded (/usr/lib/systemd/system/tuned.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-01-23 10:47:06 CST; 2 months 0 days ago
 Main PID: 897 (tuned)
   CGroup: /system.slice/tuned.service
           └─897 /usr/bin/python -Es /usr/sbin/tuned -l -P

Jan 23 10:47:02 NewCDH-0--141 systemd[1]: Starting Dynamic System Tuning Daemon...
Jan 23 10:47:06 NewCDH-0--141 systemd[1]: Started Dynamic System Tuning Daemon.

[root@NewCDH-0--141 ~]# tuned-adm list
Available profiles:
- balanced
- desktop
- latency-performance
- network-latency
- network-throughput
- powersave
- throughput-performance
- virtual-guest
- virtual-host
Current active profile: virtual-guest
[root@NewCDH-0--141 ~]# tuned-adm off  //关闭调优服务
[root@NewCDH-0--141 ~]# tuned-adm list
Available profiles:
- balanced
- desktop
- latency-performance
- network-latency
- network-throughput
- powersave
- throughput-performance
- virtual-guest
- virtual-host
No current active profile.
[root@NewCDH-0--141 ~]# systemctl stop tuned
[root@NewCDH-0--141 ~]# systemctl disable tuned

2、关闭禁用透明重复页面(THP) //前面博客有讲到,这里就不累赘了
具体见:Linux 初始化脚本 (centos6 centos7 通用) https://blog.51cto.com/12445535/2362407 第14
3、swap分区优化:减少使用交换分区使用百分比 同上

4、
提高随机处理程序和IFile阅读器的性能
MapReduce shuffle处理程序和IFile阅读器在安装了Hadoop本机库的Linux系统上使用本机Linux调用(posix_fadvise(2)和sync_data_range)。
随机处理程序
您可以通过启用shuffle readahead来改善MapReduce shuffle处理程序的性能。这会导致TaskTracker或节点管理器在通过套接字将其发送到reducer之前预取地图输出。

要为YARN启用此功能,请将mapreduce.shuffle.manage.os.cache设置为true(默认值)。要进一步调整性能,请调整mapreduce.shuffle.readahead.bytes的值。默认值为4 MB。
要为MapReduce启用此功能,请将mapred.tasktracker.shuffle.fadvise设置为true(默认值)。要进一步调整性能,请调整mapred.tasktracker.shuffle.readahead.bytes的值。默认值为4 MB。

IFile读者
启用IFile预读可提高合并操作的性能。要为MRv1或YARN启用此功能,请将mapreduce.ifile.readahead设置为true(默认值)。要进一步调整性能,请调整mapreduce.ifile.readahead.bytes的值。默认值为4MB。

5、MapReduce配置的最佳实践
下面描述的配置设置可以减少MapReduce执行中的固有延迟。您可以在mapred-site.xml中设置这些值。
(1)
任务完成后立即发送心跳
将mapreduce.tasktracker.outofband.heartbeat设置为true,以便TaskTracker在任务完成时发送带外心跳以减少延迟。默认值为false:

<property>
<name>mapreduce.tasktracker.outofband.heartbeat</name>
<value>true</value>
</property>

(2)
减少单节点系统上JobClient状态报告的间隔
jobclient.progress.monitor.poll.interval属性定义JobClient向控制台报告状态并检查作业完成的时间间隔(以毫秒为单位)。默认值为1000毫秒;您可能希望将此值设置为较低的值,以使测试在单节点群集上运行得更快。在大型生产群集上调整此值可能会导致不必要的客户端 - 服务器流量。

<property>
<name>jobclient.progress.monitor.poll.interval</name>
<value>10</value>
</property>

(3)
调整JobTracker心跳间隔
将TaskTracker-to-JobTracker心跳的最小间隔调整为较小的值可以提高小群集上的MapReduce性能。

<property>
<name>mapreduce.jobtracker.heartbeat.interval.min</name>
<value>10</value>
</property>

(4)
立即启动MapReduce JVM
mapred.reduce.slowstart.completed.maps属性指定在安排任何Reduce任务之前必须完成的作业中Map任务的比例。对于需要快速周转的小型作业,将此值设置为0可以提高性能;较大的值(高达50%)可能适合较大的工作。

<property>
<name>mapred.reduce.slowstart.completed.maps</name>
<value>0</value>
</property>

参考链接
Optimizing Performance in CDH https://www.cloudera.com/documentation/enterprise/5-13-x/topics/cdh_admin_performance.html
linux服务之tuned http://www.cnblogs.com/createyuan/p/5701650.html
浅谈linux性能调优之十二:红帽优化策略Tuned https://blog.csdn.net/u013870094/article/details/51055483

原文地址:https://blog.51cto.com/12445535/2368898

时间: 2024-10-12 11:27:36

优化cdh集群性能-可在安装集群前操作002的相关文章

百万级高并发MongoDB集群性能数十倍提升优化实践(上篇)

1. 背景 线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性.该集群采用mongodb天然的分片模式架构,数据均衡的分布于各个分片中,添加片键启用分片功能后实现完美的负载均衡.集群每个节点流量监控如下图所示: 从上图可以看出集群流量比较大,峰值已经突破120万/秒,其中delete过期删除的流量不算在总流量里面(delete由主触发删除,但是主上面不会显示,只会

Oracle RAC 11gR2+WebLogic集群6节点项目安装实施维护视频课程套餐

Oracle RAC 11gR2+WebLogic集群6节点项目安装实施维护视频课程套餐 套餐介绍:高薪必学的企业级核心应用Oracle+WebLogic集群教程. 基础:介绍Oracle RAC 11gR2集群组件概念,ASM存储,体系结构,WebLogic集群相关概念,域,JDK,JVM,数据源,连接池. 实战:1.企业级应用系统项目的实施流程,如调研,方案,规划等;2.Linux统安装与环境配置,ASM存储配置,Oracle 11gRAC集群软件安装与数据RAC数据库创建,RAC集群日常维

Redis集群性能问题深度分析

Redis集群性能问题深度分析 参考 Redis开发与运维 https://redis.io/ http://www.redis.cn/ https://github.com/antirez/redis https://github.com/sohutv/cachecloud 源起 优化之路永无止境,在此之前一做过一些架构优化汇总如下: 1,Redis集群3.0.7升级到3.2.9解决读从节点KEY过期不删除问题,集群有几千万KEY原来经核查3.0.7版本只有主上保存过期时间,所以需要主触发才能

Hadoop集群内lzo的安装与配置

LZO压缩,可分块并行处理,解压缩的效率也是可以的. 为了配合部门hadoop平台测试,作者详细的介绍了如何在Hadoop平台下安装lzo所需要软件包:gcc.ant.lzo.lzo编码/解码器并配置lzo的文件:core-site.xml.mapred-site.xml.希望对大家有所帮助.以下是正文: 最近我们部门在测试云计算平台hadoop,我被lzo折腾了三四天,累了个够呛.在此总结一下,也给大家做个参考. 操作系统:CentOS 5.5,Hadoop版本:hadoop-0.20.2-C

Redis3.0.5安装集群实例分享

基于redhat linux来安装 前置:安装了yum(因为需要装ruby等软件,使用yum install很容易就安装了,安装yum见http://eip.teamshub.com/t/3111540) 1.将[redis-3.0.5.tar.gz]放到home/redis目录: 2.解压tar -zxvf redis-3.0.5.tar.gz 3.进到目录去编译cd redis-3.0.5make 4.创建集群需要的目录mkdir -p /home/redis/redis-3.0.5/clu

基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:3.安装Oracle RAC-3.6.集群管理命令

3.6. 集群管理命令 3.6.1. RAC的启动与关闭 oracle rac默认会开机自启动,如需维护时可使用以下命令: 关闭: crsctl stop cluster 停止本节点集群服务 crsctl stop cluster –all 停止所有节点服务 开启: crsctl start cluster 开启本节点集群服务 crsctl stop cluster –all 开启所有节点服务 注:以上命令需以 root用户执行 3.6.2.RAC检查运行状况 以grid 用户运行 [[emai

高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南

(WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 为了部署HA集群,应该准备以下事情: namenode服务器: 运行namenode的服务器应该有相同的硬件配置. journalnode服务器:运行的journalnode进程非常轻量,可以部署在其他的服务器上.注意:必须允许至少3个节点.当然可以运行更多,但是必须是奇数个,如3,5,7,9个等等.当运行N个节点时,系统可以容忍至少(N-1)/2个节点失败而不影响正常运行. 在HA集群中,standby状态的

搭建高可用mongodb集群(二)—— 副本集

http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html 在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 这篇文章看完这些问题就可以搞定了.NoSQL的产生就是为了解决大数据量.高扩展性.高

Linux服务器性能监控工具Glances 安装过程与简单介绍

一.Glances: Glances 是一款非常不错的跨平台的性能监控工具,提供了CPU.CPU队列.内存.虚拟内存.网络.I/O和最占用服务器的资源的进程列表等,应该就这些了吧,提供了这些 指标的监控信息,并且在运行时会根据资源的占用情况适用不同的颜色标注其重要程度,非常直观,下面是使用中的截图: 二.Glances安装:   Glances的安装还是比较简单方便的,由于Glances是由python编写的,最好适用python的库管理工具pip来自动安装.并且使用工具 也将安装过程简单的.