下载安装包
ext-2.2.zip、oozie-4.0.0-cdh5.3.6.tar.gz
链接:https://pan.baidu.com/s/1tNRnoEIpnEk8fR19KuMeFg
提取码:xtz0
链接:https://pan.baidu.com/s/1-xxqGSSKgfmHE8-kEe9lMA
提取码:zzwc
配置
1、配置hadoop文件 core-site.xml
<!-- OOZIE --> <property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> </property>
2、添加mapred-site.xml
<property> <name>mapreduce.jobhistory.address</name> <value>cdh2:10020</value> <description>历史服务器端口号</description> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>cdh2:19888</value> <description>历史服务器的WEB UI端口号</description> </property> <property> <name>mapreduce.jobhistory.done-dir</name> <value>/export/data/history/done</value> <description>配置运行过的日志存放在hdfs上的路径</description> </property> <property> <name>mapreduce.jobhistory.intermediate-done-dir</name> <value>/export/data/history/intermediate-done-dir</value> <description>配置正在运行中的日志存放在hdfs上的路径</description> </property>
配置完成后,分发文件到每台服务器上,重启hadoop。
3、启动 history-server
sbin/mr-jobhistory-daemon.sh start historyserver
4、 通过浏览器访问 hadoop jobhistory的WEBUI
上传 oozie-4.0.0-cdh5.3.6.tar.gz 安装包并解压
上传 ext-2.2.zip
[root@cdh3 module]# tar -zxvf oozie-4.0.0-cdh5.3.6.tar.gz
[root@cdh3 module]# cd oozie-4.0.0-cdh5.3.6/
[root@cdh3 oozie-4.0.0-cdh5.3.6]# ll
总用量 553868
...
-rw-r--r-- 1 1106 4001 42353 7月 29 2015 oozie-examples.tar.gz
-rw-r--r-- 1 1106 4001 80716120 7月 29 2015 oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz
drwxr-xr-x 9 1106 4001 160 7月 29 2015 oozie-server
-r--r--r-- 1 1106 4001 200450272 7月 29 2015 oozie-sharelib-4.0.0-cdh5.3.6.tar.gz
-r--r--r-- 1 1106 4001 200379680 7月 29 2015 oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz
-rw-r--r-- 1 1106 4001 85427394 7月 29 2015 oozie.war
-rw-r--r-- 1 1106 4001 58910 7月 29 2015 release-log.txt
drwxr-xr-x 20 1106 4001 4096 7月 29 2015 src
#解压hadooplibs 到oozie平行的目录
[root@cdh3 oozie-4.0.0-cdh5.3.6]# tar -zxvf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz -C ../
#添加相关依赖
#在oozie根目录创建libext目录
[root@cdh3 oozie-4.0.0-cdh5.3.6]# mkdir -p libext
#拷贝hadoop依赖包到 libext
[root@cdh3 oozie-4.0.0-cdh5.3.6]# cp -ra hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/
#上传mysql的驱动包到libext下
[root@cdh3 libext]# rz
rz waiting to receive.
Starting zmodem transfer. Press Ctrl+C to cancel.
Transferring mysql-connector-java-5.1.46.jar...
100% 981 KB 981 KB/sec 00:00:01 0 Errors
[root@cdh3 libext]#
#并添加ext-2.2.zip压缩包到libext下
[root@cdh3 libext]# cp /opt/software/ext-2.2.zip ../libext/
配置文件修改-数据库、war包初始化
1 修改 oozie-site.xml
[root@cdh3 conf]# vim /opt/module/oozie-4.0.0-cdh5.3.6/conf/oozie-site.xml
...
<!-- MySQL配置 -->
<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://cdh2:3306/oozie</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>
<!-- Oozie 引用 Hadoop 的配置文件 -->
<property>
<name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
<value>*=/opt/module/hadoop-2.7.2/etc/hadoop</value>
</property>
<!-- 修改时区为东八区 -->
<property>
<name>oozie.processing.timezone</name>
<value>GMT+0800</value>
</property>
初始化 Oozie
1、上传 Oozie 目录下的 yarn.tar.gz文件到 HDFS
[root@cdh3 oozie-4.0.0-cdh5.3.6]# ./bin/oozie-setup.sh sharelib create -fs hdfs://cdh2:9000 -locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz
2、创建mysql数据库
[root@cdh2 sbin]# mysql -uroot -p123456
mysql> create database oozie;
Query OK, 1 row affected (0.05 sec)
mysql>
3、初始化创建oozie的数据库表
[root@cdh3 oozie-4.0.0-cdh5.3.6]# bin/oozie-setup.sh db create -run -sqlfile oozie.sql
4、打包项目,生成 war 包
[root@cdh3 oozie-4.0.0-cdh5.3.6]# bin/oozie-setup.sh prepare-wa
5、Oozie 的启动与关闭
启动命令如下:bin/oozied.sh start
关闭命令如下:bin/oozied.sh stop
6、访问 Oozie 的 Web页面
http://cdh3:11000/
修改关于时间设置的代码
[root@cdh3 module]# vim /opt/module/oozie-4.1.0-cdh5.15.0/oozie-server/webapps/oozie/oozie-console.js
# 修改如下:
function getTimeZone() {
Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
return Ext.state.Manager.get("TimezoneId","GMT+0800");
}
重新启动服务