CDH安装前系统优化准备
参考:
https://www.cnblogs.com/yinzhengjie/p/10367447.html
https://www.sysit.cn/blog/post/sysit/CDH6.2.0%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2%E6%89%8B%E5%86%8C
在云上centos7的基础优化如关闭防火墙等可以不做, 第8步的ipv6禁用也可以不用.
基础优化:
1/ 配置SSH:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
手动拷贝id_rsa.pub的内容到其他机器.
或者用 ssh-copy,但你得知道对方root密码
ssh-copy-id 192.189.142.83
yum install ansible -y
ln -s /usr/local/python/bin/ansible-playbook /usr/local/bin/
ln -s /usr/local/python/bin/ansible /usr/local/bin/
cd /etc/ansible
mkdir playbook
#机器多的话可用ansible, 需要手动输入密码.
cat 1_ssh-copy-id.yml
---
- hosts: all
tasks:
- name: deliver id_rsa.pub to client
authorized_key:
user: "root"
key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"
state: present
exclusive: no
1/ 每台的/etc/hosts
[root@fengfeng-temp-2 ~]# cat /etc/hosts
195.189.142.89 fengfeng-temp-1.novalocal
195.189.142.83 fengfeng-temp-2.novalocal
195.189.142.86 fengfeng-temp-3.novalocal
195.189.142.88 fengfeng-temp-4.novalocal
可用ansible-playbook 3_copy.yml
---
- hosts: client
tasks:
- name: copy /etc/hosts to client hosts
copy:
src: "/etc/hosts"
dest: "/etc/hosts"
force: yes
backup: yes
2/ 显示优化
编辑/etc/bashrc
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\]]\\$ "
3/ systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
4/关闭DNS PTR反向查询
ansible cdh -m shell -a "grep UseDNS /etc/ssh/sshd_config"
[root@node100.fengfeng.org.cn ~]# grep UseDNS /etc/ssh/sshd_config
#UseDNS yes
[root@node100.fengfeng.org.cn ~]# sed -i 's@#UseDNS yes@UseDNS no@g' /etc/ssh/sshd_config
[root@node100.fengfeng.org.cn ~]# grep UseDNS /etc/ssh/sshd_config
UseDNS no
5/关闭GSSAPI身份验证(ssh服务优化)
[root@node100.fengfeng.org.cn ~]# grep GSSAPIAuthentication /etc/ssh/sshd_config
GSSAPIAuthentication yes
[root@node100.fengfeng.org.cn ~]# sed -i 's@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g' /etc/ssh/sshd_config
[root@node100.fengfeng.org.cn ~]#
[root@node100.fengfeng.org.cn ~]# grep GSSAPIAuthentication /etc/ssh/sshd_config
GSSAPIAuthentication no
6/检查DNS配置
[root@node100.fengfeng.org.cn ~]# hostname --fqdn
node100.fengfeng.org.cn
7/ 关闭透明大页
[root@node100.fengfeng.org.cn ~]# vi /etc/rc.d/rc.local
[root@node100.fengfeng.org.cn ~]# tail -8 /etc/rc.d/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
[root@node100.fengfeng.org.cn ~]# chmod +x /etc/rc.d/rc.local
ansible-playbook 3_copy.yml
---
- hosts: client
tasks:
- name: copy rc.local to client hosts
copy:
src: "/etc/rc.d/rc.local"
dest: "/etc/rc.d/rc.local"
force: yes
backup: yes
8/修改Linux内核参数,禁用ipv6
[root@node100.fengfeng.org.cn ~]# tail -8 /etc/sysctl.conf #编辑内核参数文件,对Linux内核参数的修改如下
#Add by fengfeng
fs.aio-max-nr=1048576
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 262144 16777216
net.ipv4.tcp_wmem=4096 262144 16777216
net.ipv6.conf.all.disable_ipv6 = 1
vm.swappiness = 10
swap设置解释:
只要确定不会OOM,就把swap关掉。如果datanode是32G,最好128G,可以不关
默认是30%,上面是调到10,就是系统占用90%时才使用swap
[root@fengfeng-temp-1 ~]# sysctl -q vm.swappiness
vm.swappiness = 30
#表示物理内存剩30%时,开始用swap
swapon -a是开启
swapon -s 是关闭
[root@node100.fengfeng.org.cn ~]# sysctl -p #我们使用该命令就可以让"/etc/sysctl.conf"中的配置生效
ansible-playbook 3_copy.yml
---
- hosts: client
tasks:
- name: copy /etc/hosts to client hosts
copy:
src: "/etc/sysctl.conf"
dest: "/etc/sysctl.conf"
force: yes
backup: yes
上面参数解释:
fs.aio-max-nr = 1048576 #最大并发I/O请求数
net.core.rmem_default = 262144 #操作系统接收缓冲区的默认大小
net.core.wmem_default = 262144 #操作系统发送缓冲区的默认大小
net.core.rmem_max = 16777216 #操作系统接收缓冲区最大值
net.core.wmem_max = 16777216 #操作系统发送缓冲区最大值
net.ipv4.tcp_rmem = 4096 262144 16777216 #接收窗口尺寸的最小,默认,最大值
net.ipv4.tcp_wmem = 4096 262144 16777216 #发送窗口尺寸的最小,默认,最大值
9/增加文件限制
[root@node100.fengfeng.org.cn ~]# ulimit -n #软限制
1024
[root@node100.fengfeng.org.cn ~]#
[root@node100.fengfeng.org.cn ~]# ulimit -Hn #硬限制,很显然,在大数据集群环境中,我们不应该使用默认配置,Hortonworks推荐10000或者更多。
4096
通过对limits的设置来优化系统性能
[root@node100.fengfeng.org.cn ~]# tail -7 /etc/security/limits.conf
#ADD BY fengfeng
* soft nofile 1048576
* hard nofile 1048576
* soft nproc 1048576
* hard nproc 1048576
* soft memlock unlimited
* hard memlock unlimited
[root@node100.fengfeng.org.cn ~]# tail -3 /etc/security/limits.d/20-nproc.conf
#ADD BY fengfeng
* soft nproc 1048576
root soft nproc unlimited
#(可选)临时生效
ulimit -c unlimited
ulimit -n 65535 #打开文件数
ulimit -s 64000 #stack size的大小,默认是10M
ulimit -u 10000 #不用调,用户的最大进程数,云主机上已调.
10/测试磁盘速度
yum -y install hdparm
[root@node100.fengfeng.org.cn ~]# hdparm -t /dev/sdb1
/dev/sdb1:
Timing buffered disk reads: 2502 MB in 3.01 seconds = 832.18 MB/sec #如果你没有看到70MB以上的速度
测试写速度:
dd bs=8k count=8k if=/dev/zero of=test.log conv=fdatasync #ucloud可到400MB/s
CDH安装前系统优化准备的更多相关文章
- CM+CDH安装教程(CentOS)
一.简单介绍 CM:Cloudera Manager,Cloudera公司编写的一个CDH的管理后台,类似各CMS的管理后台. CDH:Cloudera’s distribution,includin ...
- Cloudera Manager安装之Cloudera Manager安装前准备(CentOS6.5)(一)
Cloudera Manager安装前准备 (一)机器准备 192.168.80.148 clouderamanager01 (部署ClouderaManager-server和Mirror se ...
- Cloudera Manager安装之Cloudera Manager安装前准备(Ubuntu14.04)(一)
其实,基本思路跟如下差不多,我就不多详细说了,贴出主要图. 博主,我是直接借鉴下面这位博主,来进行安装的!(灰常感谢他们!) 在线和离线安装Cloudera CDH 5.6.0 Cloudera M ...
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...
- EBS R12.2快速安装前没有配置Global Inventory报错
EBS R12.2快速安装前没有配置Global Inventory,导致验证时"file systems"这一项没有通过,被标记了"X": (本图其它两个验证 ...
- Inno Setup 安装前卸载原程序
Inno Setup 安装前卸载原程序 分类: Install Setup 2013-02-02 15:53 2315人阅读 评论(0) 收藏 举报 很多時候我們需要在安裝文件之前卸載原有的程序而不是 ...
- cdh 安装记录
安装文件准备 CDH 下载地址:http://archive.cloudera.com/cdh5/parcels/latest/ 下载操作系统对应的版本: 1.CDH-5.3.0-1.cdh5.3.0 ...
- Ambari安装之Ambari安装前准备(CentOS6.5)(一)
优秀博客 <Ambari--大数据平台的搭建利器> Ambari安装前准备 (一)机器准备 192.168.80.144 ambari01 (部署Ambari-server和Mirro ...
- CDH 安装
CDH 安装 市场上免费大数据框架主要有三个版本,原生的 Apache 版本,Cloudera(https://www.cloudera.com/) 公司研发的(Cloudera Distributi ...
随机推荐
- CDOJ 1263 The Desire of Asuna 贪心
The Desire of Asuna Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Othe ...
- Minimal Labels
Minimal Labels 这个题需要用到拓扑排序的思维,但是这个题还有一个条件--字典序最小,因此可以用一个递增的优先队列来维护,每找到一个入度为 0 的点就把它 push 进去因而每一次判断的点 ...
- LVS配置
今天面试时,突然被面试官问到怎样用shell命令搞定某个文件夹下java代码行数的统计. 想了一下,基本思路就是找到这个文件夹下面的所有java文件,然后每个文件统计一下代码,外层套个for循环,叠加 ...
- CentOS7 docker服务部署
以下命令可以在root身份下保存为shell脚本直接bash一次性执行 参考: https://yeasy.gitbooks.io/docker_practice/install/centos.htm ...
- DL反向传播理解
作者:寒小阳 时间:2015年12月. 出处:http://blog.csdn.net/han_xiaoyang/article/details/50321873 声明:版权所有,转载请联系作者并注明 ...
- Fastadmin 后台编辑,或者添加的时候,出现的问题
1.情况如图:编辑的时候,这个关联id,默认查出来的是用户昵称,如果要显示用户名,该怎么修改,不要着急,听我慢慢道来 2.首先要找到 编辑页面,检查问题 3.完成
- 学习 vue 需要了解的内容
总结 vue 的目录 1. vue 基础 指令 事件 动态的属性 组件 动画 2. vue 组件通信 1. 父传子 props 2. 子传父 ref 3. 插槽 4. 组件的生命周期 3. vue 的 ...
- Note 1 for <Pratical Programming : An Introduction to Computer Science Using Python 3>
Book Imformation : <Pratical Programming : An Introduction to Computer Science Using Python 3> ...
- nginx的请求限制
一.http协议的连接与请求 总结: HTTP请求是建立在一次TCP连接的基础之上. 一次TCP请求至少产生一次HTTP请求. 二.连接限制 limit_conn_module 配置语法: Synta ...
- Mysql-将一张表中的数据批量导入另一张表中
由于mysql不支持select into 方法,mysql怎样将一张表的查询结果存到另一张表中? 找了两个方法 第一种: create table dust select * from studen ...