Oozie的安装和使用

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Oozie的安装和使用

一、 任务描述

本实验练习Oozie的安装和配置,然后运行例子进行oozie的功能测试。

二、 任务目标

学会Oozie的安装和使用

三、 任务环境

Ubuntu16.04、mysql-5.7.22、oozie-4.3.0、hadoop-2.7.3、jdk1.8.0_73

四、 任务分析

解压编译好的oozie安装包,然后进行配置,配置主要有hadoop文件的配置和oozie文件的配置。

♥ 知识链接

oozie简介

  Oozie是一种Java Web应用程序,它运行在Java servlet容器——即Tomcat——中,并使用数据库来存储以下内容:1.工作流定义,2.当前运行的工作流实例,包括实例的状态和变量

五、 任务实施

步骤1、maven安装

说明:由于编译ooize需要耗费大量的网络资源和时间,因此在实际操作时,图一到图八的操作只做参考,直接从图九开始实验。

 进入cd /simple/soft目录下,解压maven的tar包到simple目录下,如图1所示

d8ddcfad962a4169b33da4ff41bb7eef.png

图1 maven安装

然后在当前目录下执行命令【vim ~/.bashrc】,进入文件,配置maven的环境变量。如图2所示

d054f7bdfa1a4d29883b33c4583b8f2f.png

图2 配置环境变量


在soft目录下解压oozie的压缩包到simple目录下,如图3所示

829e8afc748f4b2e9b62a703896814ea.png

图3 解压oozie安装包


编辑pom.xml文件,如图4所示

eaf6d79effcc4fda940b1b8ca4e600c7.png


图4 进入pom.xml文件


修改配置如图5和6

25d6b0aca5a348b58322c3cbf10676ed.png


图5 配置pom.xml

49b18921f4a7426d98ab8b2fc87d9743.png


图6 配置pom.xml


修改完后开始编译,如图7

9519a210937f4049a0eb9189487eea10.png

图7 编译oozie


编译成功后的界面如8所示


738e573f0bf447d89bfefc79118ab2a5.png


图8 编译成功界面


在simple目录下创建data目录,用于存放解压好的oozie,如图9所示

334de662805d401b889475ef70f57856.png

图9 创建data目录


本实验环境将编译好的压缩包放在了/simple/soft/oozie-complie目录下。在该目录下将编译好的压缩包解压到simple/data目录下。如图10


3c47d2c43cfe477ab5b66348276788fa.png


图10 解压编译好的tar包


进入/simple/data目录下查看解压好的文件并将文件名修改。如图11

e462a523208242569bb56c8de8535f9b.png



图11 查看已解压的文件并修改命名


配置oozie的环境变量,如图12所示


96bf88ef1ab247c89e2f489a463dd449.png


图12 配置oozie的环境变量


使环境变量生效,如图13

6ffca2ba933b4a7cb99244a3ea4def3b.png

图13 使环境变量生效


oozie server需要用到一个js库,需要下载ext-2.2.zip这个文件放的libext文件夹里。否则就看不了oozie的web控制台。(打war包的时候会报:INFO: Oozie webconsole disabled, ExtJS library not specified)

 执行如下命令【cd oozie】进入oozie目录,然后执行命令【mkdir libext】创建libext目录,然后将下载好的ext-2.2.zip放到libext目录下面:【cp /simple/soft/ext-2.2.zip ./libext】。如图14所示


0af9787f74f14042945fd97b5277cd02.png


