千家信息网

安装Oozie4.1.0-CDH版本

发表于:2024-12-03 作者:千家信息网编辑
千家信息网最后更新 2024年12月03日,安装oozie经历了好长的时间,先是源码包,但是放弃了。。。然后就是安装的这个CDH版本的,弄了好久,经常报各种错误。最后整理出来这篇。这个安装过程同样适用于oozie4.1.0的其他的CDH版本。先
千家信息网最后更新 2024年12月03日安装Oozie4.1.0-CDH版本

安装oozie经历了好长的时间,先是源码包,但是放弃了。。。

然后就是安装的这个CDH版本的,弄了好久,经常报各种错误。

最后整理出来这篇。


这个安装过程同样适用于oozie4.1.0的其他的CDH版本。


先对文件进行下载:

这里使用的是CDH版本的,免编译,看着编译的过程就够了。下载地址:

http://archive.cloudera.com/cdh6/cdh/5/oozie-4.1.0-cdh6.5.2.tar.gz

文件较大,1.6G

还需要下载ExjJS,这是扩展的JavaScript的UI桌面框架。

必须是2.2版本的,这是官网指定的,已经写死在oozied.sh中。下载地址:

http://download.csdn.net/download/feature_09/10015730



安装环境:

redhat5.5,64位虚拟机

hadoop2.6.0-cdh6.5.2

jdk1.8.0_11


一、解压安装oozie

[hadoop@fa01 ~]$ tar -zxvf oozie-4.1.0-cdh6.5.2.tar.gz

[hadoop@fa01 ~]$ cd oozie-4.1.0-cdh6.5.2


二、配置环境变量

[hadoop@fa01 ~]$ vim .bash_profile

export OOZIE_HOME=/home/hadoop/oozie-4.1.0-cdh6.5.2

[hadoop@fa01 ~]$ source .bash_profile


三、还需要配置一下hadoop的core-site文件。


我这里因为之前安hive的时候修改过一次这个内容了,所以没做修改。

如果修改的话,需要重新启动一下hadoop集群。

[hadoop@fa01 hadoop]$ vim core-site.xml

hadoop.proxyuser.hadoop.hosts

*

hadoop.proxyuser.hadoop.groups

*



四、创建libext目录

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ mkdir libext


五、解压包中的hadooplibs的tar包,并把hadooplibs目录下的内容拷贝到刚刚创建的目录下

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ tar -zxvf oozie-hadooplibs-4.1.0-cdh6.5.2.tar.gz

解压后多了一个oozie-4.1.0-cdh6.5.2,这个名字与oozie本身名称是一样的,容易混乱~~~

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ cd oozie-4.1.0-cdh6.5.2/hadooplibs/

