oozie4.3编译、安装和启动

背景

昨天在学习《Hadoop权威指南》中关于oozie的内容,本以为不算难,结果却踩了不少坑

环境

由于oozie编译时只能运行sh文件,所以不可避免要安装Cygwin。64位的Cygwin下载地址如下

链接:https://pan.baidu.com/s/1RoL6lyvPyiFPwVEVfowvgg ,提取码:ioi8 

安装过程请参见博文https://blog.csdn.net/chunleixiahe/article/details/55666792

编译

下载oozie4.3的源码,地址如下

链接:https://pan.baidu.com/s/13PKfDTwGNQDWS5DqrktMPA ,提取码:c5n9 

解压到某个文件夹(以D:\develop为例),然后打开cygwin,cd到bin目录下,参考命令

cd /cygdrive/d/develop/oozie-4.3.0/bin

在编译前,先给maven设置java堆栈内存大小,以防oom

export MAVEN_OPTS='-Xms256m -Xmx1024m'

然后进行编译,命令如下

./mkdistro.sh -DskipTests

安装

编译完成后,在oozie-4.3.0目录下会有target文件夹,cd到target\distro目录,新建extra_libs目录(而不是libext)

cd D:\develop\oozie-4.3.0\distro\target\oozie-4.3.0-distro

mkdir extra_libs

然后把hadoop中所有jar包、mysql的驱动jar包都复制到extra_libs里。其中复制hadoop中所有jar包的命令如下所示

cp /cygdrive/d/develop/hadoop-2.8.5/share/hadoop/*/*.jar ./extra_libs

cp /cygdrive/d/develop/hadoop-2.8.5/share/hadoop/*/lib/*.jar ./extra_libs

我们还需要一个ext-2.2的zip包,下载下来后也放到extra_libs里。下载链接如下

链接:https://pan.baidu.com/s/1wM2zYsz_Gdi5xzec9Be3Aw ,提取码:9mip 

然后,在oozie4.3.0根目录下,搜索oozie-core-4.3.0.jar和oozie-client-4.3.0.jar,把它们复制到D:\develop\oozie-4.3.0\distro\target\oozie-4.3.0-distro\oozie-4.3.0\lib下,然后下载jdom、json_simple、commons-cli和openjpa的jar包,也复制到lib目录下。这几个文件的下载链接如下

链接:https://pan.baidu.com/s/1RKOhfs-WD0G8S4ogGP452w ,提取码:krgp 

然后,打开conf\oozie-site.xml文件,复制以下内容





    
        oozie.service.JPAService.create.db.schema
        true
    
    
        oozie.service.JPAService.jdbc.driver
        com.mysql.jdbc.Driver
    
    
        oozie.service.JPAService.jdbc.url
        jdbc:postgresql://l-tdata2.tkt.cn6.qunar.com/oozie?createDatabaseIfNotExist=true
    

    
        oozie.service.JPAService.jdbc.username
        **
    

    
        oozie.service.JPAService.jdbc.password
        **
    
    
        oozie.service.HadoopAccessorService.hadoop.configurations
        *=D:\develop\hadoop-2.8.5\etc\hadoop
    

    
        oozie.service.JPAService.jdbc.url
        jdbc:mysql://localhost:3306/oozie

    
    
        oozie.service.JPAService.jdbc.username
        root
    
    
        oozie.service.JPAService.jdbc.password
        root
    

    
        oozie.service.WorkflowAppService.system.libpath
        hdfs://localhost/user/oozie/share/lib
    


注意把hadoop的路径、数据库的用户名密码都改成自己的

最后,切换到bin目录下(这时可以用cmd了,因为里面有cmd文件),执行命令

oozie-setup.cmd prepare-war

生成war包,然后执行命令

oozie-setup.cmd db create -run -sqlfile oozie.sql

生成oozie.sql文件,打开navicat,创建oozie数据库,右键之,选择执行sql文件,找到oozie.sql,执行之。

如果执行oozie.sql不顺利,可以把创建索引语句都删除,在查询里,先执行建表语句,再执行两条插入语句。

启动

至此,oozie4.3就安装完了,运行bin目录下的oozied.cmd,即可启动之

oozied.cmd start

在浏览器里输入url

http://localhost:11000/oozie/

即可看到web界面

结语

最后,为了方便大家,我把我编译好的distro、生成好的war、jar全分享给大家,让大家避免走弯路

distro压缩包:

链接:https://pan.baidu.com/s/1wMEo0-s7FLilSk0JBBuZBQ 提取码:kvs7 

war:

链接:https://pan.baidu.com/s/1pLHum3vK147oxWxX4jlt0w 提取码:g4lj 

jar:

链接:https://pan.baidu.com/s/1JfjQ-UJdfmGF59WintpYdg 提取码:n1na 

你可能感兴趣的:(大数据)