上篇博客介绍了Linux下搭建Hadoop运行环境,本篇主要介绍Hadoop的本地运行模式和伪分布式模式,关注专栏《破茧成蝶——大数据篇》查看相关系列的文章~


目录

一、本地模式

1.1 官方Grep案例

1.2 官方WordCount案例

二、 伪分布式模式

2.1 启动HDFS运行MapReduce程序

2.2 启动YARN运行MapReduce程序

2.3 配置历史服务器

2.4 配置日志的聚集


一、本地模式

1.1 官方Grep案例

1、在hadoop-2.7.2下创建input文件夹

[root@node1 hadoop-2.7.2]# mkdir input

2、将Hadoop的xml配置文件拷贝到input目录下

[root@node1 hadoop-2.7.2]# cp etc/hadoop/*.xml input

3、执行share目录下的MapReduce程序

[root@node1 hadoop-2.7.2]# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'

4、查看结果

[root@node1 hadoop-2.7.2]# cat output/*
1       dfsadmin

1.2 官方WordCount案例

1、在hadoop-2.7.2下创建wcinput文件夹

[root@node1 hadoop-2.7.2]# mkdir wcinput

2、在wcinput文件下创建一个wc.input文件

[root@node1 hadoop-2.7.2]# cd wcinput[root@node1 hadoop-2.7.2]# touch wc.input

3、编辑wc.input文件

[root@node1 hadoop-2.7.2]# vi wc.input

在文件中输入如下内容:

hadoop yarnhadoop mapreducespark

4、回到Hadoop目录/opt/modules/hadoop-2.7.2

5、执行程序

[root@node1 hadoop-2.7.2]# hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput

6、查看结果

[root@node1 hadoop-2.7.2]# cat wcoutput/part-r-00000spark 2hadoop  2mapreduce       1yarn    1

二、 伪分布式模式

2.1 启动HDFS运行MapReduce程序

1、配置集群

(1)在hadoop-env.sh中修改JAVA_HOME路径

export JAVA_HOME=/opt/modules/jdk1.8.0_144

(2)修改core-site.xml配置文件

<!-- 指定HDFS中NameNode的地址 --><property><name>fs.defaultFS</name><value>hdfs://node1:9000</value></property><!-- 指定Hadoop运行时产生文件的存储目录 --><property><name>hadoop.tmp.dir</name><value>/opt/modules/hadoop-2.7.2/data/tmp</value></property>

(3)配置hdfs-site.xml配置文件

<!-- 指定HDFS副本的数量,单机只能指定一个副本 --><property><name>dfs.replication</name><value>1</value></property>

2、启动集群

(1)格式化NameNode

[root@node1 hadoop-2.7.2]# bin/hdfs namenode -format

(2)启动NameNode

[root@node1 hadoop-2.7.2]# sbin/hadoop-daemon.sh start namenodestarting namenode, logging to /opt/modules/hadoop-2.7.2/logs/hadoop-root-namenode-node1.out[root@node1 hadoop-2.7.2]# jps29863 Jps29803 NameNode[root@node1 hadoop-2.7.2]#

(3)启动DataNode

[root@node1 hadoop-2.7.2]# sbin/hadoop-daemon.sh start datanodestarting datanode, logging to /opt/modules/hadoop-2.7.2/logs/hadoop-root-datanode-node1.out[root@node1 hadoop-2.7.2]# jps30051 Jps29947 DataNode29803 NameNode[root@node1 hadoop-2.7.2]#

3、启动成功后,在浏览器查看HDFS文件系统。

4、查看产生的log日志

[root@node1 logs]# pwd/opt/modules/hadoop-2.7.2/logs

       注意:NameNode格式化一次即可,不可以重复格式化。格式化NameNode会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到以往数据。所以,格式化NameNode时,要先删除data数据和log日志,然后再格式化NameNode

[root@node1 current]# pwd
/opt/modules/hadoop-2.7.2/data/tmp/dfs/name/current
[root@node1 current]# cat VERSION
#Mon Apr 27 13:11:17 CST 2020
namespaceID=1774549806
clusterID=CID-6da8d858-532a-4e38-b954-f164e63a9924
cTime=0
storageType=NAME_NODE
blockpoolID=BP-83434581-192.168.0.192-1587017800137
layoutVersion=-63
[root@node1 current]# pwd
/opt/modules/hadoop-2.7.2/data/tmp/dfs/data/current
[root@node1 current]# cat VERSION
#Mon Apr 27 13:12:01 CST 2020
storageID=DS-f135ada4-7135-4e43-b064-a87b40c43ba9
clusterID=CID-6da8d858-532a-4e38-b954-f164e63a9924
cTime=0
datanodeUuid=4f2ac5ff-aedd-4554-93e4-88618536ebdc
storageType=DATA_NODE
layoutVersion=-56
[root@node1 current]#

