oozie 重新提交作業

2021-09-06 11:53:38 字數 1045 閱讀 7760

在oozie的執行過程當中可能會出現錯誤,比如資料庫連線不上,或者作業執行報錯導致流程進入suspend或者killed狀態,這個時候我們就要分析了,如果確實是資料或者是網路有問題,我們比如把問題解決了才可以重新執行作業。重新執行作業分兩種情況,suspend狀態和killed狀態的,這兩種狀態是要通過不同的處理方式來處理的。

(1)suspend狀態的我們可以用resume方式來在掛起的地方恢復作業,重新執行,或者是先殺掉它,讓它進入killed狀態,再進行重新執行。

public

static

void

resumejob(string jobid)

catch

(oozieclientexception e)

}public

static

void

killjob(string jobid)

catch

(oozieclientexception e)

}

(2)killed狀態的重新執行方法和它不一樣,下面先貼出**。

public

static

void

rerunjob(string jobid, properties conf)

catch

(oozieclientexception e)

}

好,現在開始講解,重新執行作業,除了需要原有流程的id之外,還需要重新配置作業屬性,它可以和原來的屬性不一樣,這裡面有兩個屬性是必須要注意的,它們是重新提交作業必須具備的屬性,如果不存在就會報錯的,它們分別是oozie.wf.rerun.failnodes和oozie.wf.rerun.skip.nodes。這兩個必須必須存在乙個,第乙個是自動執行失敗的流程節點,第二個是需要跳過的節點,通過設定這個屬性的話,如果已經執行成功的節點不在這個屬性裡面的話就可以讓已經執行成功的節點再執行一遍了,爽吧!

好啦,就到這吧,oozie貌似就這麼多東西了,目前貌似一直都沒有看到它的事務機制,它的定時作業不太想研究,看著就費勁兒,還不如自己寫乙個定時作業呢。。。

Oozie提交作業總結

最常用的就是通過命令列方式提交,見yarn和hdfs的呼叫方式彙總中的 使用oozie提交yarn作業環節。使用rest的方式顯然更通用,當然原理與上述完全一致。首先在hdfs上建立相應工作空間目錄 user workspaces,放置oozie要用到的workflow.xml,並建立lib資料夾,...

Oozie 排程 shell 指令碼提交不到yarn

在oozied web找錯誤 原因是yarn site.xml中的兩處配置值太小了,不滿足作業的申請條件 把yarn site.xml中的兩處配置加大一點 容器記憶體 yarn.nodemanager.resource.memory mb 最大容器記憶體 yarn.scheduler.maximum...

python如何提交作業 提交作業

1.提交作業 1.1 簡單作業 如果您已經按照準備工作裡的步驟配置了預設映象 例項型別和網路型別,可以通過以下的簡單命令提交乙個作業。bcs sub echo 123 提交乙個單任務作業,執行 echo 123 如果您沒有對命令列工具進行過預設配置,需要在提交的時候指定更多的選項。bcs sub e...