Hadoop伪分布式安装

我们此次安装是在Linux环境,Linux的一些安装操作和网络配置这里就不多讲了,这里默认Linux是可以和win主机ping通的。

一.安装JDK

    1.上传压缩包

          上传jdk的压缩包并进行解压,最好解压到新建的目录下;

          tar -zxvf jdk-7u55-linux-i586.tar.gz -C /usr/local/java

    2.添加环境变量

          编辑配置文件,并将java添加到环境变量中;

          vim /etc/profile

          在文件最后添加:

          export JAVA_HOME=/usr/local/java/jdk-7u_65-i585
          export PATH=$PATH:$JAVA_HOME/bin

          刷新配置:
          source /etc/profile

二.安装Hadoop

    1.上传压缩包

         把hadoop的安装压缩包上传到linux上,我这里安装的是2.4版本,然后使用tar命令进行解压,最好解压到自己新建的文件夹下面,这样便于管理;

    tar -zxvf hadoop-2.4.1.tar.gz -C /usr/local/hadoop

Hadoop伪分布式安装

    2.删除doc目录(不是必须)

          解压完成之后我们可以看到hadoop的目录文件,bin和sbin目录主要是一些脚本文件,其中sbin是关于一些启动和停止hadoop的脚本,跟hadoop相关的jar包存放在share目录下;

          在share目录下有个doc目录,这里都是一些说明文档,没什么作用,可以把它删除掉;

          rm -rf doc

Hadoop伪分布式安装

Hadoop伪分布式安装

Hadoop伪分布式安装

    3.修改Hadoop配置文件

         进去etc/hadoop,就看到很多配置文件,我们不需要全部都修改,要修改的配置文件有5个;

Hadoop伪分布式安装

       hadoop-env.sh

         环境变量的配置文件,在这里配置,获取java_home,这里我们看到.cmd的文件,这是win的配置文件,这里我们改的是linux的.sh;

         vi hadoop-env.sh,这里把java_home改成具体的jdk路径

Hadoop伪分布式安装

        core-site.xml

           Hadoop公共部分的配置文件,这里把文件系统和产生文件的存储目录配置上去;

           这里我们是伪分布式,节点都在一台机子上,所以这里是localhost,默认的端口号是9000;

Hadoop伪分布式安装

        hdfs-site.xml

           hdfs组件的配置文件,这里配置文件副本数量;

           一般情况副本的数量3个,但是我们这只是一台主机,所以就要一个;

Hadoop伪分布式安装

        mapred-site.xml

           mv mapred-site.xml.template mapred-site.xml,给配置文件改个名字,要不然Hadoop不会去读这个文件;

          这里配置hadoop调度集群,如果不配置就相当于只是在本地跑,只能是单机版;

Hadoop伪分布式安装

    4.将hadoop添加到环境变量

          vi /etc/profile,然后加上hadoop的配置;

          source /etc/profile,让配置马上生效

Hadoop伪分布式安装

    5.初始化namenode

          hadoop namenode -format,在任意地方执行这条命令;

          初始化的工作主要是,在data目录下新建了子文件夹以及在子文件夹里面写元数据;

         看到这句话代表格式化成功;

Hadoop伪分布式安装

    6.启动hadoop

         进去sbin目录下,有很多脚本,可以启动全部,也可以先启动HDFS,再启动YARN;

         ./start-dfs.sh

         ./start-yarn.sh

Hadoop伪分布式安装

 

三.验证是否启动成功

        使用jps命令验证;

Hadoop伪分布式安装

         这里我们发现我们之前修改配置文件的时候并没有指定datanode,只是指定了namenode,这里的datanode也在localhost上启动起来了,其实,配置文件slaves已经默认指定了datanode的启动机器是localhost,我们也可以在slaves中进行修改启动机器;