Hadoop伪分布式环境配置与启动

1. 环境准备

在一台linux机器上,安装好hadoop运行环境,安装方式请查看:HADOOP运行环境搭建

2. 启动HDFS并运行MapReduce程序

2.1. 配置集群

  1. 配置:hadoop-env.sh
    Linux系统中获取JDK的安装路径:
[root@ hadoop101 ~]# echo $JAVA_HOME
/opt/module/jdk1.8.0_144

编辑hadoop-env.sh,修改hadoop-env.sh中的JAVA_HOME 路径:

export JAVA_HOME=/opt/module/jdk1.8.0_144
  1. 配置:core-site.xml
    首先文件的存取目录不能停留在本地,要用HDFS上的文件,就需要配置HDFS的NameNode的地址。
    所以需要在core-site.xml中增加以下配置


fs.defaultFS
 hdfs://hadoop101:9000



 hadoop.tmp.dir
 /opt/module/hadoop-2.7.2/data/tmp

注意:地址中的hadoop101需要改为本地linux的IP地址或者主机名
hadoop.tmp.dir可以不配置,会默认将HDFS文件存储到/tmp目录下

  1. 配置:hdfs-site.xml
    因为伪分布式只有一个节点,所以需要把HDFS副本数量改为1(默认是3),需要在hdfs-site.xm中增加以下配置:


 dfs.replication
 1

2.2 启动集群

  1. 格式化NameNode(第一次启动时格式化,以后就不要总格式化)
[root@hadoop101 hadoop-2.7.2]$ bin/hdfs namenode -format
  1. 启动NameNode
[root@hadoop101 hadoop-2.7.2]# sbin/hadoop-daemon.sh start namenode
starting namenode, logging to /opt/module/hadoop-2.7.2/logs/hadoop-root-namenode-hadoop101.out
[root@hadoop101 hadoop-2.7.2]# 
  1. 启动DataNode
[root@hadoop101 hadoop-2.7.2]# sbin/hadoop-daemon.sh start datanode
starting datanode, logging to /opt/module/hadoop-2.7.2/logs/hadoop-root-datanode-hadoop101.out
[root@hadoop101 hadoop-2.7.2]# 

2.3 验证集群

  1. 查看是否启动成功
    执行命令jps,结果如下图所示,这说明nameNode和dataNode都已经启动成功
[root@hadoop101 hadoop-2.7.2]# jps
5584 DataNode
5671 Jps
5496 NameNode
[root@hadoop101 hadoop-2.7.2]# 
  1. 网页查看NameNode的界面
    在浏览器输入网址:http://hadoop101:50070/,即可登录到NameNode界面,可以查看HDFS集群的运行状态和文件。
    注意:域名要换成你自己的linux机器域名或者机器IP地址,如果无法访问,可能是防火墙没关

2.4 操作集群

集群启动成功后,就可以操作hdfs,包括创建目录、上传文件、删除文件、执行MR任务等。下面再测试一下,MR任务在HDFS上执行的效果。

  1. 在HDFS上创建文件夹/user/lancer/input
[root@hadoop101 hadoop-2.7.2]$ bin/hdfs dfs -mkdir -p /user/lancer/input

操作结果:


image.png
  1. 将测试文件上传到集群上,这里可以直接使用Hadoop的README.txt文件
[atguigu@hadoop101 hadoop-2.7.2]$bin/hdfs dfs -put README.txt /user/atguigu/input/

操作结果:


image.png
  1. 运行MapReduce程序
[root@hadoop101 hadoop-2.7.2]# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/lancer/input/ /user/lancer/output

运行结果如下:


image.png

可以在浏览器中下载输出文件,查看单词个数统计结果。

3. 启动YARN并运行MapReduce程序

3. 配置集群

  1. 配置yarn-env.sh和mapred-env.sh
    两个文件中都把JAVA_HOME改为jdk8的路径,有的文件中export JAVA_HOME被注释掉了,需要取消注释
export JAVA_HOME=/opt/module/jdk1.8.0_144
  1. 配置yarn-site.xml
    编辑yarn-size.xml,增加如下配置项:


        yarn.nodemanager.aux-services
        mapreduce_shuffle



        yarn.resourcemanager.hostname
        hadoop101

(d)配置mapred-site.xml (需要将mapred-site.xml.template重新命名为mapred-site.xml )
先将mapred-site.xml.template重新命名为mapred-site.xml

[root@hadoop101 hadoop]$ mv mapred-site.xml.template mapred-site.xml

然后在mapred-site.xml中增加以下配置项:



 mapreduce.framework.name
 yarn

3.2 启动yarn

  1. 启动前必须保证NameNode和DataNode已经启动
  2. 启动ResourceManager
[root@hadoop101 hadoop-2.7.2]$ sbin/yarn-daemon.sh start resourcemanager
  1. 启动NodeManager
[root@hadoop101 hadoop-2.7.2]$ sbin/yarn-daemon.sh start nodemanager

3.3 验证集群

  1. 验证启动成功
    执行jps,如果结果如下则说明启动成功。
[root@hadoop101 hadoop-2.7.2]# jps
5584 DataNode
6913 Jps
6071 ResourceManager
5496 NameNode
6318 NodeManager
[root@hadoop101 hadoop-2.7.2]# 
  1. 网页查看yarn页面
    在浏览器输入网址:http://hadoop101:8088/,即可登录到Yarn界面,可以查看任务运行状态。
    注意:域名要换成你自己的linux机器域名或者机器IP地址,如果无法访问,可能是防火墙没关
    页面如图所示:
    image.png

3.4 集群操作

  1. 执行MapReduce程序(方法同上)
[root@hadoop101 hadoop-2.7.2]# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/lancer/input/ /user/lancer/output2

同样是执行MR程序,但是这次是由Yarn统一调配的,就能在yarn的界面上看到任务执行的进度,和任务的详细信息,如下图所示:


image.png

3.5 配置历史服务器

虽然能看到任务的执行状态,但是现在返现点击history按钮时,网页无法打开,那是因为没有启动历史信息查看服务。


image.png
  1. 配置yarn-site.xml
    加入以下配置项:


mapreduce.jobhistory.address
hadoop101:10020



 mapreduce.jobhistory.webapp.address
 hadoop101:19888

  1. 启动历史服务器
[root@hadoop101 hadoop-2.7.2]$ sbin/mr-jobhistory-daemon.sh start historyserver
  1. 查看是否启动成功
    执行jps,如果出现JobHistoryServer则说明启动成功
[root@hadoop101 hadoop-2.7.2]# jps
5584 DataNode
7107 JobHistoryServer
6071 ResourceManager
5496 NameNode
7145 Jps
6318 NodeManager
[root@hadoop101 hadoop-2.7.2]# 
  1. 查看MR任务详细历史信息


    image.png

你可能感兴趣的:(Hadoop伪分布式环境配置与启动)