搜索
房产
装修
汽车
婚嫁
健康
理财
旅游
美食
跳蚤
二手房
租房
招聘
二手车
教育
茶座
我要买房
买东西
装修家居
交友
职场
生活
网购
亲子
情感
龙城车友
找美食
谈婚论嫁
美女
兴趣
八卦
宠物
手机

Oozie任务调度框架详解及使用简介(一)

[复制链接]
查看: 81|回复: 0

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32661
发表于 2020-1-15 00:46 | 显示全部楼层 |阅读模式
摘要:小我近来一段时候不停在操纵oozie,从刚起头的各类别扭到现在越来越以为故意义的情况下,想整理一下关于oozie的认知,整理出来一个oozie系列,本来市道上关于oozie的材料就比力少,渴望写完后能构成自己对oozie的怪异明白和增强团体性的把握.
一.常见的调节框架

1.1.crontab按时器

linux自带按时器,没有web界面 ,倒霉于监控使命和调节使命,在工作量比力小的情况下,倡议操纵linux的crontab按时命令
  1. ##crongtab 命令 *   *   *   *   *    背面接调节 job 的命令  分  时  日   月  周  ##简单实例(天天0点11分尝试) 11 0 * * * /home/hduser/lubians/intelligentDevice/intelligentDevice.sh
复制代码
1.2.Azkaban调节

开源项目,key/value设备对,操纵简单,带web界面
Azkaban开源网站
1.3.Oozie调节

apache项目,xml设备文件,操纵稍微有难度,带web检察界面,常用于hadoop相关使命的调节
Oozie官网
二.操纵背景

公司下半年技术架构升级,将全部大数据集群治理流程化,范围化,引入了更多的技术组件,这其中就有Oozie.
2.1. 之前操纵的调节技术

在这之前公司操纵的调节工具重如果TaskCtl和Kettle,TaskCtl分为三层,Manage,Server和Agent.
可以明白为将调节分层了.
TASKCTL重要可以完成串行、并行、依靠、互斥、尝试筹划、按时、容错、循环、条件分支、远程、负载平衡、自界说条件等各类差此外焦点调节功用。
按照差此外功用分类,TASKCTL将客户端分为Admin(平台治理)、Designer(流程集成开辟情况)、Monitor(流程监控治理)三套差此外软件。
Admi:平台节点治理、使命典范治理、工程治理、利用设备、全局变量治理以及流程导入导出等功用。
Designer:平台流程代码信息治理、代码筹划编辑、流程图形编辑、法则语法当令检测功用以及编译公布等功用。
Monitor:图形方式监控、多角度统计监控、流程起停重置、使命锁定、使命重做、信息工具查询等。
2.2. 为什么操纵Oozie

TaskCtl最大的题目是作为调节系统必要一台零丁的调节办事器,而且和Hadoop生态圈的产物搭配不是很好,所以考虑另行法子在Hadoop集群上操纵调节工具.
操纵Oozie的原因原由是由于公司操纵的是Ambari集群治理工具,自带Oozie插件安装,同时Oozie支持Java API调节,会在工作中用到Java说话的原因,挑选了Oozie.
三.Oozie先容

3.1. Oozie是什么

oozie是一个workflow(工作流)和谐系统,是由Cloudera公司进献给Apache的,重要用来治理Hadoop作业(job).属于web利用步伐,由oozie client和oozie server两个组件组成.
oozie server运转于java servlet容器(tomcat)中的web步伐.
Oozie任务调度框架详解及使用简介(一)  热点新闻 x6d5GJpeLHPRoul

3.2. 为什么必要Oozie

①对于较为复杂的Hadoop作业系统来说,纯真的依靠shell剧本方式,手工方式调节是的流程加倍难以控制.
②复杂系统的算法必要很多差此外作业(如mr,Java步伐,shell剧本,hivesql,sqoop,spark等)依照特定的次第,串行并行,不同时候,不同条件举行尝试,就必要oozie这样的调节系统做支持,将复杂题目简单化.
3.3. oozie能带来什么

①将hadoop生态系统中常见的mr使命启动,hdfs操纵,shell调节,hive操纵等经过同一的方式举行联贯调节.
②将复杂的依靠关系,时候触发,变乱触发操纵xml说话举行表达,进步开辟服从.
③一组使命操纵一个DAG(有向无环图)来表示,图形化的表达,流程逻辑加倍清楚.
④支持很多种使命调节,能完成大部分的hadoop使命处置惩罚.
⑤步伐界说支持EL常量和函数,写过shell剧本的小同伴操纵底子没难度.
四.Oozie架构图

在网上找了一个oozie架构图,以下:
Oozie任务调度框架详解及使用简介(一)  热点新闻 qXWx4Z8HEjCMfy7

oozie包含四大办事组件:
workflow: 用于支持行动有向无环图(DAG)的筹划和尝试,可以依照特定的次第尝试mr,hive和shell等节点.
coordinator: 用于按时调节特定的 workflow 举行尝试,可以基于变乱,资本存在,传递参数等自动尝试.
bundle: 批量设定一组coordinator尝试.
SLA(Service Level Agreement, oozie办事器品级协议): 用于步伐尝试进程的日志跟踪.
4.1.Oozie简易架构

