云小课|MRS基础原理之Oozie任务调度

打印 上一主题 下一主题

主题 609|帖子 609|积分 1827

阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击此处。
摘要:Oozie是一个基于工作流引擎的开源框架,它能够提供对Hadoop作业的任务调度与协调。Oozie是一个工作流引擎服务器,用于运行MapReduce任务工作流。同时Oozie还是一个Java Web程序,运行在Tomcat容器中。
本文分享自华为云社区《【云小课】EI第41课 MRS基础原理之Oozie任务调度》,作者: Hello EI。
Oozie是一个基于工作流引擎的开源框架,它能够提供对Hadoop作业的任务调度与协调。
Oozie是一个工作流引擎服务器,用于运行MapReduce任务工作流。同时Oozie还是一个Java Web程序,运行在Tomcat容器中。
Oozie工作流通过HPDL(一种通过XML自定义处理的语言,类似JBOSS JBPM的JPDL)来构造。包含“Control Node”(可控制的工作流节点)、“Action Node”。
“Control Node”用于控制工作流的编排,如“start”(开始)、“end”(关闭)、“error”(异常场景)、“decision”(选择)、“fork”(并行)、“join”(合并)等。
Oozie工作流中拥有多个“Action Node”,如MapReuce、Java等。
所有的“Action Node”以有向无环图DAG(Direct Acyclic Graph)的模式部署运行。所以在“Action Node”的运行步骤上是有方向的,当上一个“Action Node”运行完成后才能运行下一个“Action Node”。一旦当前“Action Node”完成,远程服务器将回调Oozie的接口,这时Oozie又会以同样的方式执行工作流中的下一个“Action Node”,直到工作流中所有“Action Node”都完成(完成包括失败)。
Oozie工作流提供各种类型的“Action Node”用于支持不同的业务需要,如MapReduce,HDFS,SSH,Java以及Oozie子流程。
如何使用Oozie

购买包含有Oozie组件的MRS集群后,用户即可使用Oozie进行作业提交及调度。
MRS集群的创建可参考MRS快速入门中的“创建集群”章节,例如购买MRS 3.1.0普通模式(关闭Kerberos认证)集群。
Oozie客户端的安装可以参考MRS用户指南的“安装客户端”章节,例如客户端安装目录为:“/opt/client”。
1.以客户端安装用户,登录安装客户端的节点。
2.执行以下命令,切换到客户端安装目录。
  1. cd /opt/client
  2. source bigdata_env
复制代码
3.上传Oozie配置文件以及Jar包至HDFS(UserOozie为提交任务的用户名)。
  1. hdfs dfs -mkdir /user/UserOozie
  2. hdfs dfs -put -f /opt/client/Oozie/oozie-client-*/examples /user/UserOozie/
复制代码
4.修改任务执行配置文件:
  1. cd /opt/client/Oozie/oozie-client-*/examples/apps/map-reduce/
  2. vi job.properties
  3. nameNode=hdfs://hacluster
  4. resourceManager=Yarn ResourceManager主节点IP地址:端口   ##端口可通过“yarn.resourcemanager.port”参数查询,例如8032。
  5. queueName=default
  6. examplesRoot=examples
  7. user.name=admin
  8. oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/map-reduce #hdfs上传路径
  9. outputDir=map-reduce
  10. oozie.wf.rerun.failnodes=true
复制代码
5.运行oozie任务:
  1. oozie job -oozie https://oozie角色的主机名:21003/oozie/ -config job.properties -run
  2. [root@kwephispra44947 map-reduce]# oozie job -oozie https://kwephispra44948:21003/oozie/ -config job.properties -run
  3. ......
  4. job: 0000000-200730163829770-oozie-omm-W
复制代码
6.登录FusionInsight Manager,选择“集群 > 服务 > Oozie ”。
7.单击“oozie WebUI”后的超链接进入Oozie页面,在Oozie的WebUI上查看任务运行结果。
关于Ooize应用开发及相关样例代码介绍,请参考《Oozie开发指南》。
好了,本期云小课就介绍到这里,快去体验MapReduce(MRS)更多功能吧!猛戳这里
 
点击关注,第一时间了解华为云新鲜技术~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

写过一篇

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表