4

一些主要的重构正在围绕 MapReduce 进行 Hadoop。有关相同的详细信息可以在下面的 JIRA 中找到。

https://issues.apache.org/jira/browse/MAPREDUCE-279

它有 ResourceManager、NodeManager 和 HistoryServer 守护进程。有没有人尝试在 Eclipse 中运行它们?这将使开发和调试目的变得更容易。

我在 Hadoop 论坛中发送了一封邮件,但没有人尝试过。只是想检查是否有人在stackoverflow中做了类似的事情。

4

2 回答 2

0

Nourl 等待https://issues.apache.org/jira/browse/MAPREDUCE-3131完成。您可以通过任何方式检查修订并尝试运行它。

您将需要 mvn site:site 来生成一个包含所有文档的文档。为了弄清楚如何?您可以打开脚本 debug.sh 并亲自查看。

基本上我们正在传递 JAVA_OPTIONS 并指定 Eclipse 远程调试参数。对于子进程来说,它变得很棘手,因为它需要指定一个属性mapred.child.java.opts

高温高压

-P

于 2012-01-23T10:35:46.070 回答
0

我已经尝试在我的主机上运行 YARN(下一代 mapreduce)好几天了。

首先,使用 svn 或 git 从 apache.org 获取源代码。以svn为例:

svn co https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.23.0

然后,使用 maven 生成 eclipse 相关文件(在此步骤之前,您应该在主机上配置 manve3。)

mvn test -DskipTests

mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

现在您可以将现有的maven项目导入eclipse。(您应该首先在eclipse中配置maven插件。)

在eclipse中:文件->导入现有的Maven项目

Choose "Existing Projects into Workspace"
Select the hadoop-mapreduce-project directory as the root directory
Select the hadoop-mapreduce-project project
Click "Finish"

由于未正确配置 class_path/build_path 并且未包含所有依赖包/类,我尝试了很多次。如果遇到和我一样的问题,尝试“添加外部类文件夹”,在项目属性下选择当前项目的构建目录。


更新:2012-03-15

我现在可以在 Eclipse 中运行 YARN(与 Hadoop0.23 相同)。

首先,您应该通过 exec 命令成功编译/构建 Yarn:

mvn clean package -Pdist -Dtar -DskipTests

由于我只关心如何调试 YARN,我在 linux 终端的单个主机上运行 HDFS,而不是在 eclipse 中。

bin/hdfs namenode -formate -clusterid your_hdfs_id
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode

然后,将hadoop 0.23导入eclipse,找到resourcemanager.java,下一步就是在eclipse中运行这个类。详细步骤:

  • 右键单击,然后选择作为应用程序运行
  • 添加新的配置来运行这个类,在参数部分,填写内容:

    --config your_yarn_conf_dir(与 HDFS conf 目录相同)

  • 单击运行按钮,您将在 Eclipse 控制台中找到资源管理器输出。

在 Eclipse 中运行 Nodemanaer 与运行 Resourcemanager 相同。添加新配置并使用“--config your_yarn_conf_dir”填充参数,然后按运行按钮。

快乐编码~!

于 2011-12-24T02:47:38.903 回答