Integration – ITSM – Set up the Data Integration Server

Set up the Data Integration Server

PuzzleLogic Service Advisor uses the Pentaho Data Integration (PDI) software and the PuzzleLogic Agent to integrate to ITSM applications like BMC Remedy and ServiceNow.

  • The Pentaho Data Integration software connects to the ITSM application, extracts data, and transforms the data into JSON file format.
  • The PuzzleLogic Agent, a Java application (JAR file) that ships with Service Advisor, pulls CI and message data from the JSON files and loads the data into the PuzzleLogic Data Repository for further processing. The Agent can be run directly using Java Virtual Machine (JVM).

NOTE: You need to set up the Data Integration Server with the PDI software and PuzzleLogic Agent only if you will be integrating Service Advisor to a BMC Remedy or ServiceNow IT service management (ITSM) application.

IMPORTANT: To complete the following tasks, you must have permissions to create directories, install Java, and edit the Cron Task Scheduler on the Data Integration Server. In addition, you need an Administrator account to import definition files and modify the CMDB (for Remedy) or to import and commit update sets (for ServiceNow).

A. Install the Java JRE or JDK

The Pentaho Data Integration software requires Oracle Java Runtime Environment (JRE) or Java Development Kit (JDK), v1.8, to communicate with the database.

NOTE: You do not need to uninstall other versions of Java that are running on your system.

  1. Open a terminal window and type the following command to check the current version of Java.
    $ java -version
  2. If the version of Java is not 1.8 or higher, download the version appropriate for your system from the Oracle site and install it.
    http://www.oracle.com/technetwork/java/javase/downloads/index.html

B. Set the environment variables

This section describes how to set the PENTAHO_JAVA_HOME and KETTLE_HOME environment variables.

IMPORTANT: To edit the environment file, you must log in as root user. If root access is not available, you must log in to a user account that has access to the .bash_profile file (located in home directory of that account, $HOME/.bash_profile).

1. Set the PENTAHO_JAVA_HOME variable

The PENTAHO_JAVA_HOME variable indicates the path Pentaho will use to the Java JRE or JDK. Pentaho will not start correctly if this variable is not set. Set the variable either as root or non-root user.

Set the PENTAHO_JAVA_HOME variable as root user

  1. Open a terminal window and log in as root user.
  2. Open the /etc/environment file with a text editor such as vi or gedit.
  3. Type the following in the /etc/environment file to indicate where Java is installed on your system:
    export PENTAHO_JAVA_HOME=<location of JRE or JDK 1.8>

    For example, if Java is installed in /usr/lib/jvm/java-8-sun, type the following:

    export PENTAHO_JAVA_HOME=/usr/lib/jvm/java-8-sun
  4. Save and close the file.
  5. Log out and log back in for the changes to take effect.
  6. Verify the variable was properly set.
    1. Open a terminal window.
    2. At the command line, type in the following:
      env | grep PENTAHO_JAVA_HOME

 

Set the PENTAHO_JAVA_HOME variable as non-root user

  1. Open a terminal window and log in with a non-root user account.
  2. Open the $HOME/.bash_profile file with a text editor, such as vi or gedit.
  3. Type the following in the $HOME/.bash_profile file to indicate where Java is installed on your system:
    export PENTAHO_JAVA_HOME=<location of JRE or JDK 1.8>

    For example, if Java is installed in /usr/lib/jvm/java-8-sun, type the following:

    export PENTAHO_JAVA_HOME=/usr/lib/jvm/java-8-sun
  4. Save and close the file.
  5. Log out and log back in for the changes to take effect.
  6. Verify the variable was properly set.
    1. Open a terminal window.
    2. At the command line, type in the following:
      env | grep PENTAHO_JAVA_HOME

2. Set the KETTLE_HOME variable

Set the environment variable KETTLE_HOME either as root or non-root user.

Set the KETTLE_HOME variable as root user

  1. Open a terminal window and log in as root.
  2. Open the /etc/environment file with a text editor.
  3. Enter the following line into the /etc/environment file:
    export KETTLE_HOME=/opt/Pentaho/Common

    NOTE: /opt/Pentaho is the default installation directory for the Pentaho software. If you plan to install Pentaho in another location, replace /opt/Pentaho with that location.

  4. Save and close the file.
  5. Log out and log back in for the changes to take effect.
  6. Verify the variable was properly set.
    1. Open a terminal window.
    2. At the command line, type in the following:
      env | grep KETTLE_HOME