图14 将ext-2.2.zip放到指定目录

 然后,执行命令:

 【cp /simple/hadoop/share/hadoop/*/*.jar libext/】,

 【cp /simple/hadoop/share/hadoop/*/lib/*.jar libext/】

 将hadoop的相关jar包拷贝到libext目录下,第二条命令复制时会提示一些信息属于正常现象。如图15所示

26b14648596749a2b47fd02bd5794491.png


图15 拷贝hadoop相关jar包到libext


注意:这里有个大坑,oozie server默认使用tomcat 6.0.41,而hadoop也有内置的server,如果按照上面两个命令把hadoop依赖的jar包都拷贝过去,有可能出现冲突,这两个server使用的servlet、jsp版本很可能不一样。所以需要删除两个jar包。

 oozie server还需要依赖个数据库,常用的是mysql,所以需要把mysql的驱动jar包“mysql-connector-java-5.1.45.jar“也放在libext中。如图16


ede99a1896e9461ebb60b4b5decd09ca.png


图16 删除冲突jar包


配置数据库连接,文件是conf/oozie-site.xml。如图17所示,代码如下


08ca2e4c146f409eb2e034f77ac404cd.png


图17 配置数据库连接

1.      <property>
2.      <name>oozie.service.JPAService.create.db.schema</name>
3.      <value>false</value>
4.      </property>
5.      <property>
6.      <name>oozie.service.JPAService.jdbc.driver</name>
7.      <value>com.mysql.jdbc.Driver</value>
8.      </property>
9.      <property>
10.     <name>oozie.service.JPAService.jdbc.url</name>
11.     <value>jdbc:mysql://localhost:3306/oozie?createDatabaseIfNotExist=true</value>
12.     </property>
13.     <property>
14.     <name>oozie.service.JPAService.jdbc.username</name>
15.     <value>root</value>
16.     </property>
17.     <property>
18.     <name>oozie.service.JPAService.jdbc.password</name>
19.     <value>root</value>
20.     </property>
21.     <property>
22.     <name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
23.     <value>*=/simple/hadoop/etc/hadoop</value>
24.     </property>

08ca2e4c146f409eb2e034f77ac404cd.png进入/simple/hadoop/etc/hadoop目录下,修改“core-site.xml“,配置代理。

 注意:因为要访问8020端口,所以修改配置“fs.default.name“如图18



图18 进入core-site.xml文件

99d047410bea4160a2b543edbbbc92f7.png

配置过程如图19,修改该配置是为oozie添加伪装功能(impersonation),关于伪装功能,这里不在细说。

5613148399514d1ab2895ce432e8329a.png



图19 配置core-site.xml


上面的步骤完成后,就可以生产server的war包了,供tomcat访问。执行命令【cd /simple/data/oozie】进入该目录下, 执行命令【bin/oozie-setup.sh prepare-war】。如图20所示,最终结果为图21


599beef93a4642a1bea5f113fea09880.png


图20 生成oozie的war包


c3f9116004e849b3860cf4a9e0083dc9.png


图21 结果图


输入命令【service mysql start】启动mysql,然后执行以下命令来初始化数据库【bin/ooziedb.sh create -sqlfile oozie.sql】,如图22



84578534aa004c1ca05f72e7e729a8f3.png

图22 初始化数据库


接着执行如下命令,执行oozie数据库脚本文件,这将在oozie数据库中生成与oozie相关的数据表,如图23


b4140ef2ddb54e9682c1c540e21c7681.png


图23 生成数据表


成功后界面如下图24



1cdc65f34c4b45ee89abb90db37f036e.png

图24 成功界面


在当前目录虾执行命令【mysql -uroot -proot】登陆mysql,选择oozie数据库,然后查看生成的数据表。如图25


f692abeda96b4231af2509d557d64cc8.png


图25 查看生成的数据表


输入命令【start-all.sh】启动hadoop服务,在启动oozie之前,还需要执行下面的命令,为下面的测试准备,这个过程需要几分钟的时间,请耐心等待。如图26


d8d827e7385b4a8c94550ef1017ead0f.png


图26 为测试准备


在oozie-4.3.0下有一个oozie-examples.tar.gz包 。将它进行解压,解压之后生成一个examples目录。在该目录的apps中有一些简单的例子。如图27


570e95629b4644898d59e8e5c5d042e9.png


图27 解压oozie-examples.tar.gz


解压完后,将解压好的examples目录上传。如图28


88940207478241ddb335633dc7b89eb1.png


图28 上传examples目录


输入命令【bin/oozied.sh start】启动oozie。如图29


d573b9162b8843599582bf74e8a99f37.png


图29 启动oozie

 在浏览器地址栏输入【http://localhost:11000】,在网页端查看 。如图30

f727a8a808ea4db18f0863e031f6e1e5.png


图30 webui查看ooize状态

六、 任务测试

 -oozie 后面跟的是oozie server的地址,-config后面跟的是执行的脚本,除了在hdfs上要有一份examples,在本地也需要一份。这个命令中的”examples/apps/map-reduce/job.properties” 是本地路径的job.properties,不是hdfs上的。如图31

1cddda796e7c4e09a268bbe1d7ecee49.png


图31 运行job


在浏览器地址栏输入【http://localhost:11000】,在网页端查看查看,会发现有一行字,这是运行的job。 如图32


cb81e67810d5484f8f921045631c9dd7.png


图32 webui查看ooize


点击该job,弹出如下,页面中的Status显示为RUNNING表示job正在运行。如图33


96b7fc9c20154aae989a3a2787e1e709.png


图33 查看job运行状态

e838ce7e485048aabb811a8c1b3292ad.png



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
XML 分布式计算 监控
详细指南:在Hadoop中配置Oozie作业
【8月更文挑战第31天】
70 0
|
6月前
|
SQL XML 分布式计算
Oozie功能
Oozie是一个基于Hadoop的调度器,它可以用来管理和协调Hadoop作业、Pig作业、Hive作业、Shell脚本等。【2月更文挑战第21天】
54 2
|
6月前
|
分布式计算 资源调度 Hadoop
Hadoop【环境搭建 02】【hadoop-3.1.3 单机版YARN】(配置、启动及验证)
Hadoop【环境搭建 02】【hadoop-3.1.3 单机版YARN】(配置、启动及验证)
90 0
|
6月前
|
分布式计算 Hadoop 数据挖掘
Azkaban
Azkaban
62 0
|
资源调度 分布式计算 Hadoop
CDH 搭建_ Hadoop _ Yarn 搭建|学习笔记
快速学习 CDH 搭建_ Hadoop _ Yarn 搭建
215 0
CDH 搭建_ Hadoop _ Yarn 搭建|学习笔记
|
SQL 分布式计算 Ubuntu
ambari部署apache_hadoop
ambari部署apache_hadoop
790 0
|
分布式计算 资源调度 Hadoop
hadoop yarn安装
本文介绍hadoop yarn安装指南
hadoop yarn安装
|
SQL 关系型数据库 MySQL
Ambari部署Hive
Ambari部署Hive
171 0
Ambari部署Hive
|
分布式计算 Spark
Ambari部署Spark
Ambari部署Spark
353 0
Ambari部署Spark
|
分布式计算 Hadoop
使用 Ambari 安装 Hadoop 集群
转自:使用 Ambari 安装 Hadoop 集群
934 0