千家信息网

优化cdh集群性能-可在安装集群前操作(MapReduce配置的最佳实践)002

发表于:2024-10-18 作者:千家信息网编辑
千家信息网最后更新 2024年10月18日,优化cdh集群性能-可在安装集群前操作002//读完cdh官方文档后,可知的优化操作可在《03搭建cdh 生产环境前的Linux 优化(涉及到Linux内存参数优化)》https://blog.51c
千家信息网最后更新 2024年10月18日优化cdh集群性能-可在安装集群前操作(MapReduce配置的最佳实践)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 -PJan 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 listAvailable profiles:- balanced- desktop- latency-performance- network-latency- network-throughput- powersave- throughput-performance- virtual-guest- virtual-hostCurrent active profile: virtual-guest[root@NewCDH-0--141 ~]# tuned-adm off  //关闭调优服务[root@NewCDH-0--141 ~]# tuned-adm listAvailable profiles:- balanced- desktop- latency-performance- network-latency- network-throughput- powersave- throughput-performance- virtual-guest- virtual-hostNo 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:


mapreduce.tasktracker.outofband.heartbeat
true

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


jobclient.progress.monitor.poll.interval
10

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


mapreduce.jobtracker.heartbeat.interval.min
10

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


mapred.reduce.slowstart.completed.maps
0

参考链接
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

性能 调整 系统 服务 程序 配置 任务 动态 方案 处理 功能 数据 节点 进一 作业 管理 可在 集群 实践 不同 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全保密涉及哪些专业知识 株洲网络安全违法案件 校园网络安全执行方案 网络安全咨询店 一般网络安全基础知识 银川网络技术操作 东莞星凯网络技术有限公司 存储服务器跟录像机的区别 软件开发人员需要的培训课程 单服务器部署多个相同服务 顺天时报数据库 蚂蚁服务器被封 饥荒需要什么样的云服务器 简易即时通讯软件开发 数据库网页开发 论述网络安全与国家安全心得 端口暴露的数据库安全策略 结构化软件开发有哪些工作阶段 泰安全市注册专利数据库 实用网络技术教程 安徽师范大学网络技术 SQL注入网络安全知识竞赛 服务器属于信息安全产品吗 电脑webDAV服务器软件 广东游戏软件开发公司排名 西安软件开发公司人事待遇 手机网络玩游戏与服务器断开连接 04计算机网络技术 小学生网络安全知识征文 河南省高校网络安全知识竞赛题
0