5、操作集群

(1)在HDFS上创建一个input文件夹

[root@node1 ~]# hdfs dfs -mkdir -p /user/xzw/input[root@node1 ~]# hdfs dfs -ls /user/xzwFound 1 itemsdrwxr-xr-x   - root supergroup          0 2020-04-27 13:28 /user/xzw/input

(2)将测试文件上传到HDFS中

[root@node1 hadoop-2.7.2]# hdfs dfs -put ./wcinput/wc.input /user/xzw/input[root@node1 hadoop-2.7.2]# hdfs dfs -ls /user/xzw/inputFound 1 items-rw-r--r--   1 root supergroup         46 2020-04-27 13:32 /user/xzw/input/wc.input

(3)运行MapReduce程序

[root@node1 hadoop-2.7.2]# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/xzw/input/ /user/xzw/output

查看输出结果:

[root@node1 hadoop-2.7.2]# hdfs dfs -ls /user/xzw/outputFound 2 items-rw-r--r--   1 root supergroup          0 2020-04-27 13:42 /user/xzw/output/_SUCCESS-rw-r--r--   1 root supergroup         38 2020-04-27 13:42 /user/xzw/output/part-r-00000[root@node1 hadoop-2.7.2]# hdfs dfs -cat /user/xzw/output/part-r-00000spark        2hadoop      2mapreduce        1yarn  1

2.2 启动YARN运行MapReduce程序

1、配置集群

(1)配置yarn-env.sh

export JAVA_HOME=/opt/modules/jdk1.8.0_144

(2)配置yarn-site.xml

<!-- Reducer获取数据的方式--><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定YARN的ResourceManager的地址--><property><name>yarn.resourcemanager.hostname</name><value>node1</value></property>

(3)配置mapred-env.sh

export JAVA_HOME=/opt/modules/jdk1.8.0_144

(4)对mapred-site.xml.template重新命名为:mapred-site.xml,并进行配置。

<!-- 指定MR运行在YARN上 --><property><name>mapreduce.framework.name</name><value>yarn</value></property>

2、启动集群

(1)启动NameNode和DataNode

(2)启动ResourceManager

[root@node1 hadoop-2.7.2]# yarn-daemon.sh start resourcemanagerstarting resourcemanager, logging to /opt/modules/hadoop-2.7.2/logs/yarn-root-resourcemanager-node1.out[root@node1 hadoop-2.7.2]# jps1136 NameNode1587 Jps1236 DataNode1368 ResourceManager

(3)启动NodeManager

[root@node1 hadoop-2.7.2]# yarn-daemon.sh start nodemanagerstarting nodemanager, logging to /opt/modules/hadoop-2.7.2/logs/yarn-root-nodemanager-node1.out[root@node1 hadoop-2.7.2]# jps1136 NameNode1665 NodeManager1236 DataNode1368 ResourceManager1770 Jps

3、浏览器中查看YARN的界面

4、执行MapReduce程序

[root@node1 hadoop-2.7.2]# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/xzw/input/ /user/xzw/output

可以在YARN的监控界面查看相关job的状态:

查看运行结果:

[root@node1 hadoop-2.7.2]# hdfs dfs -ls /user/xzw/output
Found 2 items
-rw-r--r--   1 root supergroup          0 2020-04-27 14:09 /user/xzw/output/_SUCCESS
-rw-r--r--   1 root supergroup         38 2020-04-27 14:09 /user/xzw/output/part-r-00000

2.3 配置历史服务器

为了查看程序的历史运行情况,需要配置一下历史服务器。具体配置步骤如下:

1、配置mapred-site.xml,在配置文件中增加以下配置:

 <!-- 历史服务器端地址 --><property><name>mapreduce.jobhistory.address</name><value>node1:10020</value></property><!-- 历史服务器web端地址 --><property><name>mapreduce.jobhistory.webapp.address</name><value>node1:19888</value></property>

2、启动历史服务器

[root@node1 hadoop]# mr-jobhistory-daemon.sh start historyserverstarting historyserver, logging to /opt/modules/hadoop-2.7.2/logs/mapred-root-historyserver-node1.out[root@node1 hadoop]# jps6176 Jps1136 NameNode1665 NodeManager1236 DataNode6133 JobHistoryServer1368 ResourceManager

3、监控界面查看JobHistory

2.4 配置日志的聚集

日志聚集是指应用运行完之后,将程序运行日志信息上传到HDFS系统上。日志聚集的好处是可以方便的查看程序运行情况,方便开发测试。这里需要注意的是,开启日志聚集功能,需要重新启动NodeManager、ResourceManager和HistoryManager。

开启日志聚集的步骤如下:

