您的位置:首页 > 其它

azkaban使用篇

2018-03-15 14:30 183 查看

使用篇

1.创建项目

点击Create Project,由于azkaban是国外Linkedin发布实现的开源调度平台,所以暂时不支持中文,创建项目的时候不能包含中文。

 

2.编写并打包job

Job的编写很简单,只要在.job文件内标注脚本类型,脚本运行语句以及依赖的job名,如下:
type=command
#脚本存储路径
command=sh /root/dim/helloworld.sh
#依赖属性=依赖任务的job名称
dependencies=D_DWD_BRD_AUTH_LOG
由于linux系统编码原因,如果job文件里面含有中文需要用ue更改字符编码为UTF-8 – 无BOM。
这里列举的例子是command类型的脚本,即shell命令,其中${pdate}是运行是传入的参数,如没有可去掉,也可以有多个参数,参数命名和调用时相同即刻生效。
编写完流程所有job后,要打包成一个zip文件,上传到azkaban。

3.运行工作流

点击project,可以看到若干条工作流。

 
上面三个菜单依次是任务流列表,权限设置,项目变更日志。
每个任务流右边的三个按钮的功能依次是执行任务流,执行记录和和执行概览。
执行任务流时,如果job内设置了参数,则需要设置同样的参数名。 

 
Schedule为定时执行,Execute为立即执行。
对于定时任务,设置如下

 图为3.0版本之前的定时设定方式

 图为3.0之后定时执行的方式
Time和date为第一次运行的时间(该事件可以在当前时间之前,则第一次运行的时间是在当前开始的第一次运行时间),Recurrence则是运行周期(偏移量)。
执行记录:记录了任务流的运行状况(时间、运行结果等)。

4.运行工作流中指定任务

当任务流某个或者某几个任务运行失败的时候,整个任务流将停止。恢复流程时,依次点击history、点击相应的任务流、Prepare Execution,然后重新运行。
在运行准备页面,右键某个任务,可以设置开启或关闭该任务的相关任务
 


从上往下依次是:父节点,祖节点(该节点之上的所有节点),子节点,孙节点(该节点之后的所有节点),所有节点。利用该功能可以设置指定任务运行。
 


5.邮件功能

邮件功能有三种设置方式:
(1) 在web配置文件中设置,只能用于全局,一般不常用
(2) 在job的zip包里加入.properties文件,则会自动读取器内容,文件内容形式如下,邮箱之间用逗号分隔,该方式一般用于定时任务调度
# system.properties
success.emails=xxx@xxx.com, xxx@xxx.com,xxx@xxx.com, xxx@xxx.com
failure.emails= xxx@xxx.com, xxx@xxx.com,xxx@xxx.com, xxx@xxx.com
(3) 在运行设置页面Notification设置,如果使用了方式二,则这里会默认有相关的邮箱地址,可以手动修改,方式三可覆盖方式二。
 
 


6.其他功能

1)Failure Options(失败选择)
当某个任务运行失败的时候,可以对整个流程的运行进行设置,有以下三种运行设置。
 


从上往下依次是 将正在运行的任务运行完,杀死正在运行的任务,除失败任务以及其后续的依赖任务以外全部运行。
 
2)Concurrent(并发执行选项)
当某个流程同一时间内多次执行,可以用该选项设置并发,即当该流程正在运行的时候,下一次运行该流程时的操作
 


从上往下依次是 取消运行,正常运行,level1接到同一个任务之后运行,level2接到同一个任务的子任务之后运行
 
3)SLA
定时任务可设置SLA选项(类似于售后服务)
如果某个流程(或者流程中某个关键任务)运行时间过长或运行失败,则可发送邮件给相关人员,同时可设置是否杀死该任务。
 


Duration表示该任务在某个时间之前还未运行成功或者运行完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  azkaban