使用hue+oozi构建任务调度系统

oozie调度系统调研

1. 关于oozie的简单说明

  1. oozie应用程序目录结构说明:

    一个完整的oozie应用程序一般情况下至少包含三个文件及目录:job.properties、workflow.xml、lib(lib表示为用来存放程序运行需要的jar包,非必需)

  2. flow nodes的六种类型:

    start, end, decision, fork, join, kill

  3. action-node的部分类型:

    Hadoop map-reduce, Hadoop file system, Pig, SSH, HTTP, eMail and Oozie sub-workflow,
    Oozie可以自定义扩展任务类型。

2. Oozie简介

  • WorkFlow:工作流,控制工作流的开始和结束过程,以及工作流Job的执行路径,并提供一种机制来控制工作流执行路径(比如:Decision、Fork以及Join节点等)

  • Coordinator:调度器,多个WorkFlow可以组成一个Coordinator,可以把前几个WorkFlow的输出作为后一个WorkFlow的输入,当然也可以定义WorkFlow的触发条件,来做定时触发.

  • Bundle:控制一个或多个Coordinator应用

3. 一个标准的工作流的示例

工作流实例图

hPDL流程的定义:





${jobTracker}
${nameNode}


mapred.mapper.class
org.myorg.WordCount.Map


mapred.reducer.class
org.myorg.WordCount.Reduce


mapred.input.dir
${inputDir}


mapred.output.dir
${outputDir}







Something went wrong: ${wf:errorCode('wordcount')}
</kill/>

4.在hue中创建一个workflow。

在hue中可以通过拖拽的方式进行workflow.xml的编辑:

ozzie任务的编辑方式

hue的任务管理页面:
ozzie的任务管理页面

hue编辑的workflow.xml保存在hdf上的/user/oozie/workspaces/目录下:
/user/oozie/workspaces/hue-oozie-1476263861.83

[fuxin.zhao@db-hadoop-client02 ~]$ hadoop fs -ls /user/oozie/workspaces/hue-oozie-1476263861.83
Found 3 items
-rw-r--r-- 3 hue hadoop 114 2016-10-12 17:33 /user/oozie/workspaces/hue-oozie-1476263861.83/job.properties
drwxr-xr-x - hue hadoop 0 2016-10-12 17:17 /user/oozie/workspaces/hue-oozie-1476263861.83/lib
-rw-r--r-- 3 hue hadoop 1277 2016-10-12 17:33 /user/oozie/workspaces/hue-oozie-1476263861.83/workflow.xml

自动生成的workflow文件内容如下:workflow的大体流程已经自动生成了,自己可以根据需要进行修改。




Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]



${jobTracker}
${nameNode}
/user/hue/aa.sh
args1
args2
args2
/user/hue/avro-1.7.4.jar#avro-1.7.4.jar







${jobTracker}
${nameNode}
/user/hue/aa.sh






Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]


5.提交oozie命令

1 .提交oozie任务
oozie job -oozie http://localhost:11000/oozie/ -config /root/tvreport-workflow/tvreport-daily-wf/job.properties -run
2 .提交kill 任务
oozie job -oozie http://localhost:11000/oozie -kill 0031861-140812111151262-oozie-root-W

3.查看job的日志信息
bin/oozie job -oozie http://hadoop-1:11000/oozie -log 0000001-160702224410648-oozie-beif-W

》》》未完待续。

posted @ 2016-10-12 18:53  丹江湖畔养蜂子赵大爹  阅读(8432)  评论(0)    收藏  举报