本文主要是介绍CDH 5.x 调优,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题一: mapreduce 分配的内存太小
原因: 由于CDH 默认启用 DRF 计划策略。
DRF: Dominant Resource Fairness,根据CPU和内存公平调度资源。CDH动态资源池默认采用的DRF计划策略。简单的理解就是内存不够的时候,多余的CPU就不会分配任务了,就让他空着;CPU不够的时候,多出来的内存也不会再启动任务了。
理解这个计划策略后,再查看Yarn启动任务时资源相关的参数,发现有以下几个参数可能会产生影响:
- mapreduce.map.memory.mb,map任务内存,cdh默认1G
- mapreduce.map.cpu.vcores,map任务虚拟CPU核数,cdh默认1
- mapreduce.reduce.memory.mb,reduce任务内存,cdh默认1G
- mapreduce.reduce.cpu.vcores,reduce任务虚拟CPU核数,cdh默认1
- yarn.nodemanager.resource.memory-mb,容器内存,cdh默认8G
- yarn.nodemanager.resource.cpu-vcores,容器虚拟CPU核数,cdh默认8,但CM会自动检测内核数并修改,我这里被自动改成了24。
解决办法:
通过 CDH 前端页面的 动态资源池配置 进行配置。
问题二: 修改yarn 内存
解决办法:
单个机器配置是 2核, 16G
当上图中改成 8 G时 ,yarn 启动不了。
问题三: 修改Spark内存
问题四: 修改HDFS 缓存
问题五:安装HUE等组件
问题六: oozie缺少 extjs 组件
下载extjs 的zip包。
http://archive.cloudera.com/gplextras/misc/ext-2.2.zip
解压到 /var/lib/oozie 包下面
配置完成:
问题七: 内存合理配置清单
- yarn_nodemanager_resource_memory_mb (16GB)
- yarn_scheduler_maximum_allocation_mb
- yarn.scheduler.maximum-allocation-vcores (6 vcores)
- yarn.scheduler.minimum-allocation-mb (16GB )
- yarn.scheduler.increment-allocation-mb
- history_server_max_heapsize
问题一: mapreduce 分配的内存太小
原因: 由于CDH 默认启用 DRF 计划策略。
DRF: Dominant Resource Fairness,根据CPU和内存公平调度资源。CDH动态资源池默认采用的DRF计划策略。简单的理解就是内存不够的时候,多余的CPU就不会分配任务了,就让他空着;CPU不够的时候,多出来的内存也不会再启动任务了。
理解这个计划策略后,再查看Yarn启动任务时资源相关的参数,发现有以下几个参数可能会产生影响:
- mapreduce.map.memory.mb,map任务内存,cdh默认1G
- mapreduce.map.cpu.vcores,map任务虚拟CPU核数,cdh默认1
- mapreduce.reduce.memory.mb,reduce任务内存,cdh默认1G
- mapreduce.reduce.cpu.vcores,reduce任务虚拟CPU核数,cdh默认1
- yarn.nodemanager.resource.memory-mb,容器内存,cdh默认8G
- yarn.nodemanager.resource.cpu-vcores,容器虚拟CPU核数,cdh默认8,但CM会自动检测内核数并修改,我这里被自动改成了24。
解决办法:
通过 CDH 前端页面的 动态资源池配置 进行配置。
问题二: 修改yarn 内存
解决办法:
单个机器配置是 2核, 16G
当上图中改成 8 G时 ,yarn 启动不了。
问题三: 修改Spark内存
问题四: 修改HDFS 缓存
问题五:安装HUE等组件
问题六: oozie缺少 extjs 组件
下载extjs 的zip包。
http://archive.cloudera.com/gplextras/misc/ext-2.2.zip
解压到 /var/lib/oozie 包下面
配置完成:
问题七: 内存合理配置清单
- yarn_nodemanager_resource_memory_mb (16GB)
- yarn_scheduler_maximum_allocation_mb (16GB )
- yarn.scheduler.maximum-allocation-vcores (6 vcores)
- yarn.scheduler.minimum-allocation-mb
- yarn.scheduler.increment-allocation-mb
- history_server_max_heapsize
这篇关于CDH 5.x 调优的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!