第3章 Oozie的部署
3.1 部署Hadoop(CDH版本的)
3.1.2 修改Hadoop配置
core-site.xml
代码语言:javascript复制<!-- Oozie Server的Hostname -->
<property>
<name>hadoop.proxyuser.atguigu.hosts</name>
<value>*</value>
</property>
<!-- 允许被Oozie代理的用户组 -->
<property>
<name>hadoop.proxyuser.atguigu.groups</name>
<value>*</value>
</property>
mapred-site.xml
代码语言:javascript复制<!-- 配置 MapReduce JobHistory Server 地址 ,默认端口10020 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop102:10020</value>
</property>
<!-- 配置 MapReduce JobHistory Server web ui 地址, 默认端口19888 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop102:19888</value>
</property>
yarn-site.xml
代码语言:javascript复制<!-- 任务历史服务 -->
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop102:19888/jobhistory/logs/</value>
</property>
完成后:记得scp同步到其他机器节点
3.1.3 重启Hadoop集群
代码语言:javascript复制[atguigu@hadoop102 hadoop-2.7.2]$ sbin/start-dfs.sh
[atguigu@hadoop103 hadoop-2.7.2]$ sbin/start-yarn.sh
[atguigu@hadoop102 hadoop-2.7.2]$ sbin/mr-jobhistory-daemon.sh start historyserver
注意:需要开启JobHistoryServer, 最好执行一个MR任务进行测试。
3.2 部署Oozie
3.2.1 解压Oozie
代码语言:javascript复制[atguigu@hadoop102 software]$ tar -zxvf /opt/software/cdh/oozie-4.0.0-cdh5.3.6.tar.gz -C ./
3.2.2 在oozie根目录下解压oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ tar -zxvf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz -C ../
完成后Oozie目录下会出现hadooplibs目录。
3.2.3 在Oozie目录下创建libext目录
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ mkdir libext/
3.2.4 拷贝依赖的Jar包
1)将hadooplibs里面的jar包,拷贝到libext目录下:
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ cp -ra hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/
2)拷贝Mysql驱动包到libext目录下:
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ cp -a /opt/software/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar ./libext/
3.2.5 将ext-2.2.zip拷贝到libext/目录下
ext是一个js框架,用于展示oozie前端页面:
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ cp -a /opt/software/cdh/ext-2.2.zip libext/
3.2.6 修改Oozie配置文件
oozie-site.xml 属性:oozie.service.JPAService.jdbc.driver 属性值:com.mysql.jdbc.Driver 解释:JDBC的驱动
属性:oozie.service.JPAService.jdbc.url 属性值:jdbc:mysql://hadoop102:3306/oozie 解释:oozie所需的数据库地址
属性:oozie.service.JPAService.jdbc.username 属性值:root 解释:数据库用户名
属性:oozie.service.JPAService.jdbc.password 属性值:000000 解释:数据库密码
属性:oozie.service.HadoopAccessorService.hadoop.configurations 属性值:*=/opt/module/cdh/hadoop-2.5.0-cdh5.3.6/etc/hadoop 解释:让Oozie引用Hadoop的配置文件
3.2.7 在Mysql中创建Oozie的数据库
进入Mysql并创建oozie数据库:
代码语言:javascript复制$ mysql -uroot -p000000
mysql> create database oozie;
3.2.8 初始化Oozie
- 上传Oozie目录下的yarn.tar.gz文件到HDFS: 提示:yarn.tar.gz文件会自行解压
[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ bin/oozie-setup.sh sharelib create -fs hdfs://hadoop102:8020 -locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz
执行成功之后,去50070检查对应目录有没有文件生成。 2) 创建oozie.sql文件 [atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ bin/ooziedb.sh create -sqlfile oozie.sql -run 3) 打包项目,生成war包 [atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ bin/oozie-setup.sh prepare-war
3.2.9 Oozie的启动与关闭
启动命令如下:
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ bin/oozied.sh start
关闭命令如下:
代码语言:javascript复制[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ bin/oozied.sh stop
3.2.10 访问Oozie的Web页面
代码语言:javascript复制http://hadoop102:11000/oozie