Hadoop本身(即hdfs和map / reduce) 工作 - 以及brew-installed hive(验证前两个)。只是GUI很奇怪:看到附带的截图:网络服务器已启动,但JobTracker没有提供任何有用的信息
找不到jobtracker.jsp:
任何人都可以在50030港口回家(是的!)
namenode ui怎么样?
答案 0 :(得分:2)
我在hadoop-2.0.0-cdh4.5.0安装上遇到了同样的错误。花了一些时间查看代码后,我设法通过将以下补丁应用于hadoop-common-2.0.0-cdh4.5.0.jar来实现这一点:
diff --git a/org/apache/hadoop/http/HttpServer.java b/org/apache/hadoop/http/HttpServer.java
index 25b4c75..1896623 100644
--- a/org/apache/hadoop/http/HttpServer.java
+++ b/org/apache/hadoop/http/HttpServer.java
@@ -237,6 +237,10 @@ public class HttpServer implements FilterContainer {
webAppContext.setDisplayName(name);
webAppContext.setContextPath("/");
webAppContext.setWar(appDir + "/" + name);
+
+ webAppContext.setDescriptor(appDir + "/" + name + "/WEB-INF/web.xml");
+ webAppContext.setResourceBase(appDir + "/" + name);
+
webAppContext.getServletContext().setAttribute(CONF_CONTEXT_ATTRIBUTE, conf);
webAppContext.getServletContext().setAttribute(ADMINS_ACL, adminsAcl);
addNoCacheFilter(webAppContext);
使用Jetty WebAppContext的jobtracker / tasktracker webapp初始化基本上缺少web.xml位置,使用setDescriptor()添加它并使用setResourceBase()正确设置resourceBase解决了这个问题。