- 浏览: 346141 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
tpxcer:
不开启时可以的,而且开启以后各种坑。。。。
hue beeswax权限管理 -
yangze:
博主请教一个问题,hue 控制hive表的权限怎么弄? 怎么联 ...
cloudera新增用户权限配置 -
linux91:
楼主你好,我用CM配置LDAP用户组映射,进入impala时, ...
sentry配置 -
linux91:
版主:按你的步骤配置了,可是,执行 impala-shell ...
impala集成LDAP -
lookqlp:
super_a 写道你好!找不到表这个问题是如何解决的,可以描 ...
hcatalog读取hive数据并写入hive
废话不多说,直接步骤
安装
准备:
oozie-3.3.2,oozie-4.0.0在执行oozie-setup.sh时失败,所以选取3.3.2版本
mysql
hadoop-1.0.3
apache-6
mavn3(必须是3或者以上版本)
ext-2.2.zip拷贝至oozie-3.3.2目录下
创建 oozie 组和用户
/usr/sbin/groupadd oozie
/usr/sbin/useradd oozie -g oozie
环境变量:
export JAVA_HOME=/usr/local/jrockit-jdk1.6.0_29
export JRE_HOME=$JAVA_HOME/jre
export HADOOP_HOME=/usr/local/hadoop-1.0.3
export HIVE_HOME=/usr/local/hive-0.9.0
export CATALINA_HOME=/home/qiulp/apache-tomcat-6.0.37
export OOZIE_HOME=/home/qiulp/oozie-3.3.2
export M2_HOME=/home/qiulp/apache-maven-3.1.0
export MAVEN_HOME=/home/qiulp/apache-maven-3.1.0
及相应的path
编译:
bin/mkdistro.sh -DskipTests
跳过测试,不跳过时build failed
编译好的目录:
oozie-3.3.2_bak/distro/target
拷贝出oozie-3.3.2-distro.tar.gz,原oozie-3.3.2就可以删除掉了,解压oozie-3.3.2-distro.tar.gz
修改bin/addtowar.sh
elif [ "${version}" = "0.20.200" ]; then
成
elif [ "${version}" = "1.0.3" ]; then
创建libext目录
将mysql-connector-java-5.0.3-bin.jar分别放路lib、libext和CATALINA_HOME/lib下
执行:./oozie-setup.sh -hadoop 1.0.3 ${HADOOP_HOME} -extjs ../ext-2.2.zip
INFO: Adding extension: /home/hadoop/oozie-3.3.2/libext/mysql-connector-java-5.0.3-bin.jar
Injecting following Hadoop JARs
/home/hadoop/hadoop-1.0.3/hadoop-core-1.0.3.jar
/home/hadoop/hadoop-1.0.3/lib/jackson-core-asl-1.8.8.jar
/home/hadoop/hadoop-1.0.3/lib/jackson-mapper-asl-1.8.8.jar
/home/hadoop/hadoop-1.0.3/lib/commons-configuration-1.6.jar
New Oozie WAR file with added 'Hadoop JARs, ExtJS library, JARs' at /home/hadoop/oozie-3.3.2/oozie-server/webapps/oozie.war
INFO: Oozie is ready to be started
mysql库创建(摘抄):
mysql> create database oozie;
mysql> create user 'oozie' identifiedby 'oozie';
//下面这条命令十分重要,‘%’代表可以从任意host访问,即使oozie用户具有远程访问权限。
mysql>grant all privileges on oozie.* to 'oozie'@'%' with grant option;
mysql> grant all privileges on oozie.* to 'oozie'@'localhost' with grant option;
//下面这条命令是这是oozie用户,从任意host访问的密码皆是'123456'
mysql> update mysql.user set password=password('123456') where User="oozie" and Host="%";
mysql> update mysql.user set password=password('123456') where User="oozie" and Host="localhost";
mysql> flush privileges;
修改conf/oozie-site.xml
<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://10.200.187.77:3306/oozie</value>
<description>
JDBC URL.
</description>
</property>
<property>
<name>oozie.service.JPAService.jdbc.username</name>
<value>oozie</value>
<description>
DB user name.
</description>
</property>
<property>
<name>oozie.service.JPAService.jdbc.password</name>
<value>123456</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>
执行:
./ooziedb.sh create -sqlfile oozie.sql -run
日志
setting CATALINA_OPTS="$CATALINA_OPTS -Xmx1024m"
Validate DB Connection
DONE
Check DB schema does not exist
DONE
Check OOZIE_SYS table does not exist
DONE
Create SQL schema
DONE
Create OOZIE_SYS table
DONE
Oozie DB has been created for Oozie version '3.3.2'
同时形成了oozie.sql执行过得语句,此时mysql已经创建好了所需的基础表。
最后修改hadoop的core-site.xml,增加配置,并重启
<property>
<name>hadoop.proxyuser.[OOZIE_SERVER_USER].hosts</name>
<value>[OOZIE_SERVER_HOSTNAME]</value>
</property>
<property>
<name>hadoop.proxyuser.[OOZIE_SERVER_USER].groups</name>
<value>[USER_GROUPS_THAT_ALLOW_IMPERSONATION]</value>
</property>
这个配置很是麻烦,这里解释一下:
OOZIE_SERVER_USER是oozie server的user
OOZIE_SERVER_HOSTNAME是oozie server的hostname
USER_GROUPS_THAT_ALLOW_IMPERSONATION是client端提交任务的usergroup
我安装的hadoop oozie都在同一台机器上,user非别是hadoop和oozie,client在hadoop用户组里,所以USER_GROUPS_THAT_ALLOW_IMPERSONATION是hadoop。
如下:
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>master</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>hadoop</value>
</property>
</configuration>
这里我测试了多种情况,hadoop、oozieserver、oozieclient在不同的机器上机会报:
Error: E0902 : E0902: Exception occured: [User: XXX is not allowed to impersonate XXX]
我的理解:如上的hadoop core配置中,OOZIE_SERVER_USER是oozie server的user,因为配置在hadoop master机器上所以此用户必须是同一台机器的相同或者不同user上。
同样USER_GROUPS_THAT_ALLOW_IMPERSONATION必须是同一台机器的相同或者不同usergroup里。
不知道是否正确,但试下来同一台机器是可以的,机器不同就example跑不起来。
运行
./oozied.sh run
打开url
http://localhost:11000/oozie/
oozie client部署和测试:
解压后的oozie-3.3.2内部含有oozie-client-3.3.2.tar.gz,oozie-examples.tar.gz
分别解压。
上传测试数据至hdfs,hadoop fs -put hadoop fs -put examples examples
(至hdfs当前用户下,即.../usr/user/example,注意测试client的用户需要与数据上传的用户相同,或者上传时指定数据的绝对路径,不然测试job获取不到数据)
examples/apps/map-reduce/job.properties修改hadoop的相关内容
提示:examples/apps下有各种测试样例,一个目录一个样例,如hive sqoop pig
运行测试样例:
oozie-client-3.3.2/bin/oozie job -oozie http://10.200.187.77:11000/oozie -config examples/apps/map-reduce/job.properties -run
安装
准备:
oozie-3.3.2,oozie-4.0.0在执行oozie-setup.sh时失败,所以选取3.3.2版本
mysql
hadoop-1.0.3
apache-6
mavn3(必须是3或者以上版本)
ext-2.2.zip拷贝至oozie-3.3.2目录下
创建 oozie 组和用户
/usr/sbin/groupadd oozie
/usr/sbin/useradd oozie -g oozie
环境变量:
export JAVA_HOME=/usr/local/jrockit-jdk1.6.0_29
export JRE_HOME=$JAVA_HOME/jre
export HADOOP_HOME=/usr/local/hadoop-1.0.3
export HIVE_HOME=/usr/local/hive-0.9.0
export CATALINA_HOME=/home/qiulp/apache-tomcat-6.0.37
export OOZIE_HOME=/home/qiulp/oozie-3.3.2
export M2_HOME=/home/qiulp/apache-maven-3.1.0
export MAVEN_HOME=/home/qiulp/apache-maven-3.1.0
及相应的path
编译:
bin/mkdistro.sh -DskipTests
跳过测试,不跳过时build failed
编译好的目录:
oozie-3.3.2_bak/distro/target
拷贝出oozie-3.3.2-distro.tar.gz,原oozie-3.3.2就可以删除掉了,解压oozie-3.3.2-distro.tar.gz
修改bin/addtowar.sh
elif [ "${version}" = "0.20.200" ]; then
成
elif [ "${version}" = "1.0.3" ]; then
创建libext目录
将mysql-connector-java-5.0.3-bin.jar分别放路lib、libext和CATALINA_HOME/lib下
执行:./oozie-setup.sh -hadoop 1.0.3 ${HADOOP_HOME} -extjs ../ext-2.2.zip
INFO: Adding extension: /home/hadoop/oozie-3.3.2/libext/mysql-connector-java-5.0.3-bin.jar
Injecting following Hadoop JARs
/home/hadoop/hadoop-1.0.3/hadoop-core-1.0.3.jar
/home/hadoop/hadoop-1.0.3/lib/jackson-core-asl-1.8.8.jar
/home/hadoop/hadoop-1.0.3/lib/jackson-mapper-asl-1.8.8.jar
/home/hadoop/hadoop-1.0.3/lib/commons-configuration-1.6.jar
New Oozie WAR file with added 'Hadoop JARs, ExtJS library, JARs' at /home/hadoop/oozie-3.3.2/oozie-server/webapps/oozie.war
INFO: Oozie is ready to be started
mysql库创建(摘抄):
mysql> create database oozie;
mysql> create user 'oozie' identifiedby 'oozie';
//下面这条命令十分重要,‘%’代表可以从任意host访问,即使oozie用户具有远程访问权限。
mysql>grant all privileges on oozie.* to 'oozie'@'%' with grant option;
mysql> grant all privileges on oozie.* to 'oozie'@'localhost' with grant option;
//下面这条命令是这是oozie用户,从任意host访问的密码皆是'123456'
mysql> update mysql.user set password=password('123456') where User="oozie" and Host="%";
mysql> update mysql.user set password=password('123456') where User="oozie" and Host="localhost";
mysql> flush privileges;
修改conf/oozie-site.xml
<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://10.200.187.77:3306/oozie</value>
<description>
JDBC URL.
</description>
</property>
<property>
<name>oozie.service.JPAService.jdbc.username</name>
<value>oozie</value>
<description>
DB user name.
</description>
</property>
<property>
<name>oozie.service.JPAService.jdbc.password</name>
<value>123456</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>
执行:
./ooziedb.sh create -sqlfile oozie.sql -run
日志
setting CATALINA_OPTS="$CATALINA_OPTS -Xmx1024m"
Validate DB Connection
DONE
Check DB schema does not exist
DONE
Check OOZIE_SYS table does not exist
DONE
Create SQL schema
DONE
Create OOZIE_SYS table
DONE
Oozie DB has been created for Oozie version '3.3.2'
同时形成了oozie.sql执行过得语句,此时mysql已经创建好了所需的基础表。
最后修改hadoop的core-site.xml,增加配置,并重启
<property>
<name>hadoop.proxyuser.[OOZIE_SERVER_USER].hosts</name>
<value>[OOZIE_SERVER_HOSTNAME]</value>
</property>
<property>
<name>hadoop.proxyuser.[OOZIE_SERVER_USER].groups</name>
<value>[USER_GROUPS_THAT_ALLOW_IMPERSONATION]</value>
</property>
这个配置很是麻烦,这里解释一下:
OOZIE_SERVER_USER是oozie server的user
OOZIE_SERVER_HOSTNAME是oozie server的hostname
USER_GROUPS_THAT_ALLOW_IMPERSONATION是client端提交任务的usergroup
我安装的hadoop oozie都在同一台机器上,user非别是hadoop和oozie,client在hadoop用户组里,所以USER_GROUPS_THAT_ALLOW_IMPERSONATION是hadoop。
如下:
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>master</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>hadoop</value>
</property>
</configuration>
这里我测试了多种情况,hadoop、oozieserver、oozieclient在不同的机器上机会报:
Error: E0902 : E0902: Exception occured: [User: XXX is not allowed to impersonate XXX]
我的理解:如上的hadoop core配置中,OOZIE_SERVER_USER是oozie server的user,因为配置在hadoop master机器上所以此用户必须是同一台机器的相同或者不同user上。
同样USER_GROUPS_THAT_ALLOW_IMPERSONATION必须是同一台机器的相同或者不同usergroup里。
不知道是否正确,但试下来同一台机器是可以的,机器不同就example跑不起来。
运行
./oozied.sh run
打开url
http://localhost:11000/oozie/
oozie client部署和测试:
解压后的oozie-3.3.2内部含有oozie-client-3.3.2.tar.gz,oozie-examples.tar.gz
分别解压。
上传测试数据至hdfs,hadoop fs -put hadoop fs -put examples examples
(至hdfs当前用户下,即.../usr/user/example,注意测试client的用户需要与数据上传的用户相同,或者上传时指定数据的绝对路径,不然测试job获取不到数据)
examples/apps/map-reduce/job.properties修改hadoop的相关内容
提示:examples/apps下有各种测试样例,一个目录一个样例,如hive sqoop pig
运行测试样例:
oozie-client-3.3.2/bin/oozie job -oozie http://10.200.187.77:11000/oozie -config examples/apps/map-reduce/job.properties -run
发表评论
-
hive相关元数据迁移(mysql)
2015-11-18 18:27 2570mysqldump -hhost -uroot -ppassw ... -
hive dynamic partitions insert java.lang.OutOfMemoryError: Java heap space
2015-10-26 18:03 3096动态分区问题,如果数据量大或者当动态分区大甚至只有十几个时 ... -
hive集成LDAP
2015-02-13 10:09 9748cloudera manager hive- sevice ... -
sentry配置
2015-02-13 10:06 2345当前cdh版本为5.2.0,且通过cloudera mange ... -
hue beeswax权限管理
2014-08-05 17:54 10643http://www.cloudera.com/content ... -
cloudera client集群部署
2014-08-05 17:48 678一般我们使用使用client机器访问集群,而不会直接在hado ... -
cloudera manager kerberos配置
2014-08-05 17:37 1553CDH5.1.0前的版本,可以通过cloudera manag ... -
CDH5安装
2014-08-05 17:05 2308CDH安装有很多方式: ta ... -
hadoop集群数据迁移
2014-08-04 22:31 6568hadoop distcp hdfs://namenode1/ ... -
java.lang.OutOfMemoryError: unable to create new native thread
2014-05-23 17:29 170235227 2014-05-21 13:53:18,504 I ... -
hadoop-2.2.0编译import eclipse
2013-10-22 17:50 7796编译hadoop-2.2.0 下载hadoop-2.2.0-s ... -
hadoop-2.2.0单点安装
2013-10-22 15:48 3495解压hadoop-2.2.0.tar.gz 目录说明: drw ... -
mapreduce java.lang.ClassNotFoundException:
2013-03-07 15:06 3019好久没写mr了,今天写了个在eclipse上运行很顺畅,但是使 ... -
ganglia监控hadoop各指标说明
2012-11-20 14:04 1627做个mark! 监控指标大致如下: default.shu ... -
关于mapreduce解析xml的方法
2012-03-29 11:52 1740mapreduce的TextInputFormat很方便的处理 ... -
如何在mapreduce方法中获取当前使用文件(get file name)
2012-03-29 11:42 1880使用的0.20.2版本hadoop 查了许久,如何在map方法 ... -
如何提示mapreduce,查看systemout信息
2012-01-14 14:47 1273又折腾了大半天,只解决了一半的问题吧。 已经解决部分: 可以通 ... -
wordcount
2012-01-11 17:40 886window eclipse开发环境下 运行wordcout ... -
hbase Waiting on regionserver(s) to checkin
2012-01-11 12:16 2582hbase启动不来,一直checkin。 查看日志含有: or ... -
hadoop format后启动不了
2012-01-11 12:13 939format后启动不了,可能是个个节点包括name节点的had ...
相关推荐
**Oozie安装部署** Oozie是Apache Hadoop生态系统中的一个工作流调度系统,用于管理Hadoop作业的生命周期。以下是对Oozie安装和部署的详细步骤: 1. **Maven安装** - 下载Maven的tar包,如maven-3.3.2,并解压至/...
### Oozie安装详细步骤与配置解析 #### 一、Oozie简介 Oozie 是一个用于在 Hadoop 集群上管理和协调工作流(Workflows)和协调服务(Coordinator Jobs)的工作流调度系统。它支持多种类型的数据处理任务,如 ...
以下是对Oozie安装配置过程的详细解释: 1. **所需软件与版本**: - Hadoop 2.4.1:作为基础的大数据处理框架,Oozie需要与其兼容。 - JDK 1.7:Java开发环境,Oozie是用Java编写的,需要JDK支持。 - Maven ...
oozie安装时,所需的js文件在ext-2.2中,需要解压到oozie根目录/libext/文件中
`oozie.sql`文件是Oozie安装和配置过程中的关键组件,它包含了创建Oozie元数据存储所需的所有SQL脚本。这个文件通常包含创建Oozie在运行时依赖的各种表和视图的命令,比如`VALIDATE_CONN`表,该表可能用于验证和管理...
2. 将解压后的文件复制到Oozie服务器的Web应用程序目录,例如`<oozie安装目录>/webapps/oozie/WEB-INF/lib`或`<oozie安装目录>/libext`,具体位置依赖于Oozie版本和配置。 3. 如果Oozie服务正在运行,需要重启服务以...
#### 四、Oozie安装与配置 **1. 安装过程** - 下载Oozie发行版,解压缩后将必要的文件复制到Hadoop集群中。 - 配置Oozie Server的环境变量,设置数据库连接信息。 - 启动Oozie Server。 **2. 配置文件** - `oozie-...
描述提到"oozie安装时",意味着在部署Apache Oozie,一个用于管理Hadoop工作流的开源协调服务,这个"ext-2.2.zip"是必需的。Oozie的核心功能是调度和管理基于Hadoop的任务,如Hadoop MapReduce、Pig、Hive、Sqoop等...
第1章 数据转换工具Sqoop 1.02_02_01_01 大数据Hadoop 2.x协作.框架的功能 网页.mp4 1.02_02_01_02 Sqoop 功能概述和版本、架构讲解 网页.mp4 1.02_02_01_03 Sqoop 使用...3.02_02_03_05 Oozie安装部署讲解一 网页.mp4
文章目录一、安装Hadoop CDH环境1.上传安装包2.解压3.修改配置文件3.1hadoop-env.sh3.2mapred-env.sh3.3yarn-env.sh3.4core-site.xml3.5hdfs-site.xml3.6mapred-site.xml3.7yarn-site.xml3.8slaves...本人在安装oozie的
描述中提到,“oozie安装时,所需要的js文件在ext-2.2.zip中,需要解压到oozie根目录/libext/文件中”。这表明ext-2.2.zip包含了Oozie运行所必需的JavaScript库,这些库可能是Ext JS框架的一部分。Ext JS是一个用于...
包括安装,配置,使用,shell action ,hive action,MapReduce action,sqoop action。
**Oozie简介** Oozie是Apache Hadoop生态系统中的一个...在安装过程中,注意Oozie对ExtJS的依赖,特别是对于较早的版本,需要确保正确安装和配置这个JavaScript库。通过遵循上述步骤,你应该能够成功安装并运行Oozie。
解压"oozie-5.2.1"后,开发者需要按照特定步骤编译和安装Oozie。首先,需要配置环境,包括设置Java环境变量,安装Maven构建工具,以及确保所有依赖库的可用性。然后,使用Maven的`mvn install`命令编译源码,最后将...
在CDH(Cloudera Distribution Including Apache Hadoop)环境下安装Oozie后,可能会遇到无法查看或使用控制台的问题。这通常是由于Oozie的Web界面依赖于一些外部(ext)库,而这些库并未包含在默认的安装包中。因此...
标题中的"EXT-2.2.zip Oozie的web界面安装所需要的包"表明这是一个与Oozie相关的压缩文件,主要用于安装Oozie的Web界面。Oozie是Apache Hadoop项目的一部分,它是一个工作流调度系统,用于管理Hadoop作业。在Hadoop...
在实际部署中,我们还需要关注Oozie的安装目录结构、Hadoop的配置以及Oozie与Hadoop集群的集成。同时,安全设置,如Kerberos认证,也是Oozie在生产环境中不可忽视的部分。最后,Oozie的作业定义(通常为XML格式)也...
描述部分提到,这个zip文件是"oozie安装必备的js包",意味着EXT库在Oozie系统中起着关键作用。Oozie是Apache软件基金会的一个项目,它是一个工作流调度系统,用于管理Hadoop作业。在Oozie的上下文中,EXT库可能是...