Hadoop伪分布式环境部署

Hadoop环境部署-JDK部分
-------------------------------------------------------------------------------------------------------------
    1. 先修改权限
        chown -R beifeng:beifeng /opt/
    2. 解压JDK到指定的目录下,目录任意,建议不要装在某个用户主目录下
        tar -zxvf jdk-7u67-linux-x64.tar.gz -C /opt/modules/
    3. 添加环境变量
        修改vi /etc/profile文件,配置jdk环境变量
        #JAVA_HOME
        export JAVA_HOME=/opt/modules/jdk1.7.0_67
        export PATH=$PATH:$JAVA_HOME/bin
        source /etc/profile生效文件
    4. 验证是否配置成功:java -version
        jps命令可以查看java 进程
        echo $JAVA_HOME
       若版本不对,则查看所有jdk
               rpm -qa|grep java
       删除其他版本的jdk
           rpm -e --nodeps 其他版本jdk文件名

        
Hadoop伪分布式环境部署-Hadoop部分
-------------------------------------------------------------------------------------------------------------
    1.     解压Hadoop到指定目录下
        tar -zxvf hadoop-2.5.0.tar.gz -C /opt/modules/
        
    2.     修改hadoop/etc/hadoop/hadoop-env.sh文件
        修改hadoop/etc/hadoop/mapred-env.sh文件
        修改hadoop/etc/hadoop/yarn-env.sh文件
        指定Java安装路径
        export JAVA_HOME=/opt/modules/jdk1.8.0_151

3.    修改hadoop/etc/hadoop/core-site.xml文件

       注意:hadoop中的四个核心模块对应四个默认配置文件
        指定默认的文件系统为HDFS,文件系统的访问入口,namenode所在的机器
        9000端口是早期Hadoop 1.x使用的,现在Hadoop 2.x使用的是8020
        端口号用于节点直接内部通信,使用RPC通信机制

       注意:/tmp表示临时存储目录,系统每次重启会按照脚本预先设置好的删除里面的文件
        重新自定义系统生成的文件路径,/tmp会被清空,无法保证数据文件安全性
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hostname:8020</value>
        </property>
        <property>
              <name>hadoop.tmp.dir</name>
              <value>/opt/modules/hadoop-2.7.3/data/tmp</value>
        </property>
        
        
  4    修改hadoop/etc/hadoop/hdfs-site.xml文件
        指定HDFS文件存储的副本数个数,默认是3个,这里是单台机器就设置为1,这个数字要小于datanode的节点数
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>

    8.    修改hadoop/etc/hadoop/slaves文件
        指定从节点的机器位置,添加主机名即可
        hostname 比如:bd1.ibeifeng.com

    5    格式化namenode,到hadoop根目录下
        bin/hdfs namenode -format

    出现此行为格式化成功。可查看如下集群ID。

    6.    启动命令
        sbin/hadoop-daemon.sh start namenode
        sbin/hadoop-daemon.sh start datanode

启动成功显示,用jps命令查看,显示进程则成功。若没有启动成功,可能配置文件改错了,或IP错了,或防火墙没关。

    7.    查看HDFS外部UI界面
        bigdata-04或者IP地址 跟上50070端口号,外部通信http
        dfs.namenode.http-address:50070

    8    测试HDFS环境
        创建文件夹,HDFS中有用户主目录的概念,和Linux一样
        bin/hdfs dfs -mkdir -p ibf_test/iuput
             9.    上传文件到HDFS         bin/hdfs dfs -put etc/hadoop/core-site.xml etc/hadoop/hdfs-site.xml /              10.    读取HDFS的文件         bin/hdfs dfs -text /core-site.xml              11.    下载文件到本地(指定下载到哪里,同时可以重命名成get-site.xml)         bin/hdfs dfs -get /core-site.xml /home/beifeng/get-site.xml