Set the KETTLE_HOME variable as non-root user

  1. Open a terminal window and log in with a non-root user account.
  2. Use a text editor to open the $HOME/.bash_profile file for the user.
  3. Type the following line in the $HOME/.bash_profile file:
    export KETTLE_HOME=<Pentaho Install Directory>/Common
  4. Save and close the file.
  5. Log out and log back in for the changes to take effect.
  6. Verify the variable was properly set.
    1. Open a terminal window.
    2. At the command line, type in the following:
      env | grep KETTLE_HOME

C. Install and configure the Pentaho Data Integration software

The Pentaho Data Integration for PuzzleLogic distribution file contains the following components:

  • Pentaho Data Integration Community Edition software (TAR file)
  • PuzzleLogic data integration software (TAR file)
  • BMC ITSM definition file (for integration with BMC Remedy)
  • ServiceNow update set (for integration with ServiceNow)

NOTE: To ensure proper communication between the Pentaho Data Integration software and the PuzzleLogic Agent, PuzzleLogic recommends that you install Pentaho and the Agent under the same user account with the appropriate read-write permissions.

  1. Create the directory where the Pentaho Data Integration software will be installed. This directory will be referred to as the Pentaho Install Directory.
    $ mkdir <Pentaho Install Directory>

    In Linux the typical location is /opt/Pentaho; for example:

    $ mkdir /opt/Pentaho
  2. Download the Pentaho Data Integration for PuzzleLogic distribution file plviewer-pdi-integration-XXXXXX.tar.gz and place it into the Pentaho Install Directory.
    $ wget --user <username> --password <password> <plviewer-download-URL>/plviewer-pdi-integration-XXXXXX.tar.gz

    NOTE: Replace <username>, <password>, and <plviewer-download-URL> with the values provided by PuzzleLogic. Replace XXXXXX with the version number of the PuzzleLogic software (for example, for PuzzleLogic, v1.7, enter plviewer-pdi-integration-1.7.0.tar.gz)

  3. Extract the contents of the distribution file.
    $ tar –zxvf plviewer-pdi-integration-XXXXXX.tar.gz

    You will see the following files after extraction:

    • pdi-ce-6.1.0.1-196.tar.gz (Pentaho Data Integration software, Community Edition)
    • plviewer-pdi-files-XXXXXX.tar.gz (PuzzleLogic data integration software)
    • plviewer-bmcitsm-XXXXXX.def (BMC ITSM definitions file)
    • plviewer-snow-updateset-XXXXXX.xml (ServiceNow update set file)
  4. Extract the contents of the file pdi-ce-6.1.0.1-196.tar.gz to the Pentaho Install Directory.
    $ tar -zxvf pdi-ce-6.1.0.1-196.tar.gz

    The subdirectory <Pentaho Install Directory>/data-integration is created.

  5. Extract the contents of plviewer-pdi-files-XXXXXX.tar.gz to the Pentaho Install Directory.
    $ tar –zxvf plviewer-pdi-files-XXXXXX.tar.gz

    The following subdirectories are created:

    • <Pentaho Install Directory>/Common
    • <Pentaho Install Directory>/Logs
    • <Pentaho Install Directory>/Output
    • <Pentaho Install Directory>/Repository
    • <Pentaho Install Directory>/Scripts
  6. Open a text editor and modify the following lines in the kettle.properties file (located in <Pentaho Install Directory>/Common/.kettle/) to set the proper directory paths.
    NOTE: The following examples assume Pentaho was installed in /opt/Pentaho. If you installed Pentaho in another directory, modify the directory paths accordingly.

    • CONFIG_DIR = /opt/Pentaho/Repository/PLViewer/Conf/
    • KTL_DIR = /opt/Pentaho/Repository/PLViewer/
    • OUTPUT_DIR = /opt/Pentaho/Output/
    • LOG_DIR = /opt/Pentaho/Logs/

    IMPORTANT: Make sure to include a forward slash at the end of the directory paths.

  7. (Complete only if Oracle database is used) Place the Oracle JDBC driver file (ojdbc6.jar or ojdbc7.jar) in the following directory:
    <Pentaho Install Directory>/data-integration/lib/
  8. Edit the script file run_job.sh (located in <Pentaho Install Directory>/Scripts/) to set the following variables to the proper directory paths:
    • INSTALL_DIR=<Pentaho Install Directory>
      Example: INSTALL_DIR=/opt/Pentaho
    • PENTAHO_JAVA_HOME=<location of JRE or JDK 1.8>
      Use the same <location of JRE or JDK 1.8> value that was specified for the PENTAHO_JAVA_HOME environment variable.
      Example: PENTAHO_JAVA_HOME=/usr/lib/jvm/java-8-sun

NEXT:
Integrate to BMC Remedy
Integrate to ServiceNow