搭建hadoop 3.0.0单机模式与伪分布模式

安装环境

ubuntu 16.04

所需软件

java sdk
Hadoop
ssh
rsync

单机模式


1. 安装java


http://www.oracle.com/technetwork/java/javase/downloads/index.html

  1. 新建目录`/usr/lib/java把下载的sdk文件移到其中

    mv /root/Downloads/jdk-file-name /usr/lib/java
    tar -xvf jdk-file-name.tar.gz
  2. 修改环境变量

    
    vim ~/.bashrc
    export JAVA_HOME=/usr/lib/java/jdk1.8.0_161
    export JRE_HOME=$JAVA_HOME/jre
    export CLASS_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASS_PATH
    source ~/.bashrc

2. 安装ssh


apt-get install ssh
  1. 启动服务

    /etc/init.d/ssh start
  2. 设置免密码登录,生成私钥与公钥

    ssh-keygen -t rsa -P “”
  3. 将公钥追加到authorized_keys

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  4. 检查是否能无密码登录ssh

    ssh localhost

3. 安装rsync


apt-get install rsync

4. 安装Hadoop


https://mirrors.cnnic.cn/apache/hadoop/common/hadoop-3.0.0/

  1. 将下载下来的hadoop解压到新建的/usr/local/hadoop

  2. 进入/usr/local/hadoop/hadoop-3.0.0/etc/hadoop

  3. 在hadoop-env.sh中配置java安装信息

    export JAVA_HOME=/usr/lib/java/jdk1.8.0_161
  4. 使hadoop-env.sh配置信息生效

    source hadoop-env.sh
  5. 为方便开机后可以立即使用hadoop的bin下命令,可将bin目录配置到~/.bashrc中

    vim ~/.bashrc
    export PATH=$JAVA_HOME/bin:/usr/local/hadoop/hadoop-3.0.0/bin:/usr/local/hadoop/hadoop-3.0.0/sbin:$PATH
  6. 使配置生效

    source ~/.bashrc
  7. 验证hadoop版本信息

    hadoop version

5. 运行hadoop自带的例子


  1. 在hadoop目录下创建input目录,并将/usr/local/hadoop/hadoop-3.0.0/etc/hadoop下所有文件复制到input目录下

    mkdir usr/local/hadoop/hadoop-3.0.0/input
    cp /usr/local/hadoop/hadoop-3.0.0/etc/hadoop/*.xml usr/local/hadoop/hadoop-3.0.0/input
  2. 进入/usr/local/hadoop/hadoop-3.0.0/share/hadoop/mapreduce/

    hadoop jar hadoop-mapreduce-examples-3.0.0.jar grep usr/local/hadoop/hadoop-3.0.0/input usr/local/hadoop/hadoop-3.0.0/output 'principal[.]*'
  3. 使用hadoop命令运行自带的wordcount程序,结果输出到output中

    hadoop jar hadoop-examples-1.2.1.jar wordcount input output

最后可在output中看到input中文件单词的统计结果: 都多少个‘principal’ 和多少个 ‘principal.’

到此hadoop单机模式配置及验证成功

伪分布模式


  1. 配置hadoop核心配置文件core-site.xml,主要配置hdfs地址和端口号

    <configuration>
            <property>
                    <name>fs.default.name</name>
                    <value>hdfs://localhost:9000</value>
            </property>
            <property>
                    <name>hadoop.tmp.dir</name>
                    <value>/usr/local/hadoop/hadoop-3.0.0/tmp</value>
            </property>
    </configuration>
  2. 配置hadoop hdfs配置文件hdfs-site.xml,主要配置replication

    <configuration>
            <property>
                    <name>dfs.replication</name>
                    <value>1</value>
            </property>
            <property>
                    <name>dfs.name.dir</name>
                    <value>/usr/local/hadoop/hadoop-3.0.0/hdfs/name</value>
            </property>
            <property>
                    <name>dfs.data.dir</name>
            <value>/usr/local/hadoop/hadoop-3.0.0/hdfs/data</value>
            </property>
    </configuration>
  3. 配置hadoop的MapReduce配置文件 mapred-site.xml, 主要配置

    <configuration>
            <property>
                    <name>mapred.job.tracker</name>
                    <value>localhost:9001</value>
            </property>
    </configuration>
  4. Hadoop namenode 格式化

    hdfs namenode -format
  5. 进入/usr/local/hadoop/hadoop-3.0.0/sbin, 在start-dfs.shstop-dfs.sh中加入:

    HDFS_DATANODE_USER=root
    HADOOP_SECURE_DN_USER=hdfs
    HDFS_NAMENODE_USER=root
    HDFS_SECONDARYNAMENODE_USER=root
  6. start-yarn.shstop-yarn.sh中加入:

    YARN_RESOURCEMANAGER_USER=root
    HADOOP_SECURE_DN_USER=yarn
    YARN_NODEMANAGER_USER=root
  7. 启动hadoop

    start-dfs.sh
    start-yarn.sh

    或直接

    start-all.sh
  8. 运行例子

    hdfs dfs -mkdir -p /user/root/input
    
    hdfs dfs -copyFromLocal /usr/local/hadoop/hadoop-3.0.0/etc/hadoop/* /user/root/input
    
    hadoop jar hadoop-mapreduce-examples-3.0.0.jar grep /user/root/input /user/root/output2 'principal[.]*'

Web UI

Namenode
http://localhost:9870
Resource manager
http://localhost:8088
MapReduce job history server
http://localhost:19888

到此hadoop伪分布模式配置及验证成功

猜你喜欢

转载自blog.csdn.net/libbyandhelen/article/details/79319756
今日推荐