[hadoop@fa01 hadooplibs]$ cp hadooplib-2.6.0-cdh6.5.2.oozie-4.1.0-cdh6.5.2/* /home/hadoop/oozie-4.1.0-cdh6.5.2/libext/

[hadoop@fa01 hadooplibs]$ cp hadooplib-2.6.0-mr1-cdh6.5.2.oozie-4.1.0-cdh6.5.2/* /home/hadoop/oozie-4.1.0-cdh6.5.2/libext/

官网说了,如果用的是不同的hadoop版本,则需要拷贝hadoop的jar文件到libext/下


六、将之前下载好的ext2.2.zip同样解压到libext/目录下

[hadoop@fa01 ~]$ unzip ExtJS-2.2.zip -d /home/hadoop/oozie-4.1.0-cdh6.5.2/libext

到解压目录看看有没有。

[hadoop@fa01 ~]$ cd oozie-4.1.0-cdh6.5.2/libext/

[hadoop@fa01 libext]$ ls


七、生成war包

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/addtowar.sh -inputwar $OOZIE_HOME/oozie.war -outputwar $OOZIE_HOME/oozie-server/webapps/oozie.war -hadoop 2.6.0 $HADOOP_HOME -extjs /home/hadoop/ExtJS-2.2.zip

显示下面这样就成功了。



八、放置JDBC驱动,三个地方+一个HDFS目录

将mysql的JDBC驱动,放到之前创建的libext/目录下,还有lib/目录下

下载的这个版本的:mysql-connector-java-5.1.43-bin.jar

链接:http://download.csdn.net/download/feature_09/10018454

同时还要修改下权限:

[hadoop@fa01 libext]$ chmod 777 /home/hadoop/oozie-4.1.0-cdh6.5.2/lib/mysql-connector-java-5.1.43-bin.jar

[hadoop@fa01 libext]$ chmod 777 /home/hadoop/oozie-4.1.0-cdh6.5.2/libext/mysql-connector-java-5.1.43-bin.jar

最后!还得配置一个地方!

就是这个目录下/home/hadoop/oozie-4.1.0-cdh6.5.2/oozie-server/webapps/oozie/WEB-INF/lib

这个目录暂时是没有的,在开启实例后,再添加。(第十三步)

[hadoop@fa01 lib]$ cd /home/hadoop/oozie-4.1.0-cdh6.5.2/lib

[hadoop@fa01 lib]$ cp mysql-connector-java-5.1.43-bin.jar /home/hadoop/oozie-4.1.0-cdh6.5.2/oozie-server/webapps/oozie/WEB-INF/lib

[hadoop@fa01 lib]$ ls |grep mysql

mysql-connector-java-5.1.43-bin.jar


关于mysql驱动的jar包,其实,oozie在hdfs上生成share/lib目录后,还要在hdfs的share/lib/lib_timestamp/sqoop下(在第十步hdfs生成的sharelib路径),放置一份mysql的驱动。

放置成功后,还有更新一下sharelib

[hadoop@fa01 lib]$ oozie admin -oozie http://fa01:11000/oozie -sharelibupdate


九、配置conf/oozie-site.xml文件

主要是配置数据库保存源文件。

[hadoop@fa01 conf]$ vim oozie-site.xml

在文件底部添加下面这些内容:


oozie.db.schema.name

oozie

Oozie DataBase Name

oozie.service.JPAService.create.db.schema

false

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.

oozie.service.JPAService.jdbc.driver

com.mysql.jdbc.Driver

JDBC driver class.

oozie.service.JPAService.jdbc.url

jdbc:mysql://192.168.20.32:3306/oozie?createDatabaseIfNotExist=true

JDBC URL.

oozie.service.JPAService.jdbc.username

oozie

DB user name.

oozie.service.JPAService.jdbc.password

mysql

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.

oozie.service.HadoopAccessorService.hadoop.configurations

*=/home/hadoop/hadoop-2.6.0-cdh6.5.2/etc/hadoop

Comma separated AUTHORITY=HADOOP_CONF_DIR, where AUTHORITY is the HOST:PORT of

the Hadoop service (JobTracker, HDFS). The wildcard '*' configuration is

used when there is no exact match for an authority. The HADOOP_CONF_DIR contains

the relevant Hadoop *-site.xml files. If the path is relative is looked within

the Oozie configuration directory; though the path can be absolute (i.e. to point

to Hadoop client conf/ directories in the local filesystem.


同时,要在MySQL中,创建好用户名和密码。

mysql> create user 'oozie' identified by 'mysql';

mysql> grant all privileges on *.* to 'oozie'@'%' with grant option;

由于版本5不识别%,所以需要重新声明一下主机的地址

mysql> grant all privileges on *.* to oozie@fa01 identified by 'mysql';

mysql> flush privileges;


十、在hdfs上创建包

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ pwd

/home/hadoop/oozie-4.1.0-cdh6.5.2

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/oozie-setup.sh sharelib create -fs hdfs://192.168.20.32:9000 -locallib oozie-sharelib-4.1.0-cdh6.5.2-yarn.tar.gz


十一、给oozie-server赋予权限

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ chmod 777 oozie-server -R

[hadoop@fa01 libext]$ chmod 777 ext-2.2 -R



十二、创建数据库脚本,并初始化数据库

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/ooziedb.sh create -sqlfile oozie.sql -run DB Connection

之后的显示:



十三、开启oozie的实例

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/oozied.sh start


十四、运行oozie

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/oozied.sh run &


十五、测试、查看

jps一下,出现Bootstrap就对了三分之一


继续:出现NORMAL就对了三分之二。

[hadoop@fa01 oozie-4.1.0-cdh6.5.2]$ bin/oozie admin -oozie http://192.168.20.32:11000/oozie -status

System mode: NORMAL


再继续:

登录页面http://192.168.20.32:11000/oozie/,可以正常显示如下页面,就百分之百了。


参考:

http://www.cnblogs.com/zlslch/p/6118431.html

0