Security Tools
可以看到除了我们选择的外,系统还是默认安装了一些必须的软件包组。
**2、网络设置**
[root@centos ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:6D:58:E4
TYPE=Ethernet
UUID=5236fdbb-76ee-4f98-90cf-6bed4fb62661
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.2.200
GATEWAY=192.168.2.1
NETMASK=255.255.255.0
**3、Linux系统优化 Supper Hadoop**
**3.1 环境检查**
3.1.1 操作系统
cat /etc/redhat-release
CentOS release 6.6 (Final)
3.1.2 所有主机能够相互ping通
3.1.3 linux内核版本
uname -r
2.6.32-504.el6.x86_64
**3.2 添加安装集群用户&&关闭selinux&&修改Linux启动级别为3**
useradd hadoop
echo "hadoop123"|passwd --stdin hadoop
yum grouplist
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
setenforce 0
grep SELINUX=disabled /etc/selinux/config
grep id:3:initdefault: /etc/inittab
![](http://www.itweet.cn/screenshots/chkconfig-list.png)
**3.3 优化开机自动启动服务&&增大文件描述符(Hadoop并行读取数据文件)&&sudo权限管理**
chkconfig --list|grep 3:on |wc --l
chkconfig --list|grep 3:on | cut -d " " -f1
for name in chkconfig --list|grep 3:on | cut -d " " -f1
;do chkconfig $name off;done
chkconfig --list|grep 3:on
#如果系统基于lvm逻辑卷管理需要开启lvm2-monitor blk-availability两个服务
for name in crond ntpd lvm2-monitor blk-availability network rsyslog sshd;do chkconfig $name on;done
iptables -L -n
/etc/init.d/iptables stop
iptables -L -n
chkconfig --list|grep iptables
echo 'hadoop ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
echo '* - nofile 65535' >> /etc/security/limits.conf
tail -1 /etc/security/limits.conf
![](http://www.itweet.cn/screenshots/chkconfig-list-2.png)
**3.4 配置ntp服务器,让所有服务器时间保持一致,如果是非内网服务器可以直接安装启动ntp**
yum install htpd -y
/etc/init.d/ntpd start
chkconfig ntpd on
$ ntpq --p #公网自动时间同步
如果是内网服务器,需要配置一台ntp服务器,所有服务器到ntp服务器定期同步时间,内网ntp服务器配置:
vim /etc/ntp.conf
restrict default ignore //默认不允许修改或者查询ntp,并且不接收特殊封包
restrict 127.0.0.1 //给于本机所有权限
restrict 192.168.2.0 mask 255.255.255.0 notrap nomodify //给于局域网机的机器有同步时间的权限
server 192.168.2.124 # local clock
driftfile /var/lib/ntp/drift
fudge 127.127.1.0 stratum 10
ntpq -p 查询网络中的NTP服务器:
$ ntpq --p
所有机器服务器需要和ntp服务时间保持一致:
$ ntpdate 192.168.1.124 #刚刚配置好ntp服务器,大概需要5min后才能正常提供服务;报错"no server suitable for synchronization found"
所有大数据服务器设置cron同步ntp服务器时间:
$ crontab -l
00 1 * * * root /usr/sbin/ntpdate 192.168.1.124 >> /root/ntpdate.log 2>&1
**3.5 关闭防火墙**
/etc/init.d/iptables status
/etc/init.d/iptables stop
chkconfig iptables off
**3.6 关闭Swap**
swapoff -a
**3.7 Linux overcommit-memory**
echo 0 > /proc/sys/vm/overcommit_memory
**3.8 所有主机做好hosts ip映射&&repo文件**
tail -6 /etc/hosts
192.168.1.124 apache-server archive.cloudera.com archive-primary.cloudera.com
192.168.1.201 server1
192.168.1.202 server2
192.168.1.203 server3
192.168.1.204 server4
所有主机同步hosts文件一致
scp -r /etc/hosts hostname:/etc/
所有主机repo文件同步
scp -r CentOS-httpd.repo cloudera-cdh5.repo hostname:/etc/yum.repos.d/
**3.9 swappiness && transparent\_hugepage**
#sudo echo '0' > /proc/sys/vm/swappiness
#sudo sysctl vm.swappiness=0
#sudo echo '#by whoami 2015-10-30'>> /etc/sysctl.conf
#sudo echo 'vm.swappiness=0'>> /etc/sysctl.conf
cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
[always] never
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
always [never]
echo '#by whoami 2015-10-30'>> /etc/rc.local
echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag ' >> /etc/rc.local
**4、克隆虚拟机**
虚拟机eth0无法启动解决,其实是因为克隆后Mac地址一致,导致冲突,而无法启动,报错信息如下:
Bring up interface eth0: Device eth0 does not seem to be present,delaying initialization.