Oozie基础介绍:
一个基于工作流引擎的开源框架,是由 Cloudera 公司贡献给 Apache 的,它能够提供对 Hadoop MapReduce 和 Pig Jobs 的 任务调度与协调 。 Oozie 需要 部署到 Java Servlet 容器 中运行。
一个基于工作流引擎的开源框架,是由 Cloudera 公司贡献给 Apache 的,它能够提供对 Hadoop MapReduce 和 Pig Jobs 的 任务调度与协调 。 Oozie 需要 部署到 Java Servlet 容器 中运行。
Oozie
工作流定义,同
JBoss
jBPM
提供的
jPDL
一样,也提供了类似的
流程定义语言
hPDL
,通过
XML
文件格式来实现流程的定义。对于工作流系统,一般都会有很多不同功能的节点,比如分支、并发、汇合等等。
Oozie
定义了
控制流节点(
ControlFlow Nodes
)和动作节点(
Action Nodes
),
其中控制流节点定义了流程的开始和结束,以及控制流程的执行路径(
Execution Path
),如
decision
、
fork
、
join
等;而动作节点包括
Hadoop
map-reduce
、
Hadoop
文件系统、
Pig
、
SSH
、
HTTP
、
eMail
和
Oozie
子流程。
**[控制流节点]
** start
** ok --> end
** error --> kill
** kill
** end
**[动作节点]
** 定义具体需要执行的job任务
** MapReduce、shell、hive
oozie安装
1、安装启动Hadoop和JAVA
$ jps
4097 Jps
3007 NameNode
3490 ResourceManager
3592 NodeManager
3642 JobHistoryServer
3106 DataNode
3334 SecondaryNameNode
2、上传解压
$ tar zxf oozie-4.0.0-cdh5.3.6.tar.gz -C /opt/modules/
3、配置hadoop文件core-site.xml
/opt/modules/hadoop-2.5.0-cdh5.3.6/etc/hadoop/core-site.xml文件:
下面用户名: 【rose】是我当前系统登录的用户
大家要以自己的实际用户去配置
<!-- OOZIE -->
<property>
<name>hadoop.proxyuser.rose.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.rose.groups</name>
<value>*</value>
</property>
重启Hadoop
$ sbin/stop-all.sh ;sbin/start-all.sh
4、解压目录
[rose@hadoop-senior01 oozie-4.0.0-cdh5.3.6]$ pwd
/opt/modules/oozie-4.0.0-cdh5.3.6
$ tar zxf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz -C /opt/modules/
5、创建目录libext
[rose@hadoop-senior01 oozie-4.0.0-cdh5.3.6]$ pwd
/opt/modules/oozie-4.0.0-cdh5.3.6
$ mkdir libext
$ cp -r hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/
$ cp /opt/softwares/ext-2.2.zip libext/
6、安装配置mysql
$ su - root
# service mysqld status
mysqld (pid 2294) 正在运行...
# exit
7、修改oozie配置文件 oozie-site.xml
<property>
<name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
<value>*=/opt/modules/hadoop-2.5.0-cdh5.3.6/etc/hadoop</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.driver</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.url</name>
<value>jdbc:mysql://127.0.0.1:3306/oozie?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.username</name>
<value>root</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.password</name>
<value>123456</value>
</property>
拷贝jar文件到libext目录
$ cp /opt/modules/hive-0.13.1-cdh5.3.6/lib/mysql-connector-java-5.1.27-bin.jar libext/
8、依次执行以下命令
# 上传sharelib文件到Hadoop
bin/oozie-setup.sh sharelib create \
-fs hdfs://hadoop-senior.beifeng.com:8020 \
-locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz
# 打包war
bin/oozie-setup.sh prepare-war
# 在mysql中创建数据库和表, 并生成sql文件
bin/oozie-setup.sh db create -run oozie.sql
9、启动oozie
$ bin/oozied.sh start
$ netstat -an|grep 11000
浏览:http://192.168.17.129:11000/oozie/
注意:标签出不来,尝试更好一个浏览器,或者把浏览器安全级别调低
**[控制流节点]
** start
** ok --> end
** error --> kill
** kill
** end
**[动作节点]
** 定义具体需要执行的job任务
** MapReduce、shell、hive
oozie安装
1、安装启动Hadoop和JAVA
$ jps
4097 Jps
3007 NameNode
3490 ResourceManager
3592 NodeManager
3642 JobHistoryServer
3106 DataNode
3334 SecondaryNameNode
2、上传解压
$ tar zxf oozie-4.0.0-cdh5.3.6.tar.gz -C /opt/modules/
3、配置hadoop文件core-site.xml
/opt/modules/hadoop-2.5.0-cdh5.3.6/etc/hadoop/core-site.xml文件:
下面用户名: 【rose】是我当前系统登录的用户
大家要以自己的实际用户去配置
<!-- OOZIE -->
<property>
<name>hadoop.proxyuser.rose.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.rose.groups</name>
<value>*</value>
</property>
重启Hadoop
$ sbin/stop-all.sh ;sbin/start-all.sh
4、解压目录
[rose@hadoop-senior01 oozie-4.0.0-cdh5.3.6]$ pwd
/opt/modules/oozie-4.0.0-cdh5.3.6
$ tar zxf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz -C /opt/modules/
5、创建目录libext
[rose@hadoop-senior01 oozie-4.0.0-cdh5.3.6]$ pwd
/opt/modules/oozie-4.0.0-cdh5.3.6
$ mkdir libext
$ cp -r hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/
$ cp /opt/softwares/ext-2.2.zip libext/
6、安装配置mysql
$ su - root
# service mysqld status
mysqld (pid 2294) 正在运行...
# exit
7、修改oozie配置文件 oozie-site.xml
<property>
<name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
<value>*=/opt/modules/hadoop-2.5.0-cdh5.3.6/etc/hadoop</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.driver</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.url</name>
<value>jdbc:mysql://127.0.0.1:3306/oozie?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.username</name>
<value>root</value>
</property>
<property>
<name>oozie.service.JPAService.jdbc.password</name>
<value>123456</value>
</property>
拷贝jar文件到libext目录
$ cp /opt/modules/hive-0.13.1-cdh5.3.6/lib/mysql-connector-java-5.1.27-bin.jar libext/
8、依次执行以下命令
# 上传sharelib文件到Hadoop
bin/oozie-setup.sh sharelib create \
-fs hdfs://hadoop-senior.beifeng.com:8020 \
-locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz
# 打包war
bin/oozie-setup.sh prepare-war
# 在mysql中创建数据库和表, 并生成sql文件
bin/oozie-setup.sh db create -run oozie.sql
9、启动oozie
$ bin/oozied.sh start
$ netstat -an|grep 11000
浏览:http://192.168.17.129:11000/oozie/
注意:标签出不来,尝试更好一个浏览器,或者把浏览器安全级别调低