hadoop 2.3 集群总结

用了近两个礼拜的摸索终于搭建好了hadoop集群,测试性能也符合预期。

centos6.4下hadoop2.3集群总结如下:

关于环境的设置:

             1.关闭selinux (反复折腾了好多次)

               vi /etc/selinux/config

SELINUX=disabled

             2.关闭防火墙

service iptables status
service ip6tables status
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off

             3.对ssh打开免密码登陆设置

                vi /etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

             4.设置jdk环境变量

export JAVA_HOME=/usr/local/jdk1.7.0_51
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

update-alternatives --install /usr/bin/java java /usr/local/jdk1.7.0_51/bin/java 60
update-alternatives --config java

   关于经常遇到的问题:

  •    etc/hadoop/hdfs-site.xml 文件中dfs.replication每个节点都需要保持一致

            针对小规模的集群设置为1其实就可以了 执行效率还提高了,没必要是用2份或者3份,反而影响性能

  •      namenode 最好与datanode分开

            因为它是起到管理节点的作用,头节点效率低了,直接影响整个hadoop运行速度以及稳定性

  •     hadoop2.3 对默认的机器硬件要求为4核和8g

           所以在机器性能没有问题的情况下,最好使用默认值,强制使用2核或者1核反而达不到预期效果

  •     hadoop 中针对集群方式,其实所有节点配置都是一样的,增加或减少节点只需要对etc/hadoop/slaves进行配置就可以了。其他的事情hadoop自己来做。

    hadoop常用命令如下:

./bin/hdfs dfsadmin -report

./bin/hadoop namenode -format

./bin/hdfs dfs -mkdir -p /export/home/hadoop  

./bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.3.0.jar randomwriter /export/home/hadoop/input

./sbin/start-dfs.sh &&  ./sbin/start-yarn.sh 

./sbin/stop-yarn.sh && ./sbin/stop-dfs.sh

./bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.3.0.jar randomwriter /export/home/hadoop/input1

执行结果有原来的伪分布式的43分钟 

使用集群方式后三个slave,每个slave 4核8,使用1个副本 执行结果为4.5分钟。

   针对自己搭建的集群使用vmware workstation 就足够了,没有必要使用exsi 或者其他虚拟化软件,上手时间还快。

    

相关推荐