阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Hadoop平台上Oozie调度系统的安装配置

415次阅读
没有评论

共计 6691 个字符,预计需要花费 17 分钟才能阅读完成。

OOZIE 是 Hadoop 平台上的开源调度工具,在项目中使用 OOZIE 将近一年时间了,OOZIE 的安装配置还是挺复杂的。为了使用起来方便顺手,需要进行很多配置。下面整理了一下 OOZIE 安装配置的步骤,供使用 Hadoop 和 OOZIE 的童鞋们参考,也方便自己查看。

相关阅读

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
 
1    解压安装包
 
tar -xzf oozie-3.3.2-distro.tar.gz
 
2    修改 addtowar.sh 脚本
 
由于 OOZIE 声明支持的 Hadoop 版本不包括 1.0.4,而实际上是可以和 Hadoop-1.0.4 配合工作的。所以需要修改 $OOZIE_HOME/bin 下的 addtowar.sh 脚本,在 function getHadoopJars()的最后增加:
 
elif [“${version}” = “1.0.4” ]; then
 
    #List is separated by “:” 

hadoopJars=”hadoop-ant-1.0.4.jar:hadoop-client-1.0.4.jar:hadoop-core-1.0.4.jar:hadoop-minicluster-1.0.4.jar:hadoop-tools-1.0.4.jar:jackson-core-asl-1.8.8.jar:jackson-mapper-asl-1.8.8.jar:log4j-1.2.15.jar: commons-configuration-1.6.jar”
 
3    拷贝所需依赖
 
因为 OOZIE 需要将所有的依赖打成 War 包部署到内置的 Tomcat 上,所以需要将相应 Jar 包和 ExtJS 拷贝至 $OOZIE_HOME/libext 目录下,包括以下依赖:

4    环境变量设置
 
vi ~/.bash_profile
 
添加
 
export OOZIE_URL=http://localhost:11000/oozie/
 
export OOZIE_HOME=/home/hadoop/oozie-3.3.2
 
 
 
PATH 中添加:$OOZIE_HOME/bin
 
5    代理设置
 
如果不进行代理设置的话,提交任务时会遇到类似的报错:
 
hadoop is not allowed to impersonate hadoop
 
翻译过来意思是 hadoop 不允许模仿 hadoop,也就是说 hadoop 没有代替 hadoop 提交任务的权限。
 
出现这个问题的原因在于 OOZIE 本身并不执行任何任务,也不会分发任务至 Tasktracker。OOZIE 和 Hadoop 集群唯一的交互是向 Jobtracker 提交任务,并通过回调 URL 或轮询的方式获取任务执行情况。
 
我们假定 Hadoop 集群安装在 A 账户下,OOZIE 安装在某节点的 B 账户下,该账户属于 C 用户组。那么代理设置表示如下含义:A 账户在该节点拥有代替 C 用户组提交任务的权限。
 
在 core-site.xml 中添加
 
        <!– OOZIE –>
 
        <property>
 
                <name>hadoop.proxyuser.hadoop.hosts</name>
 
                <value>IP</value>
 
        </property>
 
        <property>
 
                <name>hadoop.proxyuser.hadoop.groups</name>
 
                <value>hadoop</value>
 
        </property>
 
在配置项中,hadoop.proxyuser.hadoop.hosts 和 hadoop.proxyuser.hadoop.groups 中的两个 hadoop 是我们上文提到的账户 A,hadoop.proxyuser.hadoop.hosts 对应的 value 需要填写 OOZIE 安装节点的 IP,hadoop.proxyuser.hadoop.groups 对应的 value 需要填写我们上文提到的用户组 C。
 
由于一般 Hadoop 和 OOZIE 都安装在 hadoop 账户下,而 hadoop 账户又属于 hadoop 用户组。所以就出现了这种搞笑的配置,hadoop 代替 hadoop 提交任务。
 
注意由于该配置项是在 core-site.xml,所以修改该配置后,需要重启集群才能生效。
 
6    时区设置
 
时区设置的目的是在配置中使用东八区时间。
 
在 oozie-site.xml 中添加:
 
  <!– timezone configuration –>
 
  <property>
 
        <name>oozie.processing.timezone</name>
 
        <value>GMT+0800</value>
 
    </property>
 
7    端口号设置
 
如需修改端口号,在 $OOZIE_HOME/conf/oozie-env.sh 中修改端口号,防止端口冲突。默认端口号为 11000。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-04/100382p2.htm

8 数据库设置

OOZIE 使用 RDBMS 存储元信息,默认使用 Apache 的嵌入式纯 Java 数据库 Derby。使用时可能出现问题,推荐使用 Mysql,配置如下:

<property>

<name>oozie.db.schema.name</name>

<value>oozie</value>

<description>

Oozie DataBase Name

</description>

</property>

<property>

<name>oozie.service.JPAService.create.db.schema</name>

<value>true</value>

<description>

Creates Oozie DB.

If set to true, it creates the DB schema if it does not exist. If the DB schema exists is a NOP.

If set to false, it does not create the DB schema. If the DB schema does not exist it fails start up.

</description>

</property>

<property>

<name>oozie.service.JPAService.jdbc.driver</name>

<value>com.mysql.jdbc.Driver</value>

<description>

JDBC driver class.

</description>

</property>

<property>

<name>oozie.service.JPAService.jdbc.url</name>

<value>jdbc:mysql://localhost:3306/oozie?createDatabaseIfNotExist=true</value>

<description>

JDBC URL.

