【Oozie】CDH集群的oozie手把手快速入门

背景

在今天中午,本人快乐的干饭的时候,领导打电话过来询问oozie是个什么样的东西,能不能有个用例?在本人的理解里面,oozie主要是个调度工具。所以本篇为CDH集群的oozie的快速入门教程

环境准备

  • CDH集群一套
  • CDH集群中集成了ooziehue
    oozie和hue的组件
    因为oozie整合进hue中界面化了,不像那种命令行提交的方式,要写很多繁杂的xml文件,所以本文就开始揭露,如何快速入门oozie

新建一个调度任务

本文使用一个pyspark作为调度用例:
pyspark的代码如下,文件名为:pyspark_test.py,已经上传至hdfs/oozie/路径下了。

from pyspark.sql import SparkSession
spark = SparkSession.Builder().getOrCreate()
spark.sql("select 1 as temp").show()
spark.stop()

打开hue的界面:
在这里插入图片描述
在这里插入图片描述
出现下图所示的界面:
在这里插入图片描述
红框选中的地方是oozie支持的任务类型,然后我们选择一个sparkaction就是从左往右数第四个五角星的那个。用鼠标安按住拖入那个标记了Drop your action here的区域。
在这里插入图片描述
出现下图,这里面第一个Files是提供运行时所需要的文件,Jar/py name表示指定spark的任务jar包或者pyspark所需要的python脚本:
在这里插入图片描述
在上面我提到了,有一个pyspark_test.py文件存放在hdfs/oozie/路径下了,所以在Files这一栏中,路径名称是/oozie/pyspark_test.py Jar/py name里面填的是这个python脚本的名字pyspark_test.py
在这里插入图片描述
接着会出现如下界面,相关的注释也都在这里了,看不清的小伙伴可以右键点击图片,然后选择在新的标签页打开
在这里插入图片描述
填写完毕之后点击保存按钮,如下所示:
在这里插入图片描述
保存完毕之后,在保存的按钮的左侧会出现一个三角符号,代表可以启动任务了。
在这里插入图片描述
启动的时候会出现下图所示的样子,这句话代表,在提交作业前是否需要试运行一下,至于这个试运行会有什么效果我不知道。所以这边忽略了这个选项,直接点击Submit
在这里插入图片描述
任务如下,运行成功:
在这里插入图片描述
在这里插入图片描述
因为我这个集群是spark on yarn,所以我们可以进入到spark的管理界面上看到这个任务:
在这里插入图片描述
可以看到我们的任务MySpark确实已经提交成功了。同时出现了一个oozie的一个任务。据观察:当这个任务在oozie上启动的时候:
yarn上会出现一个oozie的调度任务,然后这个任务启动的过程中会将启动spark的任务。
至此,一个简单的oozie的调度任务就做完了。下面我会聊聊一些功能的入口在哪里:

Oozie的一些入口位置

设置周期调度

在这里插入图片描述
调度编辑器:
在这里插入图片描述
在这里插入图片描述
保存完毕之后,右上角有一个三角图标,记得点击一下,将任务流进入调度队列里面
在这里插入图片描述
这里我设置了任务每一分钟运行一次,但是这个选项的最小粒度是天,通过点击Options通过cron语法将将调度时间设置为每分钟执行一次,调度队列如下所示,出现以下 的图片才能算是真正的调度成功:
在这里插入图片描述

进入oozie的控制台

在这里插入图片描述
在这里插入图片描述

删除任务

在这里插入图片描述
左侧方框里面的东西,直接用鼠标右键点击,选择删除就好了。

查看任务的日志

在控制台的jobs当中选择一个任务,如下所示:
在这里插入图片描述
在这里插入图片描述
或者从workflow进去
在这里插入图片描述
在这里插入图片描述
也能查看到日志:
在这里插入图片描述

查看oozie的Xml配置文件

在这里插入图片描述
如下图所示:
在这里插入图片描述
这样就可以查看任务的底层配置的写法,更加清楚的了解任务的详细配置信息了。

关闭已经执行了的调度

如果有正在执行的调度的话,就会在这个Running下面,就会有一个栏目,我现在已经将这个任务取消掉了取消的方法就是先选中这个任务,然后再点击界面的右上角有一个kill的选项,点击一下就好了
下图是我取消了调度任务样子:
在这里插入图片描述

总结:

这里主要是记录了一下Oozie的快速入门,比较基础比较简单,各位大佬有什么更好的经验的话,请在评论区内分享一下,谢谢各位大佬了。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: CDH5 Oozie是一个用于工作流调度和协调的开源工具。ExtJS是一个流行的JavaScript应用程序框架,对于Oozie来说并不是必需的,所以CDH5 Oozie并不包含ExtJS 2.2。 CDH5 Oozie使用的是基于Java的Web用户界面(UI),其中包含了必要的前端框架和库。这个UI可以用于创建、编程和监控工作流。虽然没有ExtJS 2.2,但是CDH5 Oozie仍然可以提供强大的功能和灵活性。 如果您需要使用ExtJS 2.2,可以单独下载并集成到CDH5 Oozie中。为了实现这一点,您可能需要对CDH5 Oozie的UI进行自定义和修改,以便与ExtJS 2.2进行集成。您可以将ExtJS 2.2的相关脚本和样式表导入CDH5 Oozie的UI中,然后相应地修改和调整CDH5 Oozie的代码。 要将ExtJS 2.2与CDH5 Oozie集成,您可能需要具备一定的Java和前端开发知识。您还需要了解CDH5 Oozie的UI结构和工作方式,以便在集成过程中进行正确的修改。 总而言之,CDH5 Oozie并不包含ExtJS 2.2,但这并不意味着它缺少功能。如果您需要使用ExtJS 2.2,您可以将其与CDH5 Oozie进行集成,以获得自定义和改进的用户界面体验。 ### 回答2: CDH5是Cloudera提供的一种集成了Hadoop生态系统的发行版,而Oozie是Hadoop生态系统中的一种工作流管理工具。在CDH5中进行Oozie的安装和配置时,可能会遇到缺少ExtJS2.2的问题。 ExtJS是一种用于构建富客户端Web应用程序的JavaScript框架。在CDH5中使用的Oozie版本可能依赖于ExtJS2.2库来实现一些用户界面的功能。如果缺少这个库,可能会导致某些功能无法正常使用或显示错误。 解决这个问题的方法是在CDH5中安装ExtJS2.2库。可以从官方网站或其他合法渠道下载ExtJS2.2的压缩包,并将其解压到CDH5所在的服务器上。然后,根据Oozie的配置文件或相关文档,将解压后的ExtJS2.2库路径配置到对应的位置。 配置完毕后,重新启动Oozie服务,使其加载并使用新安装的ExtJS2.2库。这样,Oozie的用户界面应该能够正常显示,并且可以使用ExtJS2.2库提供的功能。 需要注意的是,如果CDH5的版本较旧或Oozie版本较新,可能会依赖其他版本的ExtJS库,而不是2.2。在解决问题之前,最好对CDH5和Oozie的版本进行了解,并查找相关文档以确认所需的ExtJS库的版本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值