我正在单节点集群下测试mr作业。一旦我安装了mahout 9版本,mapreduce作业就停止在jobtracker中显示进度(不知道安装mahout之后是否发生了这种情况)当我在hadoop集群中运行作业时,它不会像以前那样在job-tacker ui中显示状态,并且控制台中显示的执行日志也不同(类似于mahout日志)为什么会这样?提前谢谢。
klr1opcd1#
很可能您的作业正在使用localjobrunner运行。如果你的工作是使用 LocalJobRunner 你会注意到的 mapred.LocalJobRunner mapreduce作业输出中的事件。这可能有两个原因:对于mapreduce v1:确保您的 mapred-site.xml 有财产吗 mapred.job.tracker 并指向适当的jobtracker主机和端口:
LocalJobRunner
mapred.LocalJobRunner
mapred-site.xml
mapred.job.tracker
<property> <name>mapred.job.tracker</name> <value>[fqdn_of_jobtracker]:[port_of_jobtracker]</value> </property>
通常,如果hadoop无法读取属性,那么mapreduce将选择localjobrunner mapreduce.framework.name 或者如果属性已设置为 local .如果没有成功,请尝试使用hadoop的通用命令行选项显式指定属性,如:
mapreduce.framework.name
local
hadoop jar hadoop-examples.jar pi -jt [fqdn_of_jt]:[port_of_jt] 2 1000
对于Yarn和mapreduce v2:在这种情况下,如果您在yarn之上运行mapreduce,那么作业将由 LocalJobRunner 如果尚未在中指定mapreduce框架名称 mapred-site.xml ,因此请确保您具有以下属性:
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
1条答案
按热度按时间klr1opcd1#
很可能您的作业正在使用localjobrunner运行。如果你的工作是使用
LocalJobRunner
你会注意到的mapred.LocalJobRunner
mapreduce作业输出中的事件。这可能有两个原因:对于mapreduce v1:
确保您的
mapred-site.xml
有财产吗mapred.job.tracker
并指向适当的jobtracker主机和端口:通常,如果hadoop无法读取属性,那么mapreduce将选择localjobrunner
mapreduce.framework.name
或者如果属性已设置为local
.如果没有成功,请尝试使用hadoop的通用命令行选项显式指定属性,如:
对于Yarn和mapreduce v2:
在这种情况下,如果您在yarn之上运行mapreduce,那么作业将由
LocalJobRunner
如果尚未在中指定mapreduce框架名称mapred-site.xml
,因此请确保您具有以下属性: