Hadoop伪分布式搭建

一:搭建的种类

  1)本机模式

  2)伪分布式模式

  3)完全分布式模式

我们先来学习下搭建伪分布式模式。

二:要求

  hadoop版本2.7.3,这个版本的hadoop有些小的bug但是不影响使用,电脑要求8G内存,最好加固态硬盘,会大大提升电脑的性能,centos6.5/6.8。

三:安装步骤

    1.安装centos6.5/6.8,注意:采用自建用户***,我们用hyxy,密码自己设定,我们用123456,不能采用root,所有的软件都放在/home/hyxy/soft目录下。

    2.卸载本机自带jdk,先用命令 rpm -qa | grep java检测本机都有哪些jdk,然后用 rpm -e --nodeps ***,***为你检测出的jdk名称,reg:rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.x86_64。

    3.安装jdk1.8版本,并创建软连接,创建软连接命令为:ln -s 源文件 目标文件。

    4.配置环境变量在.bash_profile下,写明JAVA_HOME,CLASSPATH,PATH。

    5.安装hadoop,解压,创建软连接,到.bash_profile下配置环境变量,写明HADOOP_HOME和PATH。

    6.用命令source .bash_profile进行生效。检测java和hadoop是否配置成功,输入java -version 和hadoop version 都会显示对应的版本号,说明配置成功。

    7.配置hadoop的配置文件

      1)hadoop-env.sh 添加JAVA_HOME 

      2)yarn-env.sh 添加JAVA_HOME

      3)core-site.xml 

        备注:localhost为主机名,端口号是9000,默认端口号是8020,可以不写。

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

         4) hdfs-site.xml

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

     8.配置无密登陆 

$ ssh localhost(主机名)
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa (生成秘钥)说明:-t设置生成秘钥的算法采用的rsa,-P设置密码默认为空,-f设置秘钥生成的文件位置~/.ssh $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys(生成认证库) $ chmod 0600 ~/.ssh/authorized_keys(修改权限)

    9.格式化文件系统

      使用命令:hdfs namenode -format

    10.开启服务

      使用命令start-all.sh ,输入jps命令查看守护进程,一共是5个,输入http://localhost:50070/会查看到你的live node为一个说明配置正确,50070为默认端口号。

四:查看当前hadoop-2.7.3的默认配置文件

  1.core-default.xml:[hadoop-common-2.7.3.jar]

  2.hdfs-default.xml:[hadoop-hdfs-2.7.3.jar]

  3.mapred-default.xml:[hadoop-mapreduce-client-core-2.7.3.jar]

  4.yarn-default.xml:[hadoop-yarn-common-2.7.3.jar]  

五:分别启动守护进程(启动顺序不重要

  1.启动namnode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo start namenode

  2.启动datanode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo start datanode

  3.启动secondarynamenode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo start secondarynamenode

六:分别停止守护进程

  1.停止namnode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo stop namenode

  2.停止datanode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo stop datanode

  3.停止secondarynamenode进程

    $>hadoop-daemons.sh --config ~/soft/hadoop/etc/hadoop_pseudo stop secondarynamenode

七:hadoop start-dfs.sh的执行流程

  hadoop的瓶颈为物理存储,而非网络,内核cpu,内存。

  hadoop默认查找{HADOOP_HOME}/etc/hadoop

  流程:

    start-dfs.sh-->hdfs-config.sh  说明:加载各种配置信息

          -->hadoop-daemons.sh  说明:执行slaves和daemon

          -->hadoop-daemon.sh  说明:根据command调用HDFS,执行相关操作

          -->hdfs  说明:执行相关操作,加载Class文件

          -->调用java底层源代码  说明:执行相关Class文件的Main函数  

  

原文地址:https://www.cnblogs.com/lyr999736/p/9061460.html