写在前面的话: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并不会告诉你文件后缀不正确。。。