Oozie任务调度框架详解及使用简介(一)  热点新闻 HmXMYOnDFATRzU1

如上图,oozie调节自己就是一个mr步伐,起头,尝试,竣事大要失利,简单易懂.
所以我们可以思考一下,在oozie调节mr步伐时,实在同一时候是运转了两个mr的,一个是调节自己,一个是使命.
4.2.一个有向无环图

使命自己是一个有向无环图(DAG)
Oozie任务调度框架详解及使用简介(一)  热点新闻 gnIDtCb1M5wWVGi

图中fork标签背面的 MR job 和 Hive job 是并行尝试的,都乐成后经过 join 节点合并.
4.3.coordinator生命周期

Oozie任务调度框架详解及使用简介(一)  热点新闻 7XNjw5vzuaFidWn

coordinator是一个按时办事,经过按时来牢固频次的尝试使命,这里的功用类似crontab.
4.4.bundle Job

Oozie任务调度框架详解及使用简介(一)  热点新闻 Vlx7JqtiEbudGh4

bundle的感化就是设定多个coordinator按时办事按批次尝试,这样使很多个使命也构成一个DAG.
五.Oozie的安装与设备

5.1.Oozie的安装方式

零丁安装: 必要安装server端和client端
组件安装: 操纵Ambari举行oozie组件增加(可以操纵HA)
留意:假如操纵CDH集群治理工具,也是一键设备,由于我是间接组件式安装,这里就不细讲了,有必要的小同伴可以联系我,看情况写一下ambari设备oozie.
5.2.Oozie设备

节点内存设备:
这里的节点内存设备大要会触及到oozie调节阻塞的题目,这个在以后偶然间整理一下全部题目现象以及打点法子,这里就看一下
  1. #(节点并发),决议了你可以同时尝试几个actionoozie.service.callablequeueservice.callable.concurrency #(行列巨细) oozie.service.callablequeueservice.queue.size #(扩大)一些扩大相关 oozie.service.ActionService.executor.ext.classes
复制代码
Oozie任务调度框架详解及使用简介(一)  热点新闻 G8mDKH1OL4IVP2n

5.3.oozie元数据变动

ambari设备oozie元数据
Oozie任务调度框架详解及使用简介(一)  热点新闻 yWdjMbr57aJRAcE

Ambari默许数据库为Derby.
我们设备时,无出格需讨情况下,一样平常默许挑选mysql
挑选数据库典范,库名,用户名,url毗连串,驱动,密码
测试毗连乐成即可.
5.4.ext2.2增加

进入oozie文件夹
将ext-2.2.tar.gz解压放到./libext/ext-2.2目录下
5.5.第三方jar包增加


  • 运转时的同享目录(在HDFS下)
  • libserver目录
  • libtools目录
六.Oozie治理

6.1.Oozie治理Web界面

http://ip:11000/oozie/
这里偶然间会出现oozieUI界面没法访题目目,以后更新一篇文章,简单说明一下.
6.2.oozie操纵


  • 使命列表检察
  • 使命状态检察
  • 流程返答信息
  • 节点信息检察
  • 流程图信息
  • 日志检察
  • 系统信息检察和设备
Oozie任务调度框架详解及使用简介(一)  热点新闻 UZM2XEcCDoFLWqe

6.3.状态识别

状态寄义说明PREP一个工作流Job第一次建立将处于PREP状态,表示工作流Job已经界说,可是没有运转。RUNNING当一个已经被建立的工作流Job起头尝试的时候,就处于RUNNING状态。它不会到达竣事状态,只能由于出错而竣事,大要被挂起。SUSPENDED一个RUNNING状态的工作流Job会酿成SUSPENDED状态,而且它会不停处于该状态,除非这个工作流Job被重新起头尝试大要被杀死。SUCCEEDED当一个RUNNING状态的工作流Job到达了end节点,它就酿成了SUCCEEDED终极完成状态。KILLED当一个工作流Job处于被建立后的状态,大要处于RUNNING、SUSPENDED状态时,被杀死,则工作流Job的状态变成KILLED状态。FAILED当一个工作流Job不成预期的毛病失利而制止,就会酿成FAILED状态。
Oozie任务调度框架详解及使用简介(一)  热点新闻 bQ3efSHzNov2IPk

我是鲁边, 2020 peace and love
别惊奇,今年的主题就是爱与平静,希望我能不停用下去...
按例按例,我的小我公众号:鲁边社,接待关注
Oozie任务调度框架详解及使用简介(一)  热点新闻 qrwfVFtR1SKD2bL


免责声明:假如加害了您的权益,请联系站长,我们会实时删除侵权内容,感谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

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

本版积分规则

Copyright © 2006-2014 全椒百姓网-全椒知名**,发布及时新鲜的全椒新闻资讯 生活信息 版权所有 法律顾问:高律师 客服电话:0791-88289918
技术支持:迪恩网络科技公司  Powered by Discuz! X3.2
快速回复 返回顶部 返回列表