Ubuntu下hadoop2.4搭建集群(单机模式)

一  、新建用户和用户组

              注明:(这个步骤事实上能够不用的。只是单独使用一个不同的用户好一些)

            1.新建用户组      

sudo addgroup hadoop

Ubuntu下hadoop2.4搭建集群(单机模式)

           2.新建用户

sudo adduser -ingroup hadoop hadoop

Ubuntu下hadoop2.4搭建集群(单机模式)

           3.加入hadoop用户权限     

sudo gedit  /etc/sudoers

          打开sudoer文件后加入hadoop用户

Ubuntu下hadoop2.4搭建集群(单机模式)

# User privilege specification
root    ALL=(ALL:ALL) ALL
hadoop  ALL=(ALL:ALL) ALL

      4.使用hadoop用户登录


二、安装ssh

    

 sudo apt-get install openssh-server

     Ubuntu下hadoop2.4搭建集群(单机模式)


    安装完毕后。启动服务

sudo /etc/init.d/ssh start

    查看服务是否正确启动:ps -e | grep ssh

Ubuntu下hadoop2.4搭建集群(单机模式)


     集群、单节点模式都须要用到SSH无password登陆,首先设置SSH无password登陆本机。

     输入命令

ssh  localhost

 首次登录须要输入yes
 Ubuntu下hadoop2.4搭建集群(单机模式)

      设置免password登录,生成私钥和公钥

Ubuntu下hadoop2.4搭建集群(单机模式)

     以下我们将公钥追加到authorized_keys中,它用户保存全部同意以当前用户身份登录到sshclient用户的公钥内容。

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

Ubuntu下hadoop2.4搭建集群(单机模式)

   然后使用ssh localhsot就能够无password登录了。

   使用exit退出登录

Ubuntu下hadoop2.4搭建集群(单机模式)

三、安装Java环境

     曾经的教程都是建议安装Oracle的JDK,不建议使用OpenJDK。只是按http://wiki.apache.org/hadoop/HadoopJavaVersions中说的。新版本号在OpenJDK 1.7下是没问题的。通过命令安装OpenJDK 7。

sudoapt-getinstall openjdk-7-jreopenjdk-7-jdk

    查看安装结果。输入命令:java -version。结果例如以下表示成功安装。


Ubuntu下hadoop2.4搭建集群(单机模式)

  查看安装结果,输入命令:java -version,结果例如以下表示成功安装。

 Ubuntu下hadoop2.4搭建集群(单机模式)

四、 安装Hadoop 2.4.1

   2.4.1的下载地址为: http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.4.1/hadoop-2.4.1.tar.gz,安装教程主要參考了官方教程http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html

 下载后,解压到/usr/local/中。

然后改动目录名为hadoop

Ubuntu下hadoop2.4搭建集群(单机模式)

    赋予用户对该目录的读写权限(这个问题非常是坑,我当时配置的时候被一些方法坑了,不太了解文件权限的东西)

    有的建议是这样:

 sudo chmod 774 /usr/local/hadoop

    可是我用这个命令之后。目录所有被隐藏了。都打不开。最后我是删除了hadoop目录。使用以下这个才解决的。

 sudo  chown -R hadoop:hadoop   /usr/local/hadoop
  
     配置~/.bashrc

     配置该文件前须要知道Java的安装路径。用来设置JAVA_HOME环境变量,能够使用以下命令行查看安装路径

update-alternatives - -config java

        运行结果例如以下:

      Ubuntu下hadoop2.4搭建集群(单机模式)

     配置.bashrc文件

sudo gedit ~/.bashrc

Ubuntu下hadoop2.4搭建集群(单机模式)

#HADOOP VARIABLES START

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386

export HADOOP_INSTALL=/usr/local/hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

#HADOOP VARIABLES END

               运行以下命。使加入的环境变量生效:

source ~/.bashrc

              编辑/usr/local/hadoop/etc/hadoop/hadoop-env.sh

              运行以下命令打开该文件的编辑窗体

 sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh

              找到JAVA_HOME变量,改动此变量例如以下

 export JAVA_HOME==/usr/lib/jvm/java-7-openjdk-i386   

Ubuntu下hadoop2.4搭建集群(单机模式)


五、測试wordcount

     单机模式安装完毕。以下通过运行hadoop自带实例WordCount验证是否成功安装

     /usr/local/hadoop路径下创建input目录   

sudo mkdir input

    拷贝README.txt到input    

 cp README.txt input

 Ubuntu下hadoop2.4搭建集群(单机模式)

    运行WordCount

bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.4.0-sources.jar org.apache.hadoop.examples.WordCount input output

Ubuntu下hadoop2.4搭建集群(单机模式)

执行例如以下

Ubuntu下hadoop2.4搭建集群(单机模式)

运行 cat output/*。查看字符统计结果

Ubuntu下hadoop2.4搭建集群(单机模式)

结果例如以下

Ubuntu下hadoop2.4搭建集群(单机模式)