1、配置yarn-site.xml。

 <!-- 日志聚集功能使用 --><property><name>yarn.log-aggregation-enable</name><value>true</value></property><!-- 日志保留时间设置7天 --><property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value></property>

2、重启相关服务

3、执行WordCount程序

[root@node1 hadoop-2.7.2]# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/xzw/input /user/xzw/output

4、查看历史服务器

本文到此就结束了,下篇文章将会为大家讲述Hadoop的完全分布式~

三、Hadoop运行模式(本地模式、伪分布模式)相关推荐

  1. Apache hadoop集群安装的三种方式:本地、伪分布、完全分布

    四 Hadoop运行模式 1)官方网址 (1)官方网站: http://hadoop.apache.org/ (2)各个版本归档库地址 https://archive.apache.org/dist/ ...

  2. [Hadoop] mac搭建hadoop3.X 伪分布模式

    目录 一 Homebrew安装 二 SSH免密登录配置 三 Hadoop安装 四 伪分布式配置 a.hadoop-env.sh配置 b.core-site.xml配置 c.hdfs-site.xml配 ...

  3. Hadoop 3.x各模式部署 - Ubuntu

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  4. 本地配置_Hadoop本地模式的安装配置

    Hadoop 是一个由 Apache 基金会所开发的分布式系统基础架构,它可以使用户在不了解分布式底层细节的情況下开发分布式程序,充分利用集群的威力进行高速运算和存储.从其定义就可以发现,它解決了两大 ...

  5. 桌面虚拟化之本地模式(离线模式)大比拼

    虚拟桌面之本地模式大比拼 说起虚拟桌面的Local Model("本地模式",也称离线模式),你也许会一头雾水,但看完下面的这个场景你就应该能够充分理解其意义所在了. 在虚拟桌面环 ...

  6. ubuntu java环境变量_hadoop:伪分布模式环境变量的配置

    单节点集群模式(a Single Node Cluster)又称伪分布模式,只需一个节点即可运行.这种模式一般只是用来学习或者开发.测试使用.实际使用中还是使用多节点的分布式. 1.环境变量配置 为了 ...

  7. hadoop: hbase1.0.1.1 伪分布安装

    环境:hadoop 2.6.0 + hbase 1.0.1.1 + mac OS X yosemite 10.10.3 安装步骤: 一.下载解压 到官网 http://hbase.apache.org ...

  8. hadoop1.2.1伪分布模式配置

    1.修改core-site.xml,配置hdfs 1 <configuration> 2 <property> 3 <name>fs.default.name< ...

  9. Hadoop 的三种运行模式_本地模式_伪分布式模式

    演示的版本是:2.7.2 官方文档 Hadoop运行模式 Hadoop运行模式包括:本地模式.伪分布式模式以及完全分布式模式. Hadoop官方网站:http://hadoop.apache.org/ ...

最新文章

  1. rtsp有没有好使_轻量级RTSP服务和内置RTSP网关有什么不同?
  2. 关于Django的时区设置TIME_ZONE,USE_TZ的问题
  3. 055_Descriptions描述列表
  4. Linux 文件系统概述
  5. STL 之fill和fill_n
  6. jq获取最后一个子节点_如何选择jQuery中的最后一个子元素?
  7. C语言序列是否有序、序列中删除指定数字、序列中整数去重、有序序列合并问题
  8. 有了这三个神器工具集,应用开发想怎么玩就怎么玩
  9. LeetCode 49 字母异位词分组
  10. 视频教程-webservice入门到精通(备java基础,xml,javaee框架)-Java
  11. MMA7660传感器使用心得
  12. 互联通对接阿里云专线开通手册
  13. linux上wps能云同步吗,WPS For Linux 6634 再次更新发布-文档也要上云
  14. fedora15 一些简单应用
  15. 1.2字符类型及操作
  16. php重载求圆锥体积,编写一函数文件,实现求一个圆锥体的体积。
  17. 天津市儿童计算机编程课,天津2021少儿编程(少儿机器人编程是什么)
  18. JAVA射线_射线法 - 萌德真帅 - 博客园
  19. TensorFlow之深层神经网络
  20. 嵌入式硬件开发基础(持续更新)

热门文章

  1. mac 系统 与 windows 系统兼容移动硬盘格式 -- exFat
  2. php soapclient
  3. git pull -r
  4. win10远程桌面时出现:你的凭证不工作
  5. Linux命令集(Linux常用命令集--CD指令篇)
  6. lucene-使用lius解析html
  7. remoting 突然出现 服务器遇到内部错误。有关更多信息,请关闭服务器的 .config 文件中的 customErrors。
  8. 长租公寓风口消失,资本退潮后蛋壳赴美上市能否避免爆雷危机?
  9. 用 镜像劫持 技术 对付一些小病毒
  10. 阿里巴巴 JSONObject.toJSONString 删除转义字符