• Categories
    Category
    {{ postCtrl.tags }}
    • {{ category.tag_type }}

      • {{tag.tag_name}}
      • View more
  • Categories
    Category
    {{ postCtrl.tags }}
    • {{ category.tag_type }}

      • {{tag.tag_name}}
      • View more
  • News
  • Tutorials
  • Forums
  • Tags
  • Users
Tutorial News Comments FAQ Related Articles

How To Install/configure Apache Oozie Workflow Scheduler

{{postValue.id}}

To Install and Configure Apache Oozie Workflow Scheduler for CDH 4.X on RHEL/CentOS

Oozie is a Hadoop' s open source schedular, which simplifies the workflow and define the dependency between the jobs for an input data. Steps to Install and Configure Apache Oozie Workflow Scheduler for CDH 4.X on RHEL/CentOS is discussed in this article.

To Install Apache Oozie on RHEL/CentOS

Download CDH repository from the official site or alternatively run the following command.

[root@linuxhelp ~]# wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/x86_64/cloudera-cdh-4-0.x86_64.rpm
--2016-06-10 17:43:07--  http://archive.cloudera.com/cdh4/one-click-install/redhat/6/x86_64/cloudera-cdh-4-0.x86_64.rpm
Resolving archive.cloudera.com... 151.101.8.167
Connecting to archive.cloudera.com|151.101.8.167|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9108 (8.9K) [application/x-redhat-package-manager]
Saving to: “ cloudera-cdh-4-0.x86_64.rpm” 

100%[================================================================================> ] 9,108       --.-K/s   in 0.02s   

2016-06-10 17:43:07 (401 KB/s) - “ cloudera-cdh-4-0.x86_64.rpm”  saved [9108/9108]

Once the rpm package is downloaded, install using the following command.

[root@linuxhelp ~]# yum --nogpgcheck localinstall cloudera-cdh-4-0.x86_64.rpm
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Local Package Process
Examining cloudera-cdh-4-0.x86_64.rpm: cloudera-cdh-4-0.x86_64
Marking cloudera-cdh-4-0.x86_64.rpm to be installed
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
Resolving Dependencies
-->  Running transaction check
--->  Package cloudera-cdh.x86_64 0:4-0 will be installed
.
.
.
Installed:
  cloudera-cdh.x86_64 0:4-0                                                                                               

Complete!

Next, install the Oozie

[root@linuxhelp ~]# yum install oozie -y
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
Resolving Dependencies
-->  Running transaction check
--->  Package oozie.noarch 0:3.3.2+108-1.cdh4.7.1.p0.7.el6 will be installed
-->  Processing Dependency: oozie-client = 3.3.2+108 for package: oozie-3.3.2+108-1.cdh4.7.1.p0.7.el6.noarch
.
.
.
Installed:
  oozie.noarch 0:3.3.2+108-1.cdh4.7.1.p0.7.el6                                                                            

Dependency Installed:
  bigtop-jsvc.x86_64 0:1.0.10-1.cdh4.7.1.p0.13.el6                                                                        
  bigtop-tomcat.noarch 0:6.0.37-1.cdh4.7.1.p0.14.el6                                                                      
  bigtop-utils.noarch 0:0.6.0+248-1.cdh4.7.1.p0.13.el6                                                                    
  hadoop.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                                         
  hadoop-0.20-mapreduce.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                          
  hadoop-client.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                                  
  hadoop-hdfs.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                                    
  hadoop-mapreduce.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                               
  hadoop-yarn.x86_64 0:2.0.0+1612-1.cdh4.7.1.p0.12.el6                                                                    
  nc.x86_64 0:1.84-24.el6                                                                                                 
  oozie-client.noarch 0:3.3.2+108-1.cdh4.7.1.p0.7.el6                                                                     
  parquet.noarch 0:1.2.5-1.cdh4.7.1.p0.9.el6                                                                              
  parquet-format.noarch 0:1.0.0-1.cdh4.7.1.p0.10.el6                                                                      
  zookeeper.x86_64 0:3.4.5+28-1.cdh4.7.1.p0.13.el6                                                                        

Complete!

To Configure Oozie on RHEL/CentOS

Install MySql database, then create oozie DB and grant privileges as shown below.

