我已经尝试在我的主机上运行 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中运行这个类。详细步骤:
在 Eclipse 中运行 Nodemanaer 与运行 Resourcemanager 相同。添加新配置并使用“--config your_yarn_conf_dir”填充参数,然后按运行按钮。
快乐编码~!