oozie错误:job一直在running或者SUSPENDED,但是就是不执行。任务单独执行是可以的。

1.问题描述

一个简单的mapreduce的wordcount任务,单独使用yarn调用时没有任何问题,可以跑出来。但是,放入yarn的时候,就会出现问题。一直时Running的状态,而且hadoop对应目录下也没有输出结果的目录,很是头痛。

2.原因:

经过百般查找和无限次尝试,发现是job.properties的jobTracker属性端口配置错误导致。因为Oozie去调用Hadoop的jobtracker去监听任务,但是Hadoop2+之后,使用yarn替代了jobtracker,所以此处应当配置yarn的yarn.resourcemanager.address属性的对应值。

查找yarn.resourcemanager.address,可以通过跑出的mapreduce任务的history,点击configuration查看配置,然后搜索关键字:yarn.resourcemanager.address

3.解决

(1)修改job.properties

nameNode=hdfs://hadoop:8020
jobTracker=hadoop:8032
queueName=default
examplesRoot=oozie-apps

oozie.wf.application.path=${nameNode}/user/hadoop/${examplesRoot}/mr-wordcount/workflow.xml
outputDir=map-reduce

(2)将hdfs上所有相关mr-wordcount相关目录删除,然后重新上传项目文件

参考https://blog.csdn.net/wiborgite/article/details/78585689?utm_source=blogxgwz5#commentBox

猜你喜欢

转载自blog.csdn.net/u010886217/article/details/84845945
今日推荐