问题标签 [hadoop-yarn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
228 浏览

java - Hadoop YARN Map 任务耗尽物理和虚拟内存

我有以下方法,我在多线程执行中从我的地图任务运行,但是这在独立模式下运行良好,但是当我在 Hadoop YARN 中运行它时,它会耗尽 1GB 的物理内存并且虚拟内存也会射击向上。

从编程的角度来看,我需要知道我是否做错了什么,我想我正在关闭我正在尽快打开的所有流,所以我认为没有理由发生内存泄漏。请指教。

谢谢。

公共静态无效manageTheCurrentURL(字符串网址){

}

0 投票
1 回答
4572 浏览

java - 由于 ConnectException,Hadoop 映射失败

我正在尝试在 Hadoop 2.2.0 集群上运行 wordcount 示例。由于此异常,许多地图都失败了:

每次我运行作业时,都会更改有问题的端口,但映射任务仍然失败。我不知道哪个进程应该监听那个端口。我还尝试在运行期间跟踪netstat -ntlp输出,并且没有进程从未听过端口。

更新:主节点的内容/etc/hosts是这样的:

对于 slave1 是:

对于 slave2,它就像 slave1 有细微的变化,我想你可以猜到。最后,yarn/hadoop/etc/hadoop/slaveson master的内容是:

0 投票
9 回答
144340 浏览

hadoop - 容器运行超出内存限制

在 Hadoop v1 中,我为每个 7 个映射器和减速器分配了 1GB 的插槽,我的映射器和减速器运行良好。我的机器有8G内存,8个处理器。现在使用 YARN,当在同一台机器上运行相同的应用程序时,出现容器错误。默认情况下,我有以下设置:

它给了我错误:

然后我尝试在 mapred-site.xml 中设置内存限制:

但仍然出现错误:

我很困惑为什么地图任务需要这么多内存。据我了解,1GB 的内存足以完成我的 map/reduce 任务。为什么当我为容器分配更多内存时,任务使用更多?是因为每个任务都有更多的拆分吗?我觉得稍微减小容器的大小并创建更多的容器会更有效,这样更多的任务可以并行运行。问题是我怎样才能确保每个容器不会被分配比它可以处理的更多的拆分?

0 投票
1 回答
778 浏览

hadoop - 无法在 Eclipse 中运行 TestDistributedShell

我可以在 Maven 中成功运行 TestDistributedShell,但在 Eclipse 中失败。我需要做任何额外的设置吗?

这是我在 Eclipse 中收到的错误消息:

0 投票
9 回答
3494 浏览

hadoop - Hadoop gen1 与 Hadoop gen2

我对 Hadoop-2.x 中 tasktracker 的位置有点困惑。

Hadoop-1.x 中的守护进程namenode, datanode, jobtracker, taskracker and secondarynamenode

Hadoop-2.x 中的守护进程namenode, datanode, resourcemanager, applicationmaster, secondarynamenode.

这表示Jobtracker has split up into: resourcemanager and applicationmaster

那么在哪里tasktracker呢?

0 投票
2 回答
19509 浏览

java - Hadoop 没有在作业跟踪器中显示我的作业,即使它正在运行

问题:当我向我的 hadoop 2.2.0 集群提交作业时,它没有显示在作业跟踪器中,但作业成功完成。通过这个我可以看到输出并且它运行正确并在运行时打印输出。

我尝试了多个选项,但工作跟踪器没有看到工作。如果我使用 2.2.0 hadoop 运行流式作业,它会显示在任务跟踪器中,但是当我通过 hadoop-client api 提交它时,它不会显示在作业跟踪器中。我正在查看端口 8088 上的 ui 界面以验证作业

环境 OSX Mavericks、Java 1.6、Hadoop 2.2.0 单节点集群、Tomcat 7.0.47

代码

等/hadoop/mapred-site.xml

等/hadoop/core-site.xml

0 投票
1 回答
850 浏览

hadoop - MRv1(mapreduce)和MRv2(YARN)的“Wordcount”程序是否不同

不同 Hadoop(Mapreduce) 版本的“Wordcount”程序是否不同。至少对于 MRv1(mapreduce)和 MRv2(YARN)?

编程相同,但字数所需的软件包不同.......?

0 投票
0 回答
773 浏览

hadoop-yarn - 向 Yarn 资源管理器发送请求时如何创建 Yarn 请求令牌

我正在尝试创建一个非托管 ApplicationMaster 并且在正确创建 AMRMtokens 时遇到问题。我查看了 TestAMRMtokens.java 测试用例,这就是我想出的。(这是scala代码)

Yarn 不喜欢这个要求并说:

2014-01-27 10:47:10,938 WARN SecurityLogger.org.apache.hadoop.ipc.Server: 127.0.0.1:63085:null 的身份验证失败(DIGEST-MD5:获取密码的 IO 错误)2014-01-27 10: 47:10,938 INFO org.apache.hadoop.ipc.Server:8030 上的 IPC 服务器侦听器:来自客户端 127.0.0.1 的 readAndProcess 引发异常 [org.apache.hadoop.security.token.SecretManager$InvalidToken:找不到 ApplicationAttempt appattempt_1390848430314_0001_000001 的密码]

我确定我做错了什么。是否有说明如何正确创建令牌的文档或示例代码?我是否必须在 Yarn/Hadoop 配置中的某个地方设置这些用户。

配置:

  1. Hadoop 2.2.0
  2. 所有服务都在 localhost 接口上侦听只需使用开箱即用的配置。没有特别的变化。
0 投票
1 回答
781 浏览

hadoop - 如何在 Yarn(Hadoop 2.2.0)中分配 Reduce 作业(多个 reduce 作业)

我一直在使用 HADOOP 1.2.1 服务器,并在那里执行了许多猪作业。最近,我考虑将我的 Hadoop 服务器更改为 HADOOP 2.2.0。所以我在 HADOOP 2.2.0 中尝试了一些猪作业,就像我在 HADOOP 1.2.1 版本中所做的那样。

但是我在 YARN MR2 中几乎不明白的一件事是,每个 mr 作业中只有一个减少作业。

第一次,我认为 ok,reduce 比 mr1 快,因为资源管理器通过仅在一台服务器中处理它来有效地调度 reduce 作业。

但是在每一个 big size 的 mr 作业中,YARN MR2 每次都只分配一个 Reduce 作业。

下面是Extream案例。

我的旧 HADOOP(1.2.1 版)服务器由 1 个 jobtracker 和 2 个 tasktracker 组成。(每个4核,32G)

耗时 2 小时 38 分钟。

我的新 HADOOP(2.2.0 版)服务器由 1 个资源管理器和 8 个节点管理器组成。(每个 4 核,32G)(新系统要好得多)

耗时 5 小时 38 分钟。

虽然 My Old Hadoop server 的资源很差,但它比 New Hadoop 快得多。因为减少分配的工作。另一方面,HADOOP 2.2.0 server 资源丰富,map 比旧系统快很多,但是reduce 耗时很长。

Hadoop 2.2 内存配置为 Map(4G,堆空间 3G)和 Reduce(8G,堆空间 6G)。我尝试了各种配置集。但结果总是一项减少工作。

所以我检查了猪源代码。

My Pig 作业总是使 One reduce 作业的原因是 InputSizeReducerEstimator 类无法访问 hdfs 文件系统。

// InputSizeReducerEstimator.java 列表第 79 行 poLoads = PlanHelper.getPhysicalOperators(mapReduceOper.mapPlan, POLoad.class);

结果 poLoads 始终为 0 大小。

所以我的减少工作总是估计为一个。

0 投票
1 回答
540 浏览

hadoop - UnsupportedOperationException:未由 KosmosFileSystem FileSystem 实现实现

我想知道您对为什么会发生此错误的意见。在陆上生产环境中,我们使用的是 CDH4。在我们的本地测试环境中,我们只是使用 Apache Hadoop v2.2.0。当我运行在 CDH4 上编译的同一个 jar 时,MR 作业执行得很好。但是当我在 Hadoop v2.2.0(启用 YARN)上运行 jar 时,我得到了这个错误:

INFO mapreduce.Job: Task Id : attempt_1391062333435_0001_m_000000_0, Status : FAILED Error: java.lang.UnsupportedOperationException: Not implemented by the KosmosFileSystem FileSystem implementation

日志显示 Map 作业成功运行,但 Reduce 作业(全部失败)出现上述错误。谷歌上没有太多关于这个错误的点击,所以我无处可逃,但在这里。

有什么想法吗?谢谢。