Oozie安装配置与实例运行

Oozie安装配置与实例运行
目录
Oozie安装配置与实例运行 1

  1. Maven安装 2
    1.1. 官网下载 2
    1.2. 解压安装 2
    1.3. 其他依赖 3
  2. MySQL安装 3
    2.1. 下载安装包:客户端与服务端。(个人版本为5.6.29) 3
    2.2. 确认当前虚拟机上是否安装过mysql 3
    2.3. 卸载mysql 3
    2.4. 新增mysql用户组,并创建mysql用户 3
    2.5. 解压mysql Server rpm和mysql client rpm包 4
    2.6. 修改my.cnf配置文件,设置字符集,默认在/usr/my.cnf 4
    2.7. 将mysqld加入系统服务,并随机启动 4
    2.8. 启动mysqld 4
    2.9. 查看初始生成的密码,这个密码是随机生成的 4
    2.10. 修改初始密码 4
    2.11. 进入mysql数据库 5
    2.12. 查看mysql数据库配置信息 5
  3. 下载Oozie 5
    3.1. 官网下载 5
    3.2. 解压安装 5
    3.3. 编译 6
    3.4. 修改Oozie配置 6
    3.5. 修改oozie的oozie-site.xml文件 6
    3.6. 创建数据库并授权 9
    3.7. 将需要用到的包进行打包 9
  4. 修改Hadoop配置文件 10
    4.1. 修改core-site.xml文件 10
    4.2. 在mapred-site文件中,设置为yarn管理 10
    4.3. 启动hadoop(或hadoop集群) 10
    4.4. 上传oozie-4.3.1/share/lib到hdfs 11
    4.5. 启动jobhistory并查看所有进程 11
  5. 启动oozie 11
  6. 运行oozie自带实例:map-reduce 12
    6.1. 解压oozie-4.7.1目录下的oozie-examples.tar.gz 12
    6.2. 执行oozie job 13
    6.3. 查看oozie job信息 13
    6.4. 通过浏览器查看job信息 14
    6.5. 查看hdfs文件内容 15

