大数据入门——开发YARN客户端应用过程中遇到的问题及解决方案记录

大数据入门——开发YARN客户端应用过程中遇到的问题及解决方案记录,第1张

大数据入门——开发YARN客户端应用过程中遇到的问题及解决方案记录 前言

我最近在学习大数据相关的知识,将遇到的一些问题记录如下。

实验环境

linux ubuntu
hadoop3.0
eclipse
(不全)

整体实验流程简介
  • 启动hadoop
cd /apps/hadoop/sbin
./start-all.sh
  • 在/data/yarn目录下用wget命令从网上下载用到的依赖包,命名为hadoop2lib 并解压到当前目录下
  • 在eclipse下新建项目、包、类(Client与ApplicationMaster)
  • 右键项目,新建一个文件夹(folder),命名为lib
  • 将/data/yarn下hadoop2lib 里的所有jar包copy到本项目的lib下
  • 选中lib下的所有jar包,选择Build path
  • 编写Client 与ApplicationMaster 类中的内容
  • 将整个项目打包
    (export->JAR file->确定目标路径)
  • 在linux命令行
cd /data/yarn
  • 使用命令执行distributedsehll
    最后成功的结果:
我遇到的问题

第一次尝试的时候到最后一步出现了如下提示:

由果推因,发现早在将项目打包的时候就出了问题:


我目前对java的了解还很浅薄,没有办法判断是不是代码本身出了问题,但是参考代码的来源相对可靠,学长学姐们都是这样通过实验评测的,从理论上讲不会是代码本身的问题。

后来经过摸索,我找了两点可能的原因,最后成功了。

1 是导包 *** 作不规范导致的。 *** 作说明要求将/data/yarn下的hadoop2lib的.jar为后缀的文件导入eclipse相应项目的lib库下,我一开始在终端使用的是

cp -r /data/yarn/hadoop2lib /home/zhangyu/eclipse-workspace/YARN/lib

这个命令,-r *** 作使得整个hadoop2lib文件夹都被复制到lib中,这样不符合导包规范。

后来我删掉了包,先进入/data/yarn/hadoop2lib下,再重新导入,使用的是

cp ./*.jar /home/zhangyu/eclipse-workspace/YARN/lib

其中 .表示当前目录下,*表示全选, .jar规定只选中以jar为后缀的文件

可能是由于前面 *** 作太多,实验虚拟机卡住了,在linux终端输入ls命令查看两处都能找到相应jar包,但是在eclipse软件lib下没有,刷新也没用。

于是我听从学长的建议重新建一个package(顺便解释一下为什么截图里面的路径用的都是YARN1)

2 这个实验在虚拟机上断断续续地完成,第一次因为导包问题失败后,我再一次登录虚拟机时忘记了执行前面的启动hadoop *** 作,导致了第二次连接失败。

之后输入hadoop的启动命令后,再连接就成功了。

以后会吸取经验教训。
也希望我的经验能帮到你!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5681628.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存