相关文章链接

CentOS7安装CDH 第一章:CentOS7系统安装

CentOS7安装CDH 第二章:CentOS7各个软件安装和启动

CentOS7安装CDH 第三章:CDH中的问题和解决方法

CentOS7安装CDH 第四章:CDH的版本选择和安装方式

CentOS7安装CDH 第五章:CDH的安装和部署-CDH5.7.0

CentOS7安装CDH 第六章:CDH的管理-CDH5.12

CentOS7安装CDH 第七章:CDH集群Hadoop的HA配置

CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作

CentOS7安装CDH 第九章:CDH中安装Kafka

CentOS7安装CDH 第十章:CDH中安装Spark2

CentOS7安装CDH 第十一章:离线升级CDH版本

CentOS7安装CDH 第十二章:YARN的资源调优

CentOS7安装CDH 第十三章:CDH资源池配置

CentOS7安装CDH 第十四章:CDH的优化

1. 机器选型

机器选型时从CPU,MEMORY和DISK3个方面来选:

CPU:云服务器 |刀片服务器 (192G/56核/10T 7w人民币 --> 6台  32G/8核)

MEMORY: 越多越好

DISK:   评估当前未来2-3年的存储量  >7200转  IO  ( 5块/2T/10000转)

NetWork: 千兆/万兆 局域网

2. Linux参数

以下Linux参数设置为在centos6.x中通用,但在centos7应该也能使用:

1、句柄数 文件数 线程数

echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf
echo "* soft nproc 65535" >> /etc/security/limits.conf
echo "* hard nproc 65535" >> /etc/security/limits.conf
echo "* soft nproc 65535" >>/etc/security/limits.d/90-nproc.conf

2、网络参数

more /etc/sysctl.conf |grep net.core.somaxconn
sysctl -w net.core.somaxconn=32768
echo net.core.somaxconn=32768 >> /etc/sysctl.conf
#生效
sysctl -p

3、调节交换内存(swap)

# 调节命令
more /etc/sysctl.conf | vm.swappiness
echo vm.swappiness = 10 >> /etc/sysctl.conf
#生效
sysctl -p # 说明
vm.swappiness = 0 禁用? 不是,惰性最大(积极性最差),但依然会使用swap
vm.swappiness = 10 惰性稍微大(积极性稍等差),使用swap
计算密集型作业 --》swap不启用,仅仅使用内存计算,当内存不够,作业自动被yarn kill 不允许慢,可以允许挂
不是密集型计算 swap启用,允许作业慢,但不允许挂

可以使用free -h命令查看swap的使用情况:

4、关闭大页面

echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag' >> /etc/rc.local

3. HDFS调优

在HDFS的config中配置如下参数:

<property>
<name>ipc.server.listen.queue.size</name>
<value>32768</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>65536</value>
</property>

4. YARN调优

在yarn的config的core-site.xml中配置如下配置:

<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8192</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>1024</value>
<discription>单个任务可申请最少内存,默认1024MB</discription>
</property> <property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>8192</value>
<discription>单个任务可申请最大内存,默认8192MB</discription>
</property>
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>4</value>
</property>

5. 调优网站

更多调优请参考如下2个网站,里面有关于CDH中的调优的详细介绍:

http://blog.itpub.net/30089851/viewspace-2127850/

http://blog.itpub.net/30089851/viewspace-2127851/

CentOS7安装CDH 第十四章:CDH的优化的更多相关文章

  1. CentOS7安装CDH 第十二章:YARN的资源调优

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

  2. Gradle 1.12用户指南翻译——第四十四章. 分发插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  3. 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用

    目录 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用 24.1 expect实现无交互登录 24.1.1 安装和使用expect 24.2 正则表达式的使用 24 ...

  4. 《Linux命令行与shell脚本编程大全》 第十四章 学习笔记

    第十四章:呈现数据 理解输入与输出 标准文件描述符 文件描述符 缩写 描述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1.STDIN 代表标准输入.对于终端界面 ...

  5. perl 第十四章 Perl5的包和模块

    第十四章 Perl5的包和模块 by flamephoenix 一.require函数  1.require函数和子程序库  2.用require指定Perl版本二.包  1.包的定义  2.在包间切 ...

  6. Gradle 1.12 翻译——第十四章. 教程 - 杂七杂八

    有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...

  7. C和指针 (pointers on C)——第十四章:预处理器

    第十四章 预处理器 我跳过了先进的指针主题的章节. 太多的技巧,太学科不适合今天的我.但我真的读,读懂.假设谁读了私下能够交流一下.有的小技巧还是非常有意思. 预处理器这一章的内容.大家肯定都用过.什 ...

  8. CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章

    第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...

  9. JavaScript高级程序设计:第十四章

    第十四章 一.表单的基础知识 在HTML中,表单是由<form>元素来表示的,而在javascript中,表单对应的则是HTMLFormElement类型.HTMLFormElement继 ...

随机推荐

  1. Swift4.0复习结构体

    1.基本语法: /** 定义了一个结构体 */ struct Structure {   /// 一个常量存储式实例属性, /// 并直接为它初始化 let constProperty =   /// ...

  2. windows下 使用ip地址反查主机名的命令

    nbtstat -a [远端或局域网某计算机的IP地址] 可以查询返回远端或局域网某计算机的主机名 C:\Documents and Settings\z00121596>nbtstat -a ...

  3. Nginx虚拟目录(alias)和根目录(root)

    功能要求: 假设nginx配置的域名是www.kazihuo.com,现有静态资源/home/www/oye目录需要通过nginx访问. 功能实现: 前提要求: 1.在nginx.conf中到处第二行 ...

  4. SSH连接服务器时,长时间不操作就会断开的解决方案

    最近在配置服务器相关内容时候,不同的事情导致长时间不操作,页面就断开了连接,不能操作,只能关闭窗口,最后通过以下命令解决. SSH连接linux时,长时间不操作就断开的解决方案: 1.修改/etc/s ...

  5. Linux(Ubuntu)下的OpenGl的环境安装, 在qt程序中使用opengl库

    OpenGl的环境安装 以下参考自:https://blog.csdn.net/wasaiheihei/article/details/52085397 1. 建立基本编译环境 首先不可或缺的,就是编 ...

  6. LeetCode 168. Excel表列名称(Excel Sheet Column Title)

    168. Excel表列名称 168. Excel Sheet Column Title 题目描述 给定一个正整数,返回它在 Excel 表中相对应的列名称. LeetCode168. Excel S ...

  7. Spring bean加载之1:BeanFactory和FactoryBean

    BeanFactory BeanFactory:以Factory结尾,表示它是一个工厂类(接口),用于管理Bean的一个工厂.在Spring中,BeanFactory是IOC容器的核心接口,它的职责包 ...

  8. 使用TypeScript创建Vue项目

    Vue的灵活性总是让代码看起来非常洗练,对TypeScript来说也是一种挑战, 好在Vue对TypeScript进行了一次全方位的适配. 相对于React严谨的代码,Redux啰嗦的样板代码,Vue ...

  9. Mybatis笔记1

    Mybatis 持久层框架,数据访问层 mybatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动,创建连接,创建sta ...

  10. hugepage设置

    1.设置memlock 编辑/etc/security/limits.conf 增加: * Soft memlock 稍小于RAM值 * hard memlock 稍小于RAM值 Memlock,锁定 ...