Oozie的安装需要利用到Maven仓库和MySQL以及jdk等环境,故以下列举Maven和MySQL的安装信息。

  1. Maven安装
    1.1. 官网下载
    进入maven下载页面http://mirror.bit.edu.cn/apache/maven/maven-3/3.3.9/binaries/,下载apache-maven-3.3.9版本(与生产环境一致)。
    Oozie安装配置与实例运行_第1张图片
    1.2. 解压安装
    ① 、我将下载的文件放到/home/software/ORA文件夹下,直接解压:
    tar -xvf apache-maven-3.3.9-bin.tar.gz
    ② 、修改环境变量:vim /etc/profile
    export export M2_HOME=/home/software/ORA/apache-maven-3.3.9
    export PATH= P A T H : PATH: PATH:M2_HOME/bin
    ③ 、修改了配置文件之后,通过source让其生效:
    source /etc/profile
    ④ 、验证maven是否安装成功
    mvn -version
    Oozie安装配置与实例运行_第2张图片
    1.3. 其他依赖
    可以访问官网进行搜索下载:https://mvnrepository.com/
    ① 、doxia-core-1.0-alpha-9.2y.jar
    ② 、doxia-module-twiki-1.0-alpha-9.2y.jar
    ③ 、pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar
    将这3个jar包放到apache-maven-3.5.3/lib/目录下,后面Oozie编译才能成功。
    ④ 、ext-2.2.zip(Oozie客户端的插件)
    ⑤ 、mysql-connector-java-5.1.38-bin.jar(MySQL驱动包)
    这2个包后面配置Oozie会用到。

  2. MySQL安装
    2.1. 下载安装包:客户端与服务端。(个人版本为5.6.29)
    MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm
    MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm
    2.2. 确认当前虚拟机上是否安装过mysql
    如果有相应mysql的信息,如显示(mysql-libs-5.1.71-1.el6.x86_64),则需卸载当前版本的mysql。
    rpm -qa | grep mysql
    2.3. 卸载mysql
    rpm -ev --nodeps mysql-libs-5.1.71-1.el6.x86_64
    此时,再执行:rpm -qa | grep mysql 发现没有相关信息了,证明mysql卸载完成。
    2.4. 新增mysql用户组,并创建mysql用户
    groupadd mysql
    useradd -r -g mysql mysql
    2.5. 解压mysql Server rpm和mysql client rpm包
    rpm -ivh MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm
    rpm -ivh MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm
    2.6. 修改my.cnf配置文件,设置字符集,默认在/usr/my.cnf

    vim /usr/my.cnf

    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    character_set_server=utf8
    2.7. 将mysqld加入系统服务,并随机启动
    cp /usr/share/mysql/mysql.server /etc/init.d/mysqld
    说明:/etc/init.d 是linux的一个特殊目录,放在这个目录的命令会随Linux开机而启动。
    2.8. 启动mysqld
    service mysqld start
    注:当发现显示Starting MySQL… SUCCESS则证明服务启动成功。
    2.9. 查看初始生成的密码,这个密码是随机生成的
    cat /root/.mysql_secret
    RKV9BjNZmjeDrgZk
    2.10. 修改初始密码
    第一次安装完mysql后,需要指定登录密码,执行:mysqladmin -u root -p password root 此时,提示要输入初始生成的密码,拷贝过来即可

    mysqladmin -u root -p password root
    2.11. 进入mysql数据库

    mysql -uroot -proot
    2.12. 查看mysql数据库配置信息

    \s

  3. 下载Oozie
    3.1. 官网下载
    进入Oozie官网:http://oozie.apache.org,本次下载的是4.3.1版。
    Oozie安装配置与实例运行_第3张图片
    3.2. 解压安装
    ① 、我将下载的文件放到/home/software/ORA文件夹下,直接解压:
    tar -xvf oozie-4.3.1.tar.gz
    ② 、进入Oozie目录,修改oozie.pom文件:cd oozie-4.3.1、vim pom.xml
    将hadoop.version修改对应为自己的版本号。
    Oozie安装配置与实例运行_第4张图片
    3.3. 编译
    进入oozie-4.3.1/bin目录:cd oozie-4.3.1/bin,执行编译命令。
    ./mkdistro.sh -DskipTests -Dhadoop.version=2.7.1 -Puber
    我自己在编译时遇到很多次中断,大多数是maven仓库下载jar包时引起的,重新执行编译命令后,等待编译成功。
    编译好之后,在distro/target目录下面,有oozie-4.3.1-distro-tar.gz,这个就是编译好之后的oozie。把这个oozie复制到home/software/ORA/目录下,将编译前的包修改名字,进行备用。
    3.4. 修改Oozie配置
    ① 、解压刚刚编译好的oozie包:
    tar -xvf oozie-4.3.1-distro.tar.gz
    ② 、配置Oozie的环境变量:vim /etc/profile

    #oozie 环境变量
    export OOZIE_HOME=/home/software/ORA/oozie-4.3.1
    export OOZIE_CONFIG=/home/software/ORA/oozie-4.3.1/conf
    <!–web页面访问连接–>
    export OOZIE_URL=http://192.168.133.135:11000/oozie


export OOZIE_CLIENT_HOME=/home/software/ORA/oozie-4.3.1/oozie-client-4.3.1
③ 、使配置文件生效
source /etc/profile
3.5. 修改oozie的oozie-site.xml文件
vim oozie-4.3.1/conf/oozie-site.xml


oozie.service.JPAService.jdbc.driver
com.mysql.jdbc.Driver


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



    oozie.service.JPAService.jdbc.username
    root



    oozie.service.JPAService.jdbc.password
    root



    oozie.service.HadoopAccessorService.hadoop.configurations
    *=/home/software/hadoop-2.7.1/etc/hadoop



    oozie.service.WorkflowAppService.system.libpath
    hdfs://hadoop:9000/user/root/share/lib



        oozie.use.system.libpath
        true



        oozie.subworkflow.classpath.inheritance
        true


注意:

① 、hadoop对应的目录,oozie任务调度时候需要用到:
Oozie安装配置与实例运行_第5张图片
② 、oozie自身数据库的配置文件,需要先创建oozie数据库,不然当oozie启动的时候,会报错:
Oozie安装配置与实例运行_第6张图片
3.6. 创建数据库并授权
① 、进入MySQL:mysql -uroot -proot
② 、创建oozie数据库:create database oozie;
③ 、授权:grant all on oozie.* to ‘root’@’%’;
④ 、保存信息:flush privileges;
3.7. 将需要用到的包进行打包
① 、进入oozie-4.3.1目录:cd /home/software/ORA/oozie-4.3.1
② 、创建libext文件夹:mkdir libext
③ 、将hadoop里面的包复制到libext文件夹中:

cp ../hadoop-2.7.1/share/hadoop/*/lib/*.jar libext/
cp ../hadoop-2.7.1/share/hadoop/*/*.jar libext

