Apache Oozie:Apache Oozie安装

Posted 不死鸟.亚历山大.狼崽子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache Oozie:Apache Oozie安装相关的知识,希望对你有一定的参考价值。

1 修改 hadoop 相关配置

1.1  配置 httpfs 服务

修改 hadoop 的配置文件 core-site.xml

<property>
   <name>hadoop.proxyuser.root.hosts</name>
   <value>*</value>
</property>
<property>
   <name>hadoop.proxyuser.root.groups</name>
   <value>*</value>
</property>

hadoop.proxyuser.root.hosts 允许通过 httpfs 方式访问 hdfs 的主机名、域名;

hadoop.proxyuser.root.groups 允许访问的客户端的用户组

1.2 配置 jobhistory 服务

修改 hadoop 的配置文件 mapred-site.xml

   <property>
        <name>mapreduce.jobhistory.address</name>
        <value>192.168.222.138:10020</value>
        <description>MapReduce JobHistory Server IPC host:port</description>
   </property>
   <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>192.168.222.138:19888</value>
        <description>MapReduce JobHistory Server Web UI host:port</description>
   </property>
   <!-- 配置运行过的日志存放在 hdfs 上的存放路径 -->
   <property>
       <name>mapreduce.jobhistory.done-dir</name>
       <value>/home/history/done</value>
   </property>
   <!-- 配置正在运行中的日志在 hdfs 上的存放路径 -->
   <property>
      <name>mapreduce.jobhistory.intermediate-done-dir</name>
      <value>/home/history/done_intermediate</value>
   </property>

启动 history-server

mr-jobhistory-daemon.sh start historyserver

停止 history-server

mr-jobhistory-daemon.sh stop historyserver

通过浏览器访问 Hadoop Jobhistory 的 WEBUI

http://hadoopip:19888

2 上传 oozie 的安装包并解压

oozie 的安装包上传到/home

tar -zxvf oozie-4.1.0-cdh5.14.0.tar.gz

解压 hadooplibs 到与 oozie 平行的目录

cd /home/oozie-4.1.0-cdh5.14.0

tar -zxvf oozie-hadooplibs-4.1.0-cdh5.14.0.tar.gz -C ../

3 添加相关依赖

oozie 的安装路径下创建 libext 目录

cd /home/oozie-4.1.0-cdh5.14.0
mkdir -p libext

拷贝 hadoop 依赖包到 libext

cd /home/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/

4 上传 mysql 的驱动包到 libext

软件包中有提供

5 添加 ext-2.2.zip 压缩包到 libext

软件包中有提供

4 修改 oozie-site.xml

cd /home/oozie-4.1.0-cdh5.14.0/conf

vim oozie-site.xml

oozie 默认使用的是 UTC 的时区,需要在 oozie-site.xml 当中配置时区为

GMT+0800 时区

    <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://192.168.222.132: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>
    <property>
      <name>oozie.processing.timezone</name>
      <value>GMT+0800</value>
    </property>
    <property>
     <name>oozie.service.coord.check.maximum.frequency</name>
     <value>false</value>
    </property>
    <property>
        <name>oozie.service.HadoopAccessorService.hadoop.configurations</name>
        <value>*=/home/hadoop-3.1.4/etc/hadoop</value>
    </property>

5 初始化 mysql 相关信息

上传 oozie 的解压后目录的下的 yarn.tar.gz 到 hdfs 目录

bin/oozie-setup.sh sharelib create -fs hdfs://192.168.222.138:9000 -locallib oozie-sharelib-4.1.0-cdh5.14.0-yarn.tar.gz

本质上就是将这些 jar 包解压到了 hdfs 上面的路径下面去

创建 mysql 数据库

mysql -uroot -p

create database oozie;

初始化创建 oozie 的数据库表

cd /home/oozie-4.1.0-cdh5.14.0

bin/oozie-setup.sh db create -run -sqlfile oozie.sql

6 打包项目,生成 war 包

cd /home/oozie-4.1.0-cdh5.14.0

bin/oozie-setup.sh prepare-war

7 配置 oozie 环境变量

vim /etc/profile

添加环境变量:

export OOZIE_HOME=/home/oozie-4.1.0-cdh5.14.0
export OOZIE_URL=http://192.168.222.138:11000/oozie
export PATH=$PATH:$OOZIE_HOME/bin

刷新环境变量

source /etc/profile

8 启动关闭 oozie 服务

启动命令

cd /home/oozie-4.1.0-cdh5.14.0

bin/oozied.sh start

关闭命令

bin/oozied.sh stop

启动的时候产生的pid文件,如果是kill方式关闭进程 则需要删除该文件重新启动,否则再次启动会报错。

9 浏览器 web UI 页面

http://192.168.222.138:11000/oozie/

10 解决 oozie 页面时区显示异常

页面访问的时候,发现 oozie 使用的还是 GMT 的时区,与我们现在的时区相差一定的时间,所以需要调整一个 js 的获取时区的方法,将其改成我们现在的时区。

修改 js 当中的时区问题

cd oozie-server/webapps/oozie

vim oozie-console.js

修改内容如下:

重启 oozie 即可

cd /home/oozie-4.1.0-cdh5.14.0
bin/oozied.sh stop
bin/oozied.sh start

以上是关于Apache Oozie:Apache Oozie安装的主要内容,如果未能解决你的问题,请参考以下文章

Apache Oozie学习笔记

Apache Oozie:Oozie调度shell脚本

错误:未找到 org.apache.oozie.action.hadoop.PigMain

选择 Apache Oozie 或 Apache Airflow 哪一个?需要比较

Apache Oozie 在创建 mysql DB 时抛出 classnotfound 异常

1.1-1.4 hadoop调度框架和oozie概述