</description>

</property>

<property>

<name>oozie.service.JPAService.jdbc.username</name>

<value>root</value>

<description>

DB user name.

</description>

</property>

<property>

<name>oozie.service.JPAService.jdbc.password</name>

<value>abc</value>

<description>

DB user password.

IMPORTANT: if password is emtpy leave a 1 space string, the service trims the value,

if empty Configuration assumes it is NULL.

</description>

</property>

9 运行 oozie-setup.sh

$OOZIE_HOME/bin/oozie-setup.sh -Hadoop 1.0.4 /home/hadoop/hadoop -extjs /home/hadoop/oozie-3.3.2/libext/

10 创建数据库

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

11 运行 oozie-start.sh

$OOZIE_HOME/bin/oozie-start.sh

12 运行 oozie-run.sh

nohup /home/hadoop/oozie-3.3.2/bin/oozie-run.sh > /home/hadoop/oozie-3.3.2/logs/log 2>/home/hadoop/oozie-3.3.2/logs/errorlog &

13 验证 oozie 的状态正常

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

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

OOZIE 是 Hadoop 平台上的开源调度工具,在项目中使用 OOZIE 将近一年时间了,OOZIE 的安装配置还是挺复杂的。为了使用起来方便顺手,需要进行很多配置。下面整理了一下 OOZIE 安装配置的步骤,供使用 Hadoop 和 OOZIE 的童鞋们参考,也方便自己查看。

相关阅读

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm
 
1    解压安装包
 
tar -xzf oozie-3.3.2-distro.tar.gz
 
2    修改 addtowar.sh 脚本
 
由于 OOZIE 声明支持的 Hadoop 版本不包括 1.0.4,而实际上是可以和 Hadoop-1.0.4 配合工作的。所以需要修改 $OOZIE_HOME/bin 下的 addtowar.sh 脚本,在 function getHadoopJars()的最后增加:
 
elif [“${version}” = “1.0.4” ]; then
 
    #List is separated by “:” 

hadoopJars=”hadoop-ant-1.0.4.jar:hadoop-client-1.0.4.jar:hadoop-core-1.0.4.jar:hadoop-minicluster-1.0.4.jar:hadoop-tools-1.0.4.jar:jackson-core-asl-1.8.8.jar:jackson-mapper-asl-1.8.8.jar:log4j-1.2.15.jar: commons-configuration-1.6.jar”
 
3    拷贝所需依赖
 
因为 OOZIE 需要将所有的依赖打成 War 包部署到内置的 Tomcat 上,所以需要将相应 Jar 包和 ExtJS 拷贝至 $OOZIE_HOME/libext 目录下,包括以下依赖:

4    环境变量设置
 
vi ~/.bash_profile
 
添加
 
export OOZIE_URL=http://localhost:11000/oozie/
 
export OOZIE_HOME=/home/hadoop/oozie-3.3.2
 
 
 
PATH 中添加:$OOZIE_HOME/bin
 
5    代理设置
 
如果不进行代理设置的话,提交任务时会遇到类似的报错:
 
hadoop is not allowed to impersonate hadoop
 
翻译过来意思是 hadoop 不允许模仿 hadoop,也就是说 hadoop 没有代替 hadoop 提交任务的权限。
 
出现这个问题的原因在于 OOZIE 本身并不执行任何任务,也不会分发任务至 Tasktracker。OOZIE 和 Hadoop 集群唯一的交互是向 Jobtracker 提交任务,并通过回调 URL 或轮询的方式获取任务执行情况。
 
我们假定 Hadoop 集群安装在 A 账户下,OOZIE 安装在某节点的 B 账户下,该账户属于 C 用户组。那么代理设置表示如下含义:A 账户在该节点拥有代替 C 用户组提交任务的权限。
 
在 core-site.xml 中添加
 
        <!– OOZIE –>
 
        <property>
 
                <name>hadoop.proxyuser.hadoop.hosts</name>
 
                <value>IP</value>
 
        </property>
 
        <property>
 
                <name>hadoop.proxyuser.hadoop.groups</name>
 
                <value>hadoop</value>
 
        </property>
 
在配置项中,hadoop.proxyuser.hadoop.hosts 和 hadoop.proxyuser.hadoop.groups 中的两个 hadoop 是我们上文提到的账户 A,hadoop.proxyuser.hadoop.hosts 对应的 value 需要填写 OOZIE 安装节点的 IP,hadoop.proxyuser.hadoop.groups 对应的 value 需要填写我们上文提到的用户组 C。
 
由于一般 Hadoop 和 OOZIE 都安装在 hadoop 账户下,而 hadoop 账户又属于 hadoop 用户组。所以就出现了这种搞笑的配置,hadoop 代替 hadoop 提交任务。
 
注意由于该配置项是在 core-site.xml,所以修改该配置后,需要重启集群才能生效。
 
6    时区设置
 
时区设置的目的是在配置中使用东八区时间。
 
在 oozie-site.xml 中添加:
 
  <!– timezone configuration –>
 
  <property>
 
        <name>oozie.processing.timezone</name>
 
        <value>GMT+0800</value>
 
    </property>
 
7    端口号设置
 
如需修改端口号,在 $OOZIE_HOME/conf/oozie-env.sh 中修改端口号,防止端口冲突。默认端口号为 11000。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-04/100382p2.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计6691字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7961376
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...
升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新 SSL 证书系统、申请 godaddy 的 APIKEY 公司之前花钱购买的 ssl 证书快...
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...