④ 、然后将上面的“其他依赖”里面提到的包拷贝进来

ext-2.2.zip(Oozie客户端的插件)
mysql-connector-java-5.1.38-bin.jar(MySQL驱动包)
cp ../mysql-connector-java-5.1.38.jar libext/
cp ../ext-2.2.zip libext/
  1. 修改Hadoop配置文件
    4.1. 修改core-site.xml文件
    ① 、进入hadoop配置文件:cd /home/software/Hadoop-2.7.1/etc/Hadoop
    ② 、vim core-site.xml
    添加如下内容:


    hadoop.proxyuser.root.hosts
    *


    hadoop.proxyuser.root.groups
    *

需注意:主机以及用户组需要与oozie的相同,否则进行任务调度会报错。
4.2. 在mapred-site文件中,设置为yarn管理

vim mapred-site.xml

    
        mapreduce.framework.name
        yarn
    

4.3. 启动hadoop(或hadoop集群)
因为本次为单节点,所以直接start-all.sh(已配置好hadoop环境变量,如没配置hadoop环境变量,则需要在hadoop-2.7.1/bin目录下进行启动)
4.4. 上传oozie-4.3.1/share/lib到hdfs
① 、进入/home/software/ORA/oozie-4.3.1目录:cd /home/software/ORA/oozie-4.3.1
② 、解压oozie-sharelib-4.3.1.tar.gz:tar -xvf oozie-sharelib-4.3.1.tar.gz,得到share
③ 、上传至hdfs:hadoop fs -put share /user/root(如没有/user/root则先创建,hadoop fs -r mkdir /user/root)
4.5. 启动jobhistory并查看所有进程
① 、执行:mr-jobhistory-daemon.sh start historyserver,启动jobhistory进程,oozie调度任务需要进行利用
② 、查看进程:jps,本次的相关进程有:
Oozie安装配置与实例运行_第7张图片
5. 启动oozie
① 、执行:oozie-start.sh
在这里插入图片描述

② 查看oozie状态:oozie admin --oozie http://localhost:11000/oozie -status
在这里插入图片描述
③ 、通过浏览器访问:http://192.168.133.136:10000/oozie,如下证明启动成功:
Oozie安装配置与实例运行_第8张图片
6. 运行oozie自带实例:map-reduce
6.1. 解压oozie-4.7.1目录下的oozie-examples.tar.gz
① 、执行:tar -xvf oozie-examples.tar.gz,目录下增加example目录。
Oozie安装配置与实例运行_第9张图片
② 、打开目录:cd /examples/apps/map-reduce,修改job.properties文件:vim properties
Oozie安装配置与实例运行_第10张图片
其中nameNode的配置是在hadoop的core-site.xml里面配置的,jobtracker的配置是在hadoop的yarn-site.xml里面配置的yarn.resourcemanager.address属性。两处必须与hadoop文件中一致。

③ 、将这个example上传到hdfs里面:hadoop fs -put examples /user/root/
6.2. 执行oozie job
在oozie-4.3.1/bin目录下执行:

./oozie job -oozie http://hadoop:11000/oozie -config /home/software/ORA/oozie-4.3.1/examples/apps/map-reduce/job.properties -run

或直接执行(前提为配置了oozie环境变量):

oozie job -oozie http://hadoop:11000/oozie -config /home/software/ORA/oozie-4.3.1/examples/apps/map-reduce/job.properties -run

在这里插入图片描述

6.3. 查看oozie job信息
在oozie-4.3.1/bin目录下执行:

./oozie job -oozie http://localhost:11000/oozie -info 0000000-190617042003318-oozie-root-W

或直接执行(前提为配置了oozie环境变量):

oozie job -oozie http://localhost:11000/oozie -info 0000000-190617042003318-oozie-root-W

得到下图可查看job信息:
Oozie安装配置与实例运行_第11张图片
6.4. 通过浏览器查看job信息
① 、http://192.168.133.136:11000/oozie/
Oozie安装配置与实例运行_第12张图片
② 、通过双击Job Id可查看详细信息
Oozie安装配置与实例运行_第13张图片
③ 、Job DAG(有向无环图可直接查看每个步骤状态)
Oozie安装配置与实例运行_第14张图片
6.5. 查看hdfs文件内容
执行以下命令:
① 、hdfs dfs -cat /user/root/examples/output-data/map-reduce/part-00000

② 、hadoop fs -cat /user/root/examples/output-data/map-reduce/part-00000
观察到如下输出信息:
Oozie安装配置与实例运行_第15张图片

你可能感兴趣的:(Oozie)