环境准备
mave安装
1.下载并上传maven,然后解压
tar -zxvf apache-maven-3.3.9-bin.tar.gz -C /home
2.配置环境变量
vi /etc/profile
export MAVEN_HOME=/home/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile
3.验证maven是否安装成功
执行命令
mvn -v
![](https://i-blog.csdnimg.cn/blog_migrate/b0c034c843f7f3618fa3f11f5c646076.png)
下载压缩包oozie-4.1.0.tar.gz
1.解压
tar -zxvf oozie-4.1.0.tar.gz -C /home
2.编译
cd /home/oozie-4.1.0
bin/mkdistro.sh -DskipTests
编译成功会如下图显示
![](https://i-blog.csdnimg.cn/blog_migrate/dc458156af05eed03b395ba0b34b1088.png)
编译过程中可能会遇到的错误:
当日志中出现:
Failure executing javac, but could not parse the error
java.lang.OutOfMemoryError: PermGen space
![](https://i-blog.csdnimg.cn/blog_migrate/4cfa4f8eefc9c86cc390c3f75bba4baf.png)
解决方案:
因为用maven编译,所以要修改maven内存参数
进入$maven_home
cd /home/apache-maven-3.3.9/bin
编辑mvn,在其中加入
MAVEN_OPTS="$MAVEN_OPTS -Xms256m -Xmx2048m -XX:MaxPermSize=128m - XX:ReservedCodeCacheSize=1024m"
![](https://i-blog.csdnimg.cn/blog_migrate/5692e423bad20d66f7d2c45923b9b312.png)
修改HDFS配置
1.修改hadoop的core-site.xml文件
![](https://i-blog.csdnimg.cn/blog_migrate/6187df3918087f2e604ff7807fb00dd9.png)
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
其中,[USER]需要改为后面启动oozie tomcat的用户(不建议用root)
2.不重启集群而使之生效
![](https://i-blog.csdnimg.cn/blog_migrate/a5d47164f1e688efab45118fe91edd37.png)
执行如下命令
hdfs dfsadmin -refreshSuperUserGroupsConfiguration
yarn rmadmin -refreshSuperUserGroupsConfiguration
![](https://i-blog.csdnimg.cn/blog_migrate/abafa7ffa1766ba13651a28607b8ddc2.png)
配置oozie
1.取得压缩包
cd /home/oozie-4.1.0/distro/target/oozie-4.1.0-distro.tar.gz
2.解压缩
tar -zxvf oozie-4.1.0-distro.tar.gz
![](https://i-blog.csdnimg.cn/blog_migrate/5ee2919cc9bd98671d027d639b777e7c.png)
3.在oozie-4.1.0目录下新建 libext目录,并把ext-2.2.zip 拷贝到该目录
![](https://i-blog.csdnimg.cn/blog_migrate/c9c9560f88b48938a4d98d0e360e8acd.png)
并拷贝hadoop相关jar包到该目录下:
![](https://i-blog.csdnimg.cn/blog_migrate/2139ed19cfd2c9652d64962e16aad863.png)
把hadoop与tomcat冲突jar包去掉
![](https://i-blog.csdnimg.cn/blog_migrate/bbd68900553053a991fe248e9a7b48d3.png)
mv servlet-api-2.5.jar servlet-api-2.5.jar.bak
mv jsp-api-2.1.jar jsp-api-2.1.jar.bak
mv jasper-compiler-5.5.23.jar jasper-compiler-5.5.23.jar.bak
mv jasper-runtime-5.5.23.jar jasper-runtime-5.5.23.jar.bak
拷贝mysql驱动到该目录下
![](https://i-blog.csdnimg.cn/blog_migrate/c2b36f87264bd0811f48aa3585aedc97.png)
配置数据库连接
vi /home/oozie-4.1.0/distro/target/oozie-4.1.0/conf/oozie-site.xml
![](https://i-blog.csdnimg.cn/blog_migrate/934d9d15477208baf971a083cd1adb19.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5c6b9f7eeb71a74ff046d397168c3a10.png)
启动前的初始化:
打war包:
bin/oozie-setup.sh prepare-war
注:在这里可能会不成功
Failed: creating new Oozie WAR zip command。。。
此时可能是因为当前linux环境中不支持zip命令
yum install zip
之后再次执行即可
初始化数据库(mysql要启动)
bin/ooziedb.sh create -sqlfile oozie.sql -run
![](https://i-blog.csdnimg.cn/blog_migrate/a454c9d1f098637105c5fe357f2b85dc.png)
修改oozie-4.2.0/oozie-server/conf/server.xml文件,注释掉下面的记录
vi /home/oozie-4.1.0/distro/target/oozie-4.1.0/oozie-server/conf/server.xml
<!--<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />-->
上传jar包
bin/oozie-setup.sh sharelib create -fs hdfs://node1:8020
启动oozie
bin/oozied.sh start
![](https://i-blog.csdnimg.cn/blog_migrate/49d6642785982efac70ebb27e724fb26.png)