高可用Hadoop平台-Oozie工作流之Hadoop调度(3)

<coordinator-app name="cron-coord" frequency="${coord:minutes(10)}" start="${start}" end="${end}" timezone="GMT+0800" xmlns="uri:oozie:coordinator:0.2"> <action> <workflow> <app-path>${workflowAppUri}</app-path> <configuration> <property> <name>jobTracker</name> <value>${jobTracker}</value> </property> <property> <name>nameNode</name> <value>${nameNode}</value> </property> <property> <name>queueName</name> <value>${queueName}</value> </property> </configuration> </workflow> </action> </coordinator-app>

  这里配置的频率为10分钟,该属性可配置其它频率(如:小时,天等)。

job.properties

nameNode=hdfs://cluster1 jobTracker=nna:8132 queueName=default examplesRoot=examples oozie.coord.application.path=${nameNode}/oozie/${examplesRoot}/apps/cron start=2015-08-25T13:00+0800 end=2015-08-26T01:00+0800 workflowAppUri=${nameNode}/oozie/${examplesRoot}/apps/cron

  这里由于使用Hadoop2.x的HA特性,在指定NameNode时,直接使用hdfs://cluster1,在Hadoop2.x后,jobTracker被替换了,这里将其地址指向resourcemanager.address的地址。

workflow.xml

<workflow-app xmlns="uri:oozie:workflow:0.2" name="one-op-wf"> <start to="end"/> <end name="end"/> </workflow-app>

  工作流使用一个空的Job。

  在配置完相关文件后,我们将workflow.xml和coordinator.xml上传到指定的HDFS地址(之前上传examples目录下的corn目录下,上传之前先删除存在的文件),最后,我们启动这样一个工作流,命令如下所示:

$OOZIE_HOME/bin/oozie job -oozie http://nna:11000/oozie -config job.properties -run

  创建成功后,会生成一个JobID,如下图所示:

高可用Hadoop平台-Oozie工作流之Hadoop调度

  注:图中我将命令封装在Shell脚本当中。这里在创建工作流时,同样建议动态开启Oozie的运行日志,便于查看异常信息。

  若是需要Kill任务,可以使用以下命令:

$OOZIE_HOME/bin/oozie job -oozie http://nna:11000/oozie -kill [JOB_ID]

  其Job DAG如下图所示:

高可用Hadoop平台-Oozie工作流之Hadoop调度

4.截图预览

  在提交作业后,我们可以通过浏览Oozie的Web监控界面观察相关信息,如下图所示:

高可用Hadoop平台-Oozie工作流之Hadoop调度

高可用Hadoop平台-Oozie工作流之Hadoop调度

高可用Hadoop平台-Oozie工作流之Hadoop调度

5.总结

  在将Oozie集成到Hadoop平台时,会有点繁琐,出现的异常都会在日志中有详细的记录,我们可以根据这些记录去解决出现的异常。另外,我们在提交任务成功后,在Oozie执行期间若是出现异常,我们也可以通过Oozie的监控界面去非常方便的查看对应的异常信息,并排除。异常信息较多,需要我们耐心的阅读相关记录信息。

6.结束语

  这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉! 

下面关于Oozie的文章您也可能喜欢,不妨看看:

Oozie4.0.1详细安装教程 

指定Oozie Java节点的Hadoop属性

Hadoop平台上Oozie调度系统的安装配置

Oozie中运行mapreduce node-action时的常见异常解决方法

Oozie web-console 时间本地化

Hadoop Oozie学习笔记 使用Oozie,通过命令行运行example

Hadoop Oozie学习笔记 自定义安装和启动

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2ea69aade9e10fb56541ccb65cbd6730.html