Linux下单节点Hadoop伪分布式安装

时间:2021-03-30 04:51:24

1 、下载 hadoop-1.1.2.tar.gz   jdk-7u25-linux-i586.tar.gz  将其分别解压到/usr/local下面,

        并将jdk的解压目录改名jdk1.7

2 、配置java的环境变量 vim /etc/profile 在最后面加入下面的内容

       JAVA_HOME=/usr/local/jdk1.7
       CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
       PATH=$JAVA_HOME/bin:$PATH
       export PATH JAVA_HOME

3、配置ssh的免密码登录

      注意:ubuntu  默认安装openssh-client,但是木有安装server
                  通过 /etc/init.d/ssh -start 启动server进程,如果提示ssh不存在 那么就是没安装server
                  通过 sudo apt-get install openssh-server命令安装即可  。fedora linux没有这个问题

      ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

      这时通过  ls -l ~/.ssh/可以看到在~/.ssh/下生成两个文件id_rsa,id_rsa.pub

     执行命令  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys生成 authorized_keys.

     如果配置成功,运行命令 ssh localhost 可以成功免密码登录

    实际上,hadoop的安装过程中,是否免密码登录是无关要紧的,但是如果不配置密码登录,

    每次启动hadoop都需要输入密码以登录到每台机器的DataNode上,考虑到一般的hadoop集群

    动辄拥有数百或上千台机器,因此一般来说都会配置SSH的免密码登录。

4、配置hadoop

      cd /usr/local/hadoop-1.1.2/conf 进入配置目录

      1) 修改hadoop-env.sh
           找到JAVA_HOME的配置选项,去掉前面的#号,

           并修改JAVA_HOME=/usr/local/jdk1.7(按照实际情况修改)

      2) 修改 core-site.xml (定义hdfs的入口)

           在根目录下建立一个存放hdfs文件系统的目录,mkdir /hadoop_tmp,

           然后,在<configuration></configuration>之间添加内容,添加后如下:

           <configuration>
              <property>
              <name>fs.default.name</name>
             <value>hdfs://localhost:9000</value>
             </property>

             <property>      
                   <name>hadoop.tmp.dir</name>  
                    <value>/hadoop_tmp</value>   
                    <description>A base for other temporary directories.</description>              
              </property>

             </configuration>    

         hdfs默认目录/tmp,而/tmp目录每次启动都会被清空,导致格式化信息丢失,namenode无法启动,

         所以需要修改hadoop.tmp.dir

      3) 修改hdfs-site.xml

          在<configuration></configuration>之间添加内容,添加后如下:

            <configuration>
               <property>
               <name>dfs.replication</name>
               <value>1</value>
               </property>

             </configuration>

       4)修改mapred-site.xml(mapreduce job tracker入口)

            在<configuration></configuration>之间添加内容,添加后如下:
                 <configuration>
                     <property>
                        <name>mapred.job.tracker</name>
                        <value>localhost:9001</value>
                    </property>
               </configuration> 

          配置完成

5、在hadoop 的bin目录下运行 ./hadoop namenode -format格式化hadoop配置

      启动hadoop 命令: ./start-all.sh

      运行jps查看是否成功启动,正常启动可以看到下面五个节点
        JobTracker
        DataNode
        TaskTracker
        NameNode
        SecondaryNameNode

        打开浏览器,输入localhost:50030可以看到mapreduce的界面
        输入localhos:50070可以看到hdfs文件系统的管理界面

6、关闭hadoop   命令./stop-all.sh