oozie 5.1.0编译安装

一、准备工作

1、安装 oracle jdk 1.8.0 

    过程略。

2、安装 apache maven 3.6.0

    过程略。

3、安装 hadoop 2.7.6

    过程略。


二、oozie编译

1、版本

oozie:5.1.0

hadoop:2.7.6

hive:2.3.4

sqoop:1.4.7

hbase:1.2.9

2、oozie下载、环境变量设置

    下载:wget http://archive.apache.org/dist/oozie/5.1.0/oozie-5.1.0.tar.gz

    设置环境变量:

            export OOZIE_HOME=/usr/local/oozie-5.1.0

            export PATH=$PATH:$OOZIE_HOME/bin

3、修改pom.xml

2.7.6

        2

        hadoop-${hadoop.majorversion}-${project.version}

        1.2.9

       

        2.3.4

        2.12

        core

        1.4.7

4、编译

执行命令编译:

${OOZIE_HOME}/bin/mkdistro.sh -DskipTests -Puber -Phadoop-2 -Dhadoop.version=2.7.6 -Dhadoop.auth.version=2.7.6 -Ddistcp.version=2.7.6 -Dsqoop.version=1.4.7 -Dsqoop.classifier=hadoop260 -Dhive.version=2.3.4 -Dhbase.version=1.2.9 -Djetty.version=9.4.12.v20180830 -Dopenjpa.version=2.4.3 -Dxerces.version=2.12.0

编译过程中可能会出现以下错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:testCompile (default-testCompile) on project oozie-core: Compilation failure: Compilation failure:

解决方法,pom.xml增加:

     

        ... ...

    

            /core/src/test/java

   


ERROR] Failed to execute goal on project oozie-sharelib-sqoop: Could not resolve dependencies for project org.apache.oozie:oozie-sharelib-sqoop:jar:5.1.0: Could not find artifact org.apache.sqoop:sqoop:jar:${sqoop.classifier}:1.4.7 in central (http://central.maven.org/maven2/) -> [Help 1]

解决方法,pom.xml修改:

hadoop260

oozie 5.1.0编译安装_第1张图片
截止这里我们编译工作完成啦



三、安装oozie server

1、将编译好的文件放入/usr/local/oozie-5.1.0/

    cp distro/target/oozie-5.1.0-distro.tar.gz /home/

    cd ..

    mv oozie-5.1.0 oozie-5.1.0-bak

    tar -zxvf /home/oozie-5.1.0-distro.tar.gz -C /usr/local/

2、修改oozie-site.xml

            oozie.service.JPAService.jdbc.driver

            com.mysql.jdbc.Driver

                oozie.service.JPAService.jdbc.url

                jdbc:mysql://localhost:3306/oozie

                oozie.service.JPAService.jdbc.username

                root

                oozie.service.JPAService.jdbc.password

                root

                oozie.service.HadoopAccessorService.hadoop.configurations

                *=/usr/local/hadoop-2.7.6/etc/hadoop/

 

                oozie.service.WorkflowAppService.system.libpath

                hdfs://localhost:9000/user/${user.name}/share/lib

 

3、在hadoop的配置文件core-site.xml中追加配置oozie代理用户

hadoop.proxyuser.root.hosts

root

hadoop.proxyuser.root.groups

root

需要分发到各节点

4、创建 libext目录,并将下载好的ext-2.2.zip以及mysql驱动包(例如:mysql-connector-java-5.1.47.jar)复制到libext目录下。

cd  ${OOZIE_HOME}

mkdir libext

wget http://archive.cloudera.com/gplextras/misc/ext-2.2.zip

5、解压tar文件

tar -zxvf ./oozie-5.1.0/oozie-sharelib-5.1.0.tar.gz

tar -zxvf oozie-sharelib-5.1.0.tar.gz

tar -zxvf oozie-examples.tar.gz

6、将share上传到hdfs上

./bin/oozie-setup.sh sharelib create -fs hdfs://localhost:9000 -locallib oozie-sharelib-5.1.0.tar.gz

7、将mysql-connector-java-5.1.47.jar 拷贝到${OOZIE_HOME} /lib目录

8、数据库设置

在mysql中创建名为oozie的数据库,并在执行:

bin/ooziedb.sh create -sqlfile oozie.sql -run

9、启动oozie

bin/oozie-start.sh

10、检查oozie状态

oozie admin -oozie http://localhost:11000/oozie -status

启动成功



四、测试

1、将examples上传服务器

hadoop fs -put ./examples/ hdfs://localhost:9000/user/root/

2、测试shell任务

cd examples/apps/shell

注意:job.properties中nameNode要改成自己的hdfs的namenode地址,resourceManager同理要改成自己yarn resourceManager的地址。

执行任务:oozie job -oozie http://localhost:11000/oozie -config ./job.properties -run

执行任务

查看任务状态:oozie job -oozie http://localhost:11000/oozie -info 0000000-190411173737717-oozie-root-W

oozie 5.1.0编译安装_第2张图片
任务完成

如果logs/中日志文件为空,或者

oozie job -oozie http://localhost:11000/oozie -log 0000000-190411173737717-oozie-root-W

看不到任何日志,可能是jar包冲突,在lib、文件中看下log4j-相关的jar包有2.0版本的,如果有将其删除,然后重启。

好啦,oozie 5.1.0安装完成!

你可能感兴趣的:(oozie 5.1.0编译安装)