栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hadoop伪分布式配置和搭建,hadoop单机安装,wordcount实例测试,hadoop安装java目录怎么找,问题及问题解决方法

Hadoop伪分布式配置和搭建,hadoop单机安装,wordcount实例测试,hadoop安装java目录怎么找,问题及问题解决方法

Hadoop伪分布式配置和搭建,hadoop单机安装,wordcount实例测试,hadoop安装java目录怎么找,问题及问题解决方法 环境说明

系统:ubuntu18.04
主机名:test1
用户名:sylvan

hadoop单机安装

换源操作这里不再给出,请各位自行解决。

在Linux环境下完成单机环境的搭建,并运行Hadoop自带的WordCount实例检测是否运行正常。

Java是Hadoop的主要先决条件。首先检查java是否安装:java -version

java未安装,使用sudo apt install openjdk-8-jdk 安装OpenJDK8.
再次检查java是否安装成功:

查看java环境变量是否配置:

无输出,说明环境变量未配置,接下来查找java安装路径,配置环境变量。
先查找java安装路径,发现是:/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

在/etc/profile里配置java环境变量,配置完成后用echo检查JAVA_HOME成功:

接着下载hadoop-2.10.1,并解压(在 /usr/local/ 里)。


配置hadoop环境变量,并尝试运行hadoop:


这意味着Hadoop在独立模式下工作正常。默认情况下,Hadoop被配置为在非分布式模式的单个机器上运行。

运行WordCount测试

利用hadoop提供的的.jar 文件实现wordcount. 首先,创建输入目录input,接着创建测试文本,在input目录复制几份。

测试文本:

测试文本的复制:

查看hadoop mapreduce例子有哪些功能:
hadoop-mapreduce-examples-2.10.1.jar

启动Hadoop进程计数在所有在输入目录中可用的文件的单词总数,将结果保存到output 文件夹中。

查看 output 文件夹内容:

Hadoop伪分布式搭建

在Linux环境下完成伪分布式环境的搭建,并运行Hadoop自带的WordCount实例检测是否运行正常。

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。Hadoop 的配置文件位于 /usr/local/hadoop-2.10.1/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。

首先,配置hadoop的环境变量:(在etc/profile中)

配置hadoop-env.sh文件的java环境变量。

注意:这里要将 ${JAVA_HOME} 替换为之前在 /etc/profile里设置的JAVA_HOME,也就是 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

mapred-env.sh、yarn-env.sh无需再配置。

接着配置Hadoop的文件列表。

core-site.xml文件中包含如读/写缓冲器用于Hadoop的实例的端口号的信息,分配给文件系统存储,用于存储所述数据存储器的限制和大小。

hdfs-site.xml 文件中包含如复制数据的值,NameNode路径的信息,本地文件系统的数据节点的路径。这意味着是存储Hadoop基础工具的地方。

slave文件添加节点主机,发现已经有localhost,因为是伪分布式,所以无需修改成本机的test1.

格式化namenode

启动hdfs守护进程

查看web端,说明搭建好了Hadoop的hdfs分布式存储,接下来要继续配置Hadoop的mapreduce.

mapred-site.xml 文件用于指定正在使用MapReduce框架,从mapred-site.xml.template 模版复制即可,指定mapreduce程序运行在yarn平台上。

yarn-site.xml 用于配置yarn.


问题:
启动yarn:(yarn)启动失败,JAVA_HOME is not set and could not be found.

问题解决:配置hadoop-env.sh文件里的JAVA_HOME环境变量


启动yarn:

访问集群中的所有应用程序的默认端口号为8088,使用以下URL访问该服务。
查看web端:运行正常

查看节点情况:

运行wordcount实例检测:

在HDFS的根目录下创建一个目录input,将之前的test.txt上传到HDFS。
继续创建一个output输出目录,执行hadoop jar命令,结果输出到output/ part-r-00000文件下。


查看结果:
(报错:/output already exists)

删除,重新执行:

查看结果:

通过网页查看任务完成情况:


可以发现当hadoop集群运行时,会报警告:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
出现原因:Hadoop 没有成功加载本地库,所以使用了内置的 Java 类库。
解决方法:1. 直接在log中忽略warning;2. 替换hadoop本地库.


关闭hadoop

(分别关闭了namenodes,yarn,resourcemanager,nodemanager)


参考:
  1. Hadoop伪分布搭建,以及简单使用命令
  2. 安装Hadoop 本地模式测试Hadoop,wordcount
  3. Hadoop环境安装设置
  4. 02-Hadoop集群启动测试
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/629212.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号