1. 程式人生 > >oozie錯誤:job一直在running或者SUSPENDED,但是就是不執行。任務單獨執行是可以的。

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