Oozie 安装及 examples app 的使用

参考文档

一、Building OOzie

特别注意的是修改Pom.xml文件中的版本与本机中安装的版本相同

二、 install Oozie

1.为 hadoop 添加 Oozie 的代理用户,添加如下配置到 hadoop 的 core-site.xml 中(需Hadoop读取之后才会生效)
<!-- OOZIE 添加代理用户 -->
<property>
    <name>hadoop.proxyuser.cen.hosts</name>
    <value>cen-ubuntu</value>
</property>

<!-- *表示所有用户组 -->
<property>
    <name>hadoop.proxyuser.cen.groups</name>
    <value>*</value>
</property>
2.解压hadooplibs(包含支持 Oozie 版本的 Hadoop 分布式支持--也就是支持 MapReduce job 的依赖包)
$ tar -xzvf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz 
3.创建文件夹 libext
$ mkdir libext
4.拷贝运行使用的 Hadoop jars 包(不带mr1的那一个,yarn 版本的)到 libext 目录下
$ cp oozie-4.0.0-cdh5.3.6/hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/
5.拷贝 ExtJs2.2.zip 文件到 libext 目录
$ cp ~/package/ExtJs2.2.SDK.zip libext/
6.创建 war 包包含的 jars (在解压目录的oozie-server下)
$ bin/oozie-setup.sh prepare-war [-d directory] [-secure]
                     sharelib create -fs <FS_URI> [-locallib <PATH>]
                     sharelib upgrade -fs <FS_URI> [-locallib <PATH>]
                     db create|upgrade|postupgrade -run [-sqlfile <FILE>]

# 创建 war 包指定包含的 jars 
$ bin/oozie-setup.sh prepare-war

# 上传 jar 包到 HDFS 文件系统(HDFS 要在运行)、指定本地要上传的支持包(选择YARN版本的),创建数据库

$ bin/oozie-setup.sh sharelib create -fs hdfs://cen-ubuntu:8020 -locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz

# 创建数据库
$ bin/ooziedb.sh create -sqlfile oozie.sql -run DB Connection.
7.配置Oozie-site.xml文件中的HDFS信息
<property>
    <name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
    <value>*=/opt/cdh5.3.6/hadoop-2.5.0-cdh5.3.6/etc/hadoop</value>
</property>
8.启动 Oozie
# 守护进程
$ bin/oozied.sh start
# 前台
$ bin/oozied.sh run
# 停止
$ bin/oozied.sh stop

注1:使用 MySQL 数据库步骤

1.拷贝依赖包到 libext 目录
2.编辑 Oozie-site.xml 文件(注意数据库名)

三、运行 example 程序

1.解压oozie-examples.tar.gz
2.复制 example 到 HDFS 问价主目录下
3.修改 URL 地址 apps/job.properties(入口配置文件:指向workflow.xml文件和输出目录)

注意:( job.properties 必须在本地,workflow.xml 必须在 HDFS 上)

nameNode=hdfs://cen-ubuntu:8020
# 端口根据ResourceManage配置文件可知(默认8032)
jobTracker=cen-ubuntu:8032
examplesRoot=examples

oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/map-reduce/workflow.xml
outputDir=map-reduce
4.运行 example 的 map-reduce APP(其他使用请参考oozie help)
$ bin/oozie job -oozie http://cen-ubuntu.cenzhongman.com:11000/oozie -config examples/apps/map-reduce/job.properties -run
5.查看状态信息
# 命令行
$ oozie job -oozie  http://cen-ubuntu.cenzhongman.com:11000/oozie -info 14-20090525161321-oozie-tucu

# Web 界面
http://cen-ubuntu:11000/oozie/

1047249-20170724225022840-448771764.png

注:编辑Oozie 配置文件后重启 Tomcat 服务需要清除相关的编译文件

    $ rm -r $OOZIE_HOME/oozie-server/work/Catalina
    $ rm -r $OOZIE_HOME/oozie-server/conf/Catalina

转载于:https://www.cnblogs.com/cenzhongman/p/7231663.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果不使用HDFS,可以考虑使用Dask的分布式文件系统(Dask Distributed)来存储数据和结果。Dask Distributed是一个轻量级的分布式文件系统,可以在集群中快速地存储和检索数据。 以下是使用Oozie协调Dask任务,不使用HDFS的步骤: 1. 安装Dask:首先需要在所有计算节点上安装Dask和Dask Distributed,以便能够运行Dask任务和存储数据和结果。可以使用pip或conda等工具来安装Dask和Dask Distributed。 2. 编写Dask任务:使用Python编写Dask任务的代码。在Dask任务中,需要将数据和结果存储到Dask Distributed中。 3. 配置Dask集群:在Dask任务中,需要配置Dask集群的地址和端口等信息,以便任务能够在集群中运行。可以使用Dask的命令行工具或API来配置集群。 4. 编写Oozie工作流:使用Oozie的工作流定义语言(WDL)编写一个XML文件来定义工作流。在XML文件中,需要定义一个Shell action来运行Dask任务。Shell action中的命令行需要包含启动Dask集群和运行Dask任务的命令。 5. 提交工作流:将工作流XML文件上传到HDFS,并使用Oozie的命令行工具提交工作流。 6. 监控工作流运行:可以使用Oozie的Web控制台或命令行工具来监控工作流的运行状态和日志信息。 需要注意的是,在Dask任务中需要将数据和结果存储到Dask Distributed中,可以使用Dask Distributed的API来实现。同时,还需要在Oozie工作流中配置相应的输入输出路径,以便能够读取和写入数据和结果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值