寫在前面的話:azkaban這個輕量級的調度工具說實話報錯信息真的很讓人捉急,基本上提供不了什麼有用的信息
1. java.lang.IllegalStateException: Process has not yet started
檢查點一:檢查flow文件內容是否寫正確,格式問題,腳本路徑。這一切都很重要!!!
檢查點二:如果在集羣中部署了多Executor模式。那麼在這種模式下Azkaban web Server會根據策略,選取其中一個Executor取執行任務。如果給Azkaban調度扽腳本所需要的應用只在某些節點部署了。
方案一:指定特定的Executor取執行任務
- 在MySQL中azkaban數據庫executors表中,查詢應用所在節點上的Executor的id。
mysql> use azkaban;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from executors;
+----+-----------+-------+--------+
| id | host | port | active |
+----+-----------+-------+--------+
| 1 | hadoop103 | 35985 | 1 |
| 2 | hadoop104 | 36363 | 1 |
| 3 | hadoop102 | 12321 | 1 |
+----+-----------+-------+--------+
3 rows in set (0.00 sec)
- 在執行工作流程時加入useExecutor屬性,如下
方案二:在Executor所在所有節點部署任務所需腳本和應用。
2.upload job時,顯示已經上傳,但是看不到任務問題
檢查.flow的文件,文件名的後綴是否正確。Azkaban並不會告訴你文件後綴不正確。。。