Apache Oozie- 实战操作一集成 hue& 调度 Sshel 程序|学习笔记

简介: 快速学习 Apache Oozie- 实战操作一集成 hue& 调度 Sshel 程序

开发者学堂课程【Oozie 知识精讲与实战演练Apache Oozie- 实战操作一集成hue& 调度 Sshel 程序】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/716/detail/12792


Apache Oozie-- 实战操作--集成 hue& 调度 shell 程序


内容介绍

一、Hue 和 Oozie 的整合


一、Hue 和 Oozie 的整合

Oozie 作为一款调度软件,它本身的开发并不友好,不管是调度 Hive 程序还是 amp 程序都要编写大量的配置文件,再进行上传提交才能完成定时调度执行,非常麻烦。但是当 Oozie 配置上 hue 后,在 hue 上用鼠标拖拽各种图标,就可以完成定时调度。

1.修改 hue 配置文件 hue.ini

打开 hue 文件,修改 liboozie。复制 liboozie,打开 Notepad + +,打开 hue 的编辑文件,Ctrl+F 进行搜索,点击查找下一个,此时便定位到了选项配置的地方。这里需要修改以下几个参数。第一个是 oozie_url,把注释打开,修改端口为 note-1 第二个是 Remote_deployement_dir 即文件路径,上传定时任务时,路经位于 HDFS 上,复制粘贴做指定并把前面注释打开。

2.修改 oozie 配置文件

搜索 oozieCtrl+F 进行搜索,这里关于 oozie 的单支有很多,必须找到 oozie 旁边有中括号的。查找完毕后,把 oozie_jobs_count=100enable_cron_scheduling=trueenable_document_action=trueenable_impala_action=false打开,然后 Ctrl+S 进行保存。修改 filebrowser。filebrowser 被称为文件浏览,这里的配置跟 oozie 没有太大的关系,这里主要开启 HDFS 视区,浏览的时候有没有上传和下载的按钮。hue 去访问 HDFS 原先没有按钮,但是配置后,便会显示按钮。之后进行相关配置,比如本地开发出一个 hive 脚本,需要用 hue 来调度,直接点击按钮上传便可以选择它,非常方便。搜索 filebrowser,打开 archive_upload_tempdir=/tmpshow_download_button=trueenable_extract_uploaded_archive=trueCtrl+S 进行保存。

启动 hue 进程

image.png

启动后,把 hue 服务进行重启,因为我们修改了配置文件。

3.使用 hue 配置 oozie 调度

打开浏览器,进行刷新加载,加载完后,点击 Query 下的Scheduler 发现这里有三个选项,Workflowoozie 当中的普通的工作流程,Schedule 是定时调度,Bundle 是批处理,可以批次绑定 Schedule。以 Workflow 为例,点开后发现它的界面非常友好,因为各种 actions 的节点都帮我们配置成了鼠标。只需要选择所需执行的按钮,把他拖拽到下面就可以。

4.利用 hue 调度 shell 脚本

HDFS 上创建一个 shell 脚本程序文件,

图片2.png

user rootoozie works 里创建一个新的文件夹叫 oozie _hue 并打开它。

图片3.png

然后在这里面创建一个新的文件叫 hello_hue.sh。这个文件现在是一个空文件,打开并对其进行编辑。

图片4.png

5.准备好后创建工作流程。

点击 Query 下的 schedule,创建一个 workflow。创建好后给工作流程取一个名字。然后执行 shell 脚本,把图标拖拽,添加 shell 脚本的路径。

图片5.png

点击 Files,选择文件的地方。点击保存。保存后发现立即出现了一个叫 submit 的按钮,

图片6.png

说明工作流程已经编辑好了。点击 submit 按钮进行提交。

6.修改工作流程

提交后刷新一下界面。发现现在正在运行一个程序

这里显示它已经结束了,但是点击 Workflows 后发现这个 shell killed 了,说明它失败了。查看失败的原因,点击 Tasks,错误信息显示文件不存在。但是刚才指定了 shell 脚本的路径,提示找不到路径,是因为工作路径指定时多指定了一次。因此需要修改。点击 Query 下的 Schedule Workflow,再点击右上角三个点的按钮下的 Workflows

图片7.png

找到之前编辑的工作流程,双击打开它,点击右上角的 Edit 按钮,点击右上角三个点的按钮里的 Settings

图片8.png

修改 Workspace,把路径返回到根目录,选择 Select this folder。最后进行保存提交。执行完后发现运行成功。

图片9.png

具体 oozie xml 文件是谁编写的,可以打开 properties,和 xml 文件,里面有开始节点,执行的文件叫 hello_hue.sh

相关文章
|
1月前
|
消息中间件 数据挖掘 Kafka
Apache Kafka流处理实战:构建实时数据分析应用
【10月更文挑战第24天】在当今这个数据爆炸的时代,能够快速准确地处理实时数据变得尤为重要。无论是金融交易监控、网络行为分析还是物联网设备的数据收集,实时数据处理技术都是不可或缺的一部分。Apache Kafka作为一款高性能的消息队列系统,不仅支持传统的消息传递模式,还提供了强大的流处理能力,能够帮助开发者构建高效、可扩展的实时数据分析应用。
79 5
|
4月前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
134 1
|
2月前
|
消息中间件 存储 druid
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
44 3
|
2月前
|
Java 测试技术 API
如何在 Apache JMeter 中集成 Elastic APM
如何在 Apache JMeter 中集成 Elastic APM
40 1
|
5月前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
Spring Cloud Alibaba 发布了 Scheduling 任务调度模块 [#3732]提供了一套开源、轻量级、高可用的定时任务解决方案,帮助您快速开发微服务体系下的分布式定时任务。
15021 36
|
4月前
|
SQL DataWorks 安全
DataWorks产品使用合集之调度资源组与集成资源内部的实例如何进行共用
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
分布式计算 监控 Hadoop
详解 Apache ZooKeeper 和 Apache Oozie
【8月更文挑战第31天】
127 0
|
4月前
|
消息中间件 Kafka 数据处理
实时数据流处理:Dask Streams 与 Apache Kafka 集成
【8月更文第29天】在现代数据处理领域,实时数据流处理已经成为不可或缺的一部分。随着物联网设备、社交媒体和其他实时数据源的普及,处理这些高吞吐量的数据流成为了一项挑战。Apache Kafka 作为一种高吞吐量的消息队列服务,被广泛应用于实时数据流处理场景中。Dask Streams 是 Dask 库的一个子模块,它为 Python 开发者提供了一个易于使用的实时数据流处理框架。本文将介绍如何将 Dask Streams 与 Apache Kafka 结合使用,以实现高效的数据流处理。
86 0
|
4月前
|
关系型数据库 Linux 网络安全
"Linux系统实战:从零开始部署Apache+PHP Web项目,轻松搭建您的在线应用"
【8月更文挑战第9天】Linux作为服务器操作系统,凭借其稳定性和安全性成为部署Web项目的优选平台。本文以Apache Web服务器和PHP项目为例,介绍部署流程。首先,通过包管理器安装Apache与PHP;接着创建项目目录,并上传项目文件至该目录;根据需要配置Apache虚拟主机;最后重启Apache服务并测试项目。确保防火墙允许HTTP流量,正确配置数据库连接,并定期更新系统以维持安全。随着项目复杂度提升,进一步学习高级配置将变得必要。
370 0
|
5月前
|
分布式计算 Apache Spark

推荐镜像

更多