Hadoop实战(虚拟多台电脑)

 Hadoop

的下载地址:

 http://www.apache.org/dyn/closer.cgi/hadoop/core/ 

 版本:hadoop0.17.1 

 JDK的安装:

 要求必须安装jdk1.5.07以上的版本。

  

分步式环境的搭建:

 1、硬件环境

 我们采用了3台机器来构建,都安装的是Red Hat 4.1.2-42系统,并且都有一个名为“mingjie“的帐号,如下:

         主机名称:hdfs1    ip:192.168.0.221        功能:NameNode,JobTracker 

          主机名称:hdfs2    ip:192.168.0.227       功能:DataNode,TaskTracker 

          主机名称:hdfs3    ip:192.168.0.228       功能:DataNode,TaskTracker 

 

重点:修改3台机器的/etc/hosts,让彼此的主机名称和ip都能顺利解析

        127.0.0.1       localhost  

          192.168.0.37    hdfs1 

         192.168.0.43    hdfs2 

          192.168.0.53    hdfs3 

 

2、 每台机器都要安装java环境,我们的路径统一为“/opt/modules/jdk1.6“,并添加到系统环境变量

       sudo vi /etc/profile JAVA_HOME=/opt/modules/jdk1.6 

       PATH=$JAVA_HOME/bin:$PATH:$CATALINA_HOME/bin 

       CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar 

       export JAVA_HOME 

 

3、下载hadoop0.17.1,将hadoop解压到/home/mingjie/,建议最好也将hadoop的目录添加到环境变量里面去: 

       HADOOP_HOME=/home/mingjie/hadoop-0.17.1 #这是hadoop的主目录

       export HADOOP_HOME 

      HADOOP_CONF_DIR=$HADOOP_HOME/conf   #这是hadoop的配置文件目录

      export HADOOP_CONF_DIR 

     HADOOP_LOG_DIR=/home/mingjie/hadoop-0.17.1/log    #存放运行日志目录   

     export HADOOP_LOG_DIR   

      export PATH=$PATH:$HADOOP_HOME/bin 

 

4、 安装ssh,并生成公钥和私钥

      运行 ssh-keygen -t rsa,根据屏幕提示直接选择“回车” 会在用户目录~/.ssh/产生两个文件,id_rsa,id_rsa.pub 

      cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  

      以上配置完成后,执行一下ssh localhsot,确认你的每台机器都可以使用ssh 

 

 

 

5、 将master服务器上的authorized_keys的内容加到slave两台机器的authorized_keys文件中。让master也可以不需要密码访问2台slave服务器。                  

        sudo scp authorized_keys hdfs2:/home/mingjie/.ssh/   

        sudo scp authorized_keys hdfs3:/home/mingjie/.ssh/    

        ssh hdfs2    

        ssh hdfs3  

6、 接下来,我们要修改hadoop的[conf/masters]、[conf/slaves]这2个文件:Master设置、Slave设置

        (<HADOOP_HOME>/conf/masters):hdfs1     

        (<HADOOP_HOME>/conf/slaves):hdfs2 hdfs3 

7、 修改[conf/hadoop-env.sh]:         

       export JAVA_HOME=/opt/jdk1.6.0_03 


8、 修改[conf/hadoop-site.xml],这里只是几个常用的属性配置,有关hadoop的性能优化调整,需要研究hadoop-default.xml: 

       <configuration> 

         <property>   

      <name>fs.default.name</name>//你的namenode的配置,机器名加端口

          <value>hdfs://hdfs1:54310/</value>     

</property>     

<property> 

      <name>mapred.job.tracker</name>//你的JobTracker的配置,机器名加端口   

       <value>hdfs://hdfs1:54311</value> 

    </property> 

    <property>  

      <name>dfs.replication</name>//数据需要备份的数量,默认是三   

       <value>1</value> 

    </property> 

    <property> 

       <name>hadoop.tmp.dir</name>//Hadoop的默认临时路径,这个最好配置,如果在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化的命令。

           <value>/home/mingjie/hadoop-0.17.1/tmp/</value>  

   </property>     

<property>   

       <name>mapred.child.java.opts</name>//java虚拟机的一些参数可以参照配置   

       <value>-Xmx512m</value> 

    </property>  

   <property>  

       <name>dfs.block.size</name>//block的大小,单位字节,后面会提到用处,必须是512的倍数,因为采用crc作文件完整性校验,默认配置512是checksum的最小单元。

         <value>5120000</value> 

posted on 2014-12-10 19:22  bigdudu  阅读(314)  评论(0)    收藏  举报