3. Set Up the Oozie Configuration Files

Complete the following instructions to set up Oozie configuration files:

  1. Extract the Oozie configuration files.

    From the downloaded scripts.zip file, extract the files from the configuration_files/oozie directory to a temporary directory.

  2. Modify the configuration files.

    In the temporary directory, locate the following file and modify the properties based on your environment. Search for TODO in the files for the properties to replace.

    1. Edit the oozie-site.xml and modify the following properties:

      <property>     
       <name>oozie.base.url</name>     
       <value>http://$oozie.full.hostname:11000/oozie</value>
       <description>Enter your Oozie server hostname.</description>
      </property>
      <property>     
       <name>oozie.service.JPAService.jdbc.url</name>     
       <value>jdbc:derby:$OOZIE_DATA_DIR/$soozie.db.schema.name-db;create=true</value>
       <description>JDBC URL
                      For Derby database: jdbc:derby:$OOZIE_DATA_DIR/$soozie.db.schema.name-db;create=true
                      For MySQL database: jdbc:mysql://$dbhost:3306/$dbname
                      For Oracle database: jdbc:oracle:thin:@$dbhost:1521/$oozie_dbname 
                      For PostgreSQL database: jdbc:postgresql://$dbhost:5432/$oozie_dbname
      
       </description>
      </property>

      where $soozie.db.schema.name-db is set to oozie.

      <property>     
        <name>oozie.service.JPAService.jdbc.driver</name>
           <value>org.apache.derby.jdbc.EmbeddedDriver</value>
           <description>
           JDBC driver class.
                       For MySQL database: com.mysql.jdbc.Driver
                       For Oracle database: oracle.jdbc.driver.OracleDriver 
                       For PostgreSQL database: org.postgresql.Driver
           </description>
      </property>
      <property>
           <name>oozie.service.JPAService.jdbc.username</name>
           <value>$oozie_user</value>
           <description>
           DB user name.
           </description>
         </property>
      
         <property>
           <name>oozie.service.JPAService.jdbc.password</name>
           <value>$oozie_password</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.
           IMPORTANT: if the JPAServicePasswordService is active, it will reset this value with the value given in
           the console.
          </description>
         </property>
    2. Edit the oozie-env.sh and modify the following properties:

      <property>     
       <name>OOZIE_LOG_DIR</name>     
       <value>/var/log/oozie</value>
       <description>Use value from $OOZIE_LOG_DIR </description>
      </property>
      <property>     
       <name>OOZIE_PID_DIR</name>     
       <value>/var/run/oozie</value>
       <description>Use value from $OOZIE_PID_DIR </description>
      </property>
      <property>     
       <name>OOZIE_DATA_DIR</name>     
       <value>/var/db/oozie</value>
       <description>Use value from $OOZIE_DATA_DIR </description>
      </property>

  3. Copy the Configuration Files

    On your Oozie server create the config directory, copy the config files and set the permissions:

    rm -r $OOZIE_CONF_DIR ;
    mkdir -p $OOZIE_CONF_DIR ;
  4. Copy all the config files to $OOZIE_CONF_DIR directory.

  5. Set appropriate permissions.

    chown -R $OOZIE_USER:$HADOOP_GROUP $OOZIE_CONF_DIR/../ ;
    chmod -R 755 $OOZIE_CONF_DIR/../ ;

where:

  • $OOZIE_CONF_DIR is the directory to store Oozie configuration files. For example, /etc/oozie/conf.

  • $OOZIE_DATA is the directory to store the Oozie data. For example, /var/db/oozie.

  • $OOZIE_LOG_DIR is the directory to store the Oozie logs. For example, /var/log/oozie.

  • $OOZIE_PID_DIR is the directory to store the Oozie process ID. For example, /var/run/oozie.

  • $OOZIE_TMP_DIR is the directory to store the Oozie temporary files. For example, /var/tmp/oozie.

  • $OOZIE_USER is the user owning the Oozie services. For example, oozie.

  • $HADOOP_GROUP is a common group shared by services. For example, hadoop.


loading table of contents...