来自旧版本的Hadoop,我正在寻找Hadoop 2.2.0中的用户日志文件(log.index,stderr,stdout,syslog)。我首先查找了Web界面,但是没有任何东西在端口50030上运行。然后我查看了HADOOP_HOME_DIR / logs,但是我没有看到用户日志目录,也没有看到有作业编号的东西。我看的Nex位置是temp dir(/ tmp),找到了类似的文件夹:
$ find . -name "job_local1643076800_0001"
./hadoop-tom/mapred/staging/tom1643076800/.staging/job_local1643076800_0001
./hadoop-tom/mapred/local/localRunner/tom/jobcache/job_local1643076800_0001
./hadoop-tom/mapred/local/localRunner/tom/job_local1643076800_0001
在这里,我找到了我期望的格式的目录: attempt_local1643076800_0001_m_000000_0 但他们是空的。
我也设置"export HADOOP_LOG_DIR=/path"
,但这也不会填满。我在这里缺少什么?或者当我从源代码构建hadoop时出现了什么问题?
提前致谢!
答案 0 :(得分:1)
用户日志应位于userlogs
文件夹下的文件夹logs
下。像hadoop-2.2.0/logs/userlogs/
这样的东西。检查jps
命令以查看是否正在运行所需的进程 - 可能不是。如果没有,请检查您的日志(而不是用户日志)是否有错误并完成配置。
如果你的进程没有运行,我想知道你是如何设法运行一些工作的。你的工作做得很好吗?
答案 1 :(得分:0)
hadoop 2.2.0中的默认mapreduce框架是YARN。 50030端口是Jobtracker webUI,在YARN而不是jobtracker,它使用资源管理器,其Webui可在8088访问。
在您的情况下,作业正在执行localRunner
,这意味着从客户端,YARN未正确配置或YARN服务已关闭。验证您的配置。