Execute the following command on the Oozie server and client machines:
For RHEL/CentOS:
yum upgrade oozie
For SLES:
zypper update oozie
On the Oozie host machine, edit the
/etc/oozie/conf/oozie-env.sh
file and add the following parameter:export JAVA_LIBRARY_PATH="/usr/lib/hadoop/lib/native/Linux-amd64-64"
On the Oozie host machine, update the
oozie-site.xml
file.Take back up of the old configuration.
cp /etc/oozie/conf/oozie-site.xml /etc/oozie/conf/oozie-site.xml.old
Add new configuration file.
cp /etc/oozie/conf/oozie-site.xml.rpmnew /etc/oozie/conf/oozie-site.xml
Add the following properties:
<property> <name>oozie.base.url</name> <value>http://<oozie-host-name>:11000/oozie</value> <description>Base Oozie URL.</description> </property> <property> <name>oozie.service.AuthorizationService.security.enabled</name> <value>true</value> <description>Specifies whether security (user name/admin role) is enabled or not. If disabled any user can manage Oozie system and manage any job. </description> </property> <property> <name>oozie.service.HadoopAccessorService.hadoop.configurations</name> <value>*=/etc/hadoop/conf</value> <description>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. </description> </property>
Modify the
oozie.service.ActionService.executor.ext.classes
property to addorg.apache.oozie.action.hadoop.DistcpActionExecutor
to the existing list:<property> <name>oozie.service.ActionService.executor.ext.classes</name> <value>org.apache.oozie.action.email.EmailActionExecutor, org.apache.oozie.action.hadoop.HiveActionExecutor, org.apache.oozie.action.hadoop.ShellActionExecutor, org.apache.oozie.action.hadoop.SqoopActionExecutor, org.apache.oozie.action.hadoop.DistcpActionExecutor</value> </property>
On the Oozie host machine, execute the schema upgrader:
sudo su -l oozie -c "/usr/lib/oozie/bin/ooziedb.sh upgrade -run"
Prepare the
oozie.war
file. On the Oozie host machine, execute the following command:sudo su -l oozie -c "/usr/lib/oozie/bin/oozie-setup.sh -hadoop 0.20.200 /usr/lib/hadoop -extjs /usr/share/HDP-oozie/ext-2.2.zip -jars /usr/lib/hadoop/lib/hadoop-lzo-0.5.0.jar"
Install the Oozie sharelib in Hadoop HDFS. On the Oozie host machine, execute the following command:
cd /usr/lib/oozie tar -xzf oozie-sharelib.tar.gz sudo su -l hdfs -c "hadoop dfs -mkdir /user/oozie" sudo su -l hdfs -c "hadoop dfs -copyFromLocal /usr/lib/oozie/share /user/oozie/." sudo su -l hdfs -c "hadoop dfs -chown oozie:hadoop /user/oozie" sudo su -l hdfs -c "hadoop dfs -chmod -R 755 /user/oozie"
Start Oozie.
sudo su -l oozie -c "cd $OOZIE_LOG_DIR/log; /usr/lib/oozie/bin/oozie-start.sh"
where
$OOZIE_LOG_DIR
is the directory where Oozie log files are stored (for example:/var/log/oozie
).Validate Oozie.
oozie admin -oozie http://$fully.qualified.domain.name_for_Oozie_hostmachine:11000/oozie -status
You should see the following output:
System mode: NORMAL