[root@linuxhelp ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with   or g.
Your MySQL connection id is 3
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ' help '  or ' h'  for help. Type ' c'  to clear the current input statement.

mysql>  create database oozie 
Query OK, 1 row affected (0.00 sec)

mysql>  grant all privileges on oozie.* to ' oozie' @' localhost'  identified by ' linuxc'  
Query OK, 0 rows affected (0.00 sec)

mysql>  grant all privileges on oozie.* to ' oozie' @' %'  identified by ' linuxc'  
Query OK, 0 rows affected (0.00 sec)

mysql>  exit 
Bye

Run the below commands to download and add the MySQL JDBC connectivity driver JAR to Oozie lib directory.

[root@linuxhelp ~]# cd /tmp
[root@linuxhelp tmp]# wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.31.tar.gz
--2016-06-10 18:06:41--  http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.31.tar.gz
Resolving dev.mysql.com... 137.254.60.11
Connecting to dev.mysql.com|137.254.60.11|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://cdn.mysql.com//archives/mysql-connector-java-5.1/mysql-connector-java-5.1.31.tar.gz [following]
--2016-06-10 18:06:42--  http://cdn.mysql.com//archives/mysql-connector-java-5.1/mysql-connector-java-5.1.31.tar.gz
Resolving cdn.mysql.com... 23.207.128.216
Connecting to cdn.mysql.com|23.207.128.216|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3764875 (3.6M) [application/x-tar-gz]
Saving to: “ mysql-connector-java-5.1.31.tar.gz” 

100%[================================================================================> ] 3,764,875    719K/s   in 5.1s    

2016-06-10 18:06:47 (723 KB/s) - “ mysql-connector-java-5.1.31.tar.gz”  saved [3764875/3764875]

[root@linuxhelp tmp]# tar -zxf mysql-connector-java-5.1.31.tar.gz 
[root@linuxhelp tmp]# cd mysql-connector-java-5.1.31
[root@linuxhelp mysql-connector-java-5.1.31]# cp mysql-connector-java-5.1.31-bin.jar /var/lib/oozie/

Execute the below commands as oozie user to create the oozie database schema.

[root@linuxhelp ~]# sudo -u oozie /usr/lib/oozie/bin/ooziedb.sh create -run
  setting OOZIE_CONFIG=/etc/oozie/conf
  setting OOZIE_DATA=/var/lib/oozie
  setting OOZIE_LOG=/var/log/oozie
.
.
.
  setting CATALINA_OPTS=" $CATALINA_OPTS -Doozie.https.keystore.pass=${OOZIE_HTTPS_KEYSTORE_PASS}" 

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

Now Oozie DB has been successfully created.


Download the ExtJS to enable oozie web console from official website or by using wget command.

[root@linuxhelp ~]# cd /tmp
[root@linuxhelp tmp]# wget http://archive.cloudera.com/gplextras/misc/ext-2.2.zip
--2016-06-10 18:10:35--  http://archive.cloudera.com/gplextras/misc/ext-2.2.zip
Resolving archive.cloudera.com... 151.101.8.167
Connecting to archive.cloudera.com|151.101.8.167|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6800612 (6.5M) [application/zip]
Saving to: “ ext-2.2.zip” 

100%[================================================================================> ] 6,800,612    664K/s   in 9.5s    

2016-06-10 18:10:44 (697 KB/s) - “ ext-2.2.zip”  saved [6800612/6800612] 

[root@linuxhelp tmp]# unzip ext-2.2.zip 
Archive:  ext-2.2.zip
   creating: ext-2.2/
   creating: ext-2.2/adapter/
   creating: ext-2.2/adapter/ext/
  inflating: ext-2.2/adapter/ext/ext-base.js  
   creating: ext-2.2/adapter/jquery/ 
.
.
.
inflating: ext-2.2/air/src/SystemMenu.js  
  inflating: ext-2.2/air/src/SystemTray.js  
  inflating: ext-2.2/adapter/yui/yui-utilities.js 

Move the extracted directory to /var/lib/oozie/.

[root@linuxhelp tmp]# mv ext-2.2 /var/lib/oozie/

Atlast issue the following command to start the oozie server,

[root@linuxhelp tmp]# service oozie status
not running.
[root@linuxhelp tmp]# service oozie start

Setting OOZIE_HOME:          /usr/lib/oozie
Sourcing:                    /usr/lib/oozie/bin/oozie-env.sh
  setting OOZIE_CONFIG=/etc/oozie/conf
  setting OOZIE_DATA=/var/lib/oozie
  setting OOZIE_LOG=/var/log/oozie
  setting OOZIE_CATALINA_HOME=/usr/lib/bigtop-tomcat
  setting CATALINA_TMPDIR=/var/lib/oozie
  setting CATALINA_PID=/var/run/oozie/oozie.pid
  setting CATALINA_BASE=/usr/lib/oozie/oozie-server-0.20
  setting CATALINA_OPTS=-Xmx1024m
  setting OOZIE_HTTPS_PORT=11443
  setting OOZIE_HTTPS_KEYSTORE_PASS=password
  setting CATALINA_OPTS=" $CATALINA_OPTS -Doozie.https.port=${OOZIE_HTTPS_PORT}" 
  setting CATALINA_OPTS=" $CATALINA_OPTS -Doozie.https.keystore.pass=${OOZIE_HTTPS_KEYSTORE_PASS}" 
Using   OOZIE_CONFIG:        /etc/oozie/conf
Sourcing:                    /etc/oozie/conf/oozie-env.sh
  setting OOZIE_CONFIG=/etc/oozie/conf
  setting OOZIE_DATA=/var/lib/oozie
  setting OOZIE_LOG=/var/log/oozie
  setting OOZIE_CATALINA_HOME=/usr/lib/bigtop-tomcat
  setting CATALINA_TMPDIR=/var/lib/oozie
  setting CATALINA_PID=/var/run/oozie/oozie.pid
  setting CATALINA_BASE=/usr/lib/oozie/oozie-server-0.20
  setting CATALINA_OPTS=-Xmx1024m
  setting OOZIE_HTTPS_PORT=11443
  setting OOZIE_HTTPS_KEYSTORE_PASS=password
  setting CATALINA_OPTS=" $CATALINA_OPTS -Doozie.https.port=${OOZIE_HTTPS_PORT}" 
  setting CATALINA_OPTS=" $CATALINA_OPTS -Doozie.https.keystore.pass=${OOZIE_HTTPS_KEYSTORE_PASS}" 
Setting OOZIE_CONFIG_FILE:   oozie-site.xml
Using   OOZIE_DATA:          /var/lib/oozie
Using   OOZIE_LOG:           /var/log/oozie
Setting OOZIE_LOG4J_FILE:    oozie-log4j.properties
Setting OOZIE_LOG4J_RELOAD:  10
Setting OOZIE_HTTP_HOSTNAME: www.linuxhelp1.com
Setting OOZIE_HTTP_PORT:     11000
Setting OOZIE_ADMIN_PORT:     11001
Using   OOZIE_HTTPS_PORT:     11443
Setting OOZIE_BASE_URL:      http://www.linuxhelp1.com:11000/oozie
Using   CATALINA_BASE:       /usr/lib/oozie/oozie-server-0.20
Setting OOZIE_HTTPS_KEYSTORE_FILE:     /var/lib/oozie/.keystore
Using   OOZIE_HTTPS_KEYSTORE_PASS:     password
Setting CATALINA_OUT:        /var/log/oozie/catalina.out
Using   CATALINA_PID:        /var/run/oozie/oozie.pid

Using   CATALINA_OPTS:       -Xmx1024m -Doozie.https.port=11443 -Doozie.https.keystore.pass=password -Dderby.stream.error.file=/var/log/oozie/derby.log
Adding to CATALINA_OPTS:     -Doozie.home.dir=/usr/lib/oozie -Doozie.config.dir=/etc/oozie/conf -Doozie.log.dir=/var/log/oozie -Doozie.data.dir=/var/lib/oozie -Doozie.config.file=oozie-site.xml -Doozie.log4j.file=oozie-log4j.properties -Doozie.log4j.reload=10 -Doozie.http.hostname=www.linuxhelp1.com -Doozie.admin.port=11001 -Doozie.http.port=11000 -Doozie.https.port=11443 -Doozie.base.url=http://www.linuxhelp1.com:11000/oozie -Doozie.https.keystore.file=/var/lib/oozie/.keystore -Doozie.https.keystore.pass=password -Djava.library.path=

Using CATALINA_BASE:   /usr/lib/oozie/oozie-server-0.20
Using CATALINA_HOME:   /usr/lib/bigtop-tomcat
Using CATALINA_TMPDIR: /var/lib/oozie
Using JRE_HOME:        /usr/lib/jvm/jre-openjdk
Using CLASSPATH:       /usr/lib/bigtop-tomcat/bin/bootstrap.jar
Using CATALINA_PID:    /var/run/oozie/oozie.pid
[root@linuxhelp tmp]# service oozie status
running

To check the status of Oozie admin, run the following command.

[root@linuxhelp tmp]# oozie admin -oozie http://localhost:11000/oozie -status
System mode: NORMAL

Open a browser and navigate to http://< ip_address> :11000/oozie

Oozie web console

Tags:
jackson
Author: 

Comments ( 0 )

No comments available

Add a comment
{{postCtrl.cmtErrMsg}}

Frequently asked questions ( 5 )

Q

What is Apache Oozie?

A

Apache Oozie is a workflow scheduler engine to manage and schedule Apache Hadoop jobs. Oozie supports different kinds of Hadoop jobs out of the box such as MapReduce jobs, Streaming jobs, Pig, Hive and Scoop. Oozie also supports system specific jobs such as shell scripts and Java jobs.

Q

What kind of application is Oozie?

A

Oozie is a Java Web-based Application that runs in a Java servlet container.

Q

What are the different states of an Apache Oozie Workflow job?

A

Here I have mentioned some of the different states of an Apache Oozie Workflow job. Such as,
PREP, RUNNING, SUSPENDED , SUCCEEDED, KILLED and FAILED.

Q

What are the different Action nodes supported by Apache Oozie workflow?

A

Apache Oozie supports the following action nodes which trigger the execution of computation and processing tasks.

1. Map-Reduce Action - The map-reduce action node starts a Hadoop Map-Reduce job from an Oozie workflow.

2. Pig Action - The pig action node starts a Pig job from an Oozie workflow.

3. FS (HDFS) Action - The FS action node enables an Oozie workflow to manipulate HDFS files and directories. FS action nodes support the commands - move, delete, mkdir, chmod, touch and chgrp.

4. SSH Action -

5. Sub-workflow Action -

6. Java Action - The java action node executes the public static void main(String[] args) method of the specified main Java class form an Oozie workflow.

Q

How can I get latest version of CDH repository?

A

Please use the following link to check the latest version of CDH repository "https://repository.cloudera.com/artifactory/cloudera-repos/", where you have to select the repository.

Back To Top!
Rank
User
Points

Top Contributers

userNamenaveelansari
135850

Top Contributers

userNameayanbhatti
92510

Top Contributers

userNamehamzaahmed
32150

Top Contributers

1
userNamelinuxhelp
31040

Top Contributers

userNamemuhammadali
24500
Can you help Lucas ?
Various options in Top command

Am using Top command only to view the load average, what are the various options in Top command..??

Networking
  • Routing
  • trunk
  • Netmask
  • Packet Capture
  • domain
  • HTTP Proxy
Server Setup
  • NFS
  • KVM
  • Memory
  • Sendmail
  • WebDAV
  • LXC
Shell Commands
  • Cloud commander
  • Command line archive tools
  • last command
  • Shell
  • terminal
  • Throttle
Desktop Application
  • Linux app
  • Pithos
  • Retrospect
  • Scribe
  • TortoiseHg
  • 4Images
Monitoring Tool
  • Monit
  • Apache Server Monitoring
  • EtherApe 
  • Arpwatch Tool
  • Auditd
  • Barman
Web Application
  • Nutch
  • Amazon VPC
  • FarmWarDeployer
  • Rukovoditel
  • Mirror site
  • Chef
Contact Us | Terms of Use| Privacy Policy| Disclaimer
© 2025 LinuxHelp.com All rights reserved. Linux™ is the registered trademark of Linus Torvalds. This site is not affiliated with linus torvalds in any way.