1.修改hadoop相关配置
1.1 配置httpfs服务
修改hadoop的配置文件core-site.xml
hadoop.proxyuser.root.hosts
*
hadoop.proxyuser.root.groups
*
hadoop.proxyuser.root.hosts 允许通过httpfs方式访问hdfs的主机名、域名;
hadoop.proxyuser.root.groups允许访问的客户端的用户组
1.2. 配置jobhistory服务
修改hadoop的配置文件mapred-site.xml
mapreduce.jobhistory.address
node-1:10020
MapReduce JobHistory Server IPC host:port
mapreduce.jobhistory.webapp.address
node-1:19888
MapReduce JobHistory Server Web UI host:port
mapreduce.jobhistory.done-dir
/export/data/history/done
mapreduce.jobhistory.intermediate-done-dir
/export/data/history/done_intermediate
启动history-server
mr-jobhistory-daemon.sh start historyserver
停止history-server
mr-jobhistory-daemon.sh stop historyserver
通过浏览器访问Hadoop Jobhistory的WEBUIhttp://node-1:19888
1.3. 重启Hadoop集群相关服务
2. 上传oozie的安装包并解压
oozie的安装包上传到/export/softwarestar -zxvf oozie-4.1.0-cdh5.14.0.tar.gz
解压hadooplibs到与oozie平行的目录
cd /export/servers/oozie-4.1.0-cdh5.14.0
tar -zxvf oozie-hadooplibs-4.1.0-cdh5.14.0.tar.gz -C ../
3. 添加相关依赖
oozie的安装路径下创建libext目录
cd /export/servers/oozie-4.1.0-cdh5.14.0
mkdir -p libext
拷贝hadoop依赖包到libext
cd /export/servers/oozie-4.1.0-cdh5.14.0
cp -ra hadooplibs/hadooplib-2.6.0-cdh5.14.0.oozie-4.1.0-cdh5.14.0/* libext/
上传mysql的驱动包到libextmysql-connector-java-5.1.32.jar
添加ext-2.2.zip压缩包到libextext-2.2.zip
4. 修改oozie-site.xml
cd /export/servers/oozie-4.1.0-cdh5.14.0/conf
vim oozie-site.xml
oozie默认使用的是UTC的时区,需要在oozie-site.xml当中配置时区为GMT+0800时区
oozie.service.JPAService.jdbc.driver
com.mysql.jdbc.Driver
oozie.service.JPAService.jdbc.url
jdbc:mysql://node-1:3306/oozie
oozie.service.JPAService.jdbc.username
root
oozie.service.JPAService.jdbc.password
hadoop
oozie.processing.timezone
GMT+0800
oozie.service.coord.check.maximum.frequency
false
oozie.service.HadoopAccessorService.hadoop.configurations
*=/export/servers/hadoop-2.7.5/etc/hadoop
5.初始化mysql相关信息
上传oozie的解压后目录的下的yarn.tar.gz到hdfs目录
bin/oozie-setup.sh sharelib create -fs hdfs://node-1:9000 -locallib oozie-sharelib-4.1.0-cdh5.14.0-yarn.tar.gz
创建mysql数据库
`mysql -uroot -p
create database oozie;`
初始化创建oozie的数据库表
cd /export/servers/oozie-4.1.0-cdh5.14.0
bin/oozie-setup.sh db create -run -sqlfile oozie.sql
6. 打包项目,生成war包
cd /export/servers/oozie-4.1.0-cdh5.14.0
bin/oozie-setup.sh prepare-war
7. 配置oozie环境变量
vim /etc/profile
export OOZIE_HOME=/export/servers/oozie-4.1.0-cdh5.14.0
export OOZIE_URL=http://node03.hadoop.com:11000/oozie
export PATH=$PATH:$OOZIE_HOME/bin
source /etc/profile
8. 启动关闭oozie服务
启动命令
cd /export/servers/oozie-4.1.0-cdh5.14.0
bin/oozied.sh start
关闭命令bin/oozied.sh stop
启动的时候产生的 pid文件,如果是kill方式关闭进程 则需要删除该文件重新启动,否则再次启动会报错。
9. 浏览器webUI页面
10. 解决oozie页面时区显示异常
页面访问的时候,发现oozie使用的还是GMT的时区,与我们现在的时区相差一定的时间,所以需要调整一个js的获取时区的方法,将其改成我们现在的时区。
cd oozie-server/webapps/oozie
vim oozie-console.js
function getTimeZone() {
Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
return Ext.state.Manager.get("TimezoneId","GMT+0800");
}
重启oozie即可
cd /export/servers/oozie-4.1.0-cdh5.14.0
bin/oozied.sh stop
bin/oozied.sh start