Installing additional batch processor instances

By default, the InfoSphere® MDM installation application only installs the batch processor on the same machine as the main InfoSphere MDM instance. You must manually install additional batch processor instances.

About this task

If you wish to run the batch processor on machines other than the main InfoSphere MDM installation or if you wish to have multiple batch processor instances, then you must manually install separate instances of the batch processor.

To manually install a batch processor instance:

Procedure

  1. Copy or extract the batch processor to the new installation location:
    • If you have an existing batch processor instance that you wish to duplicate, copy it to a new location.
    • If you wish to set up an entirely new batch processor instance, extract the com.ibm.mdm.batch.framework.zip package from the InfoSphere MDM product offering package, then expand it into the new location.
    The new location will contain subfolders such as bin, properties, and templates. The new location is considered the home folder of the new batch processor instance, and will be referred to as $home for the remainder of this procedure.
  2. Configure the following variables in the $home/bin/runbatch.sh script:
    WAS_HOME
    Set the value of WAS_HOME to point to the home folder of the WebSphere® Application Server instance. For example:
    WAS_HOME=/usr/IBM/WebSphere/AppServer
    Note: The batch processor requires WebSphere Application Server to be installed and running on the same machine.
    BATCH_HOME
    Set the value of BATCH_HOME to point to the home folder of the batch processor instance. For example:
    BATCH_HOME=/usr/IBM/MDM/BatchProcessor1
    DB_TYPE
    Set the value of DB_TYPE to indicate whether the InfoSphere MDM database is installed on DB2® (DB2) or Oracle (ORACLE). For example:
    DB_TYPE=DB2
    DB_HOME
    Set the value of DB_HOME to the installation location of the database client.
    • For a DB2 database, this location should contain a java subfolder that contains the DB2 JDBC drivers. For example:
      DB_HOME=/home/wsadmin/sqllib
    • For an Oracle database, this location should contain a jdbc/lib subfolder that contains the Oracle JDBC divers. For example:
      DB_HOME=/opt/oracle
  3. Configure the following properties in the $home/properties/Batch.properties file:
    ServerConfiguration.provider_url
    Set the value of ServerConfiguration.provider_url to include the InfoSphere MDM operational server host name or IP address, using the syntax corbaloc:iiop:<host_name or IP_address>:<bootstrap_address>. For example:
    ServerConfiguration.provider_url=corbaloc:iiop:fangorn:2809
    home
    Set the value of home to the batch processor home folder. For example:
    home=/usr/IBM/MDM/BatchProcessor1
    instanceName
    Set the value of instanceName to the name of this batch instance.
    Important: The batch instance name must be unique across all batch instances.
    For example:
    instanceName=fangorn.batch1
    mdm.database.uri
    Set the value of mdm.database.uri to the URI used to connect to the MDM database.
    • To set the batch processor to use a specified InfoSphere MDM data source to connect to the MDM database, set this property using the syntax jdbc/<data_source>. For example:
      mdm.database.uri=jndi:jdbc/DWLCustomer
    • To set the batch processor to use a JDBC driver to connect to the MDM database, set this property to a type 4 JDBC database connection URI. For example:
      mdm.database.uri=jdbc:db2://shire:50000/ARUBA;user=db2user;password=db2password
      Important: If you set this property to use a type 4 JDBC database connection URI, you must also set the value of the database.jdbc.driver property accordingly.
    • To encrypt the password value portion of the URI:
      1. Create a temporary properties file containing the password. For example, create a file named C:\temp\mytemp.properties or /tmp/mytemp.properties with the following content:
        password=db2password
      2. Encrypt the password using the WebSphere Application Server command PropFilePasswordEncoder.
        • For Microsoft Windows systems, use the command:
          $NODE_HOME\bin\PropFilePasswordEncoder.bat
          C:\temp\mytemp.properties password
        • For UNIX or Linux systems, use the command:
          $NODE_HOME/bin/PropFilePasswordEncoder.sh
          /tmp/mytemp.properties password
        $NODE_HOME represents the home folder of the WebSphere Application Server node.
      3. Copy the encrypted password from the temporary properties file and use it to replace the clear text password in the URI. An example of a URI with an encrypted password is
        jdbc:db2://shire:50000/ARUBA;user=db2user;password= {xor})z4yMS8wMzY8Jg==
    database.jdbc.driver
    Set the value of database.jdbc.driver to the class name of the JDBC driver.
    Note: This property is only required if you set the mdm.database.uri property to use a type 4 JDBC database connection URI.
    • For DB2 databases, use com.ibm.db2.jcc.DB2Driver.
    • For Oracle databases, use com.ibm.db2.jcc.OracleDriver.
    For example:
    database.jdbc.driver=com.ibm.db2.jcc.DB2Driver
    job.requesterName
    Set the value of job.requesterName to the name of the user account that will be used in the batch task management transactions. For example:
    job.requesterName=user1
    Note: For information about security roles and requirements for user accounts, see Batch processor user accounts.
  4. Configure the following properties in the $home/properties/Log4J.properties file:
    Note: You only need to configure the Log4J.properties file if the LoggerFactory property in the DWLLog.properties file is set to the value com.dwl.base.logging.DWLLog4jLoggerFactory.
    log4j.appender.file.File
    Set the value of log4j.appender.file.File to the location of the batch processor instance’s $home/logs/Batch.log file. For example:
    log4j.appender.file.File=/usr/IBM/MDM/BatchProcessor1/logs/Batch.log
    log4j.appender.bulkProcessingActivity.File
    Set the value of log4j.appender.bulkProcessingActivity.File to the location of the batch processor instance’s $home/logs/Activity.log file. For example:
    log4j.appender.bulkProcessingActivity.File=/usr/IBM/MDM/BatchProcessor1/logs/Activity.log
  5. Configure the following properties in the $home/properties/JDKLog.properties file:
    Note: You only need to configure the JDKLog.properties file if the LoggerFactory property in the DWLLog.properties file is set to the value com.dwl.base.logging.DWLLog4jLoggerFactory.
    java.util.logging.FileHandler.pattern
    Set the value of java.util.logging.FileHandler.pattern to the location of the batch processor instance’s $home/logs/Batch.log file. For example:
    java.util.logging.FileHandler.pattern=/usr/IBM/MDM/BatchProcessor1/logs/Batch.log
    com.ibm.mdm.batchframework.logging.ActivityFileHandler.pattern
    Set the value of com.ibm.mdm.batchframework.logging.ActivityFileHandler.pattern to the location of the batch processor instance’s $home/logs/Activity.log file. For example:
    com.ibm.mdm.batchframework.logging.ActivityFileHandler.pattern=/usr/IBM/MDM/BatchProcessor1/logs/Activity.log
  6. Configure the following properties in the $home/properties/sas.client.props file:
    com.ibm.CORBA.loginUserid
    Set the value of com.ibm.CORBA.loginUserid to the name of the user to be used for WebSphere Application Server and application authentication. For example:
    com.ibm.CORBA.loginUserid=mdm_admin
    Note: For information about security roles and requirements for user accounts, see Batch processor user accounts.
    com.ibm.CORBA.loginPassword
    Set the value of com.ibm.CORBA.loginPassword to the password of the user defined in com.ibm.CORBA.loginUserid. For example:
    com.ibm.CORBA.loginPassword=mdmpassword
    Note: For information about security roles and requirements for user accounts, see Batch processor user accounts.
    Note: To encrypt the com.ibm.CORBA.loginPassword=mdmpassword property, use the WebSphere Application Server command PropFilePasswordEncoder.
    • For Microsoft Windows systems, use the command:
      $NODE_HOME\bin\PropFilePasswordEncoder.bat
      <file path>\sas.client.props com.ibm.CORBA.loginPassword
      
    • For UNIX or Linux systems, use the command:
      $NODE_HOME/bin/PropFilePasswordEncoder.sh
      <file path>/sas.client.props com.ibm.CORBA.loginPassword
    $NODE_HOME represents the home folder of the WebSphere Application Server node.
  7. Configure the following property in the $home/properties/ssl.client.props file:
    user.root
    Set the value of user.root to the location of the batch processor home folder. For example:
    user.root=/usr/IBM/MDM/BatchProcessor1
    Note: For more information on configuring SSL properties, see the IBM® WebSphere Application Server documentation.
  8. Create the folder for the batch processor logs, $home/logs.

Results

The new batch processor instance is now ready to use.

What to do next

You can run the $home/bin/ivt.sh script to verify that batch processor installation was successful. If the verification test fails, see Troubleshooting batch processor issues.