Oracle by Example brandingUsing Oracle Data Integrator to Test Your Domain

Before You Begin

Purpose

This tutorial will show you how to test your domain using an Oracle Data Integrator agent.

Time to Complete

The tutorial will take about fifteen minutes to complete.

Background

You should be familiar with how to install and configure ODI on premises. You can find most of that information on the web in the ODI home page, documentation, and in Oracle Learning Library (OLL) tutorials such as ODI Getting Started.

Scenario

ODI can run on Windows or Linux, can be managed with a web-based Console or standalone Studio GUI, with or without WebLogic Server (WLS). It can use agents deployed in Standalone, Collocated, and Java Enterprise Edition (JEE) mode. This tutorial will assume Linux for both the client workstation and server, managed by the Weblogic Administration Console, with WLS installed as JCS, and the agents deployed in JEE mode.

The topology of the domain you create can vary, depending upon how many virtual machines and how many Managed Servers you provision as part of your Java Cloud Service subscription.

Note — Only the Enterprise Installation is supported on ODI Cloud Service.

Context

This tutorial assumes a single node JCS deployment.

What Do You Need?

You will need to be familiar with the Oracle Java Cloud Service. If you are not then it is strongly recommended that you run through the Getting Started with Oracle Java Cloud Service tutorial before attempting this one.

Make sure you are familiar with the prerequisites required for Oracle Java Cloud Service on OCI.

The instructions in this tutorial assume that you have performed all of these tasks:

  1. Ensure that you have subscriptions for Oracle Storage, Oracle Cloud Infrastructure (OCI) Database, Oracle Virtual Cloud Network, and Oracle Java Cloud Service environments.

    For more information, see Signing Up for Oracle Cloud Infrastructure.

  2. Create the VM public and private keys.

    The VM public key is used by the new instance's VM for authentication when you connect to it using an SSH client. When you connect, you must provide the private key that matches the public key.

    When creating an OCI Database instance and Java Cloud Service (JCS) instance you need to specify the public key. You generate an SSH public/private key pair using a standard SSH key generation tool. For more information, see Creating SSH Keys for Use with Oracle Cloud Services in the Oracle Learning Library.

  3. Configure an OCI Database instance that meets the Java Cloud Service deployment requirements, including adding a specific policy so that the database appears on the Oracle Java Cloud Service web console as an infrastructure schema database choice.

    For instructions, see:

  4. Note: When creating the OCI Database instance to use with the Oracle Java Cloud Service, make sure you have created a policy to permit Oracle Platform Services to create instances in your VCN. Keep the policy current. The policy should include:

    • Allow service PSM to inspect vcns in compartment
    • Allow service PSM to use subnets in compartment
    • Allow service PSM to use vnics in compartment
    • Allow service PSM to manage security-lists in compartment
    • Allow service PSM to manage all-resources in compartment
    Set up the credentials to provide access to the object storage bucket, so that you can select Automatic Backup as the backup option for the database.

Pre-Installation Steps

While performing all of these tasks, be sure to note the user name and passwords you enter; you will need them later while provisioning or performing administration tasks.

If you are doing this just as a proof-of-concept, it is easier to make all of the passwords the same. In a production environment, you should not use shared passwords.

Locating Your Database Details

You will need the Compartment Name, Database Instance Name, PDB Name, and the Administrator user name and password. You will need to have generated a token to use as a password for back up and recovery.

Creating Agents in the Master Repository Using ODI Studio

If there is no physical agent entry for an agent, then the agent startup will fail when starting the WLS Administration Server.

To create an agent using ODI Studio, see Section 5.3 "Creating an Agent in the Master Repository Using ODI Studio" in Installing and Configuring Oracle Data Integrator.

Note — Running ODI Studio on-premises on your local laptop or desktop is not supported as it may slow down the user interface to the point of being unusable. You should use VNC connected to the JCS instance to run ODI Studio.

  1. Start ODI Studio from the command line by using the following commands:

    cd /u01/app/oracle/middleware/odi/studio
    ./odi.sh
    .

    Studio splash logo
    Description of this image

  2. You will be asked if you would like to import preferences from a previous ODI installation. Click

    Import ODI preferences
    Description of this image

  3. Login to the Repository created by RCU.

    1. Create a Login by clicking on Connect to Repository and then click the green plus.

      Connect to Repo
      Description of this image

    2. Fill in all of the connection information that match the entries you made in the RCU.

      Field Description
      Oracle Data Integrator Connector
      Login Name Choose a suitable login name for the connection.
      User This is the name you picked when creating the tablespaces in the Repository Creation Utility.
      Password The password you created for the SUPERVISOR
      Database Connection (Master Repository)
      User The user name created for the master repository in Repository Creation Utility. You should already have made a note of this value earlier on.
      Password The password for the master repository user.
      Driver List The list contains the JDBC drivers supported by the ODI Studio. Select Oracle JDBC driver.
      Driver Name The name of the JDBC driver will be filled in when you select from the Driver List.
      URL This is the location of the database given as a standard JDBC connection string.

      Repo Connect Info
      Description of this image

    3. Select Work Repository and click Browse (magnifying glass). to display the Work Repository selection window.

      Select Repo workrep
      Description of this image

    4. Select WORKREP and click .

    5. Click . (If the selection worked, then the Test should work…)

    6. If successful, click .

    7. Enter a Wallet password twice. Click .

      New Wallet Password
      Description of this image

    8. All the information should be saved and pre-populated. Just click and the Designer, Operator, and Topology tabs should appear on the left.

      ODI Login
      Description of this image

  4. Create a Physical Agent. On the Topology tab, expand (plus) Physical Architecture, right-click Agents, and select New Agent.

    Update image

    New Physical Agent
    Description of this image

    Fill in the information for for Oracle Data Integrator J2EE agent:

    • Name — This is unique name given for the agent, and it must match the name of the J2EE agent application running on your server

    • Host — The IP address, or host name, of the server that the J2EE agent is running on.

    • Port — The port of the server that the J2EE agent is running on. This is the same value (9073 in our example) as the listen port set in step 12 of Updating the Java Cloud Service Domain section.

    Physical Agent Definition
    Description of this image

    Click Save (diskette)

  5. Create a Logical Agent. On the Topology tab, expand (plus) Logical Architecture, right-click Agents, and select New Agent.

    New Logical Agent
    Description of this image
  6. For simplicity, keep all the names the same: OracleDIAgent. Click Save (diskette). Close the OracleDIAgent tab.

    Logical Agent Definition
    Description of this image

  7. Optionally, you can repeat steps 4, 5 and 6, but for the standalone collocated agent.

    Create a Physical Agent. On the Topology tab, expand (plus) Physical Architecture, right-click Agents, and select New Agent.

    Update image

    New Physical Agent
    Description of this image

    Fill in the information for for Oracle Data Integrator standalone collocated agent:

    • Name — This is unique name given for the agent, and it must match the name of the standalone collocated agent application running on your server

    • Host — The IP address, or host name, of the server that the standalone collocated agent is running on.

    • Port — This is the same value as the server listen port, 20910, set in step 23 of Updating the Java Cloud Service Domain section.

    Physical Agent Definition
    Description of this image

    Click Save (diskette)

  8. Create a Logical Agent. On the Topology tab, expand (plus) Logical Architecture, right-click Agents, and select New Agent.

    New Logical Agent
    Description of this image
  9. For simplicity, keep all the names the same: OracleDIAgent1. Click Save (diskette). Close the OracleDIAgent1 tab.

    Logical Agent Definition
    Description of this image

You now have a physical and logical agents, but WLS (and therefore the agents) is not started yet, so you cannot test it yet.

Starting the Administration Server

The Administration Server normally does not host any user applications, it simply controls the other Managed Servers. Once the Managed Servers are running, the Administration Server only collects statistics and logs.

Weblogic servers in the cloud environment are usually monitored and controlled by the Node Manager, so it is better to use the Node Manager to restart the Administration Server.

  1. From your vncviewer console, open a new terminal window and run the Weblogic Scripting Tool using the following commands:

    cd /u01/app/oracle/middleware/oracle_common/common/bin
    ./wlst.sh

    The command prompt should change to show that you are now in the WLST environment.

  2. Now connect to the Node manager using the nmConnect command.

    nmConnect('weblogic_admin_user', 'admin_password', 'cloud_service_ip', 'port', 'domain','domain_path')

    where

    parameter meaning
    weblogic_admin_user is the administrator user name for your Oracle Cloud Service
    admin_password is the administrator password.
    cloud_service_ip is the ip address of your Oracle Java Cloud service instance
    port is the listener port for the Node Manager. This is usually 5556
    domain is the name of your Weblogic domain. This can be found in the service details page of the Oracle Java Cloud service console.
    domain_path is the fully qualified path where the domain resides on your virtual machine.

    For example:

    nmConnect('weblogic', 'gTY78Hcv', '10.10.10.10', '5556', 'MyJCSODI_domain','/u01/data/domains/MyJCSODI_domain')

    Note– all the parameters are enclosed in single quotes.

  3. Now you are connected to the Node Manager, you can start your administration server. Use the following command:

    nmStart('MyJCSODI_adminserver')

    Remember to replace the parameter with the name of your own administration server domain.

Post-Configuration Tasks

Use the WLS Administration Console to update the Oracle Coherence parameters. To configure Oracle Coherence:

  1. Log into the Oracle WebLogic Server Administration Console.

    WLS Console Login
    Description of this image
  2. In the Domain Structure panel, expand the Environment node. Click Coherence Clusters.

    Environment Coherence Clusters
    Description of this image
  3. In the Coherence Clusters table, click DataGridConfig.

    Data Grid Config
    Description of this image

  4. Select the Configuration tab and ensure that the Cluster Listen port has been set. If there is no value then click and set Cluster Listen port to 9000. (If this port is in use then you may have to change it later on)

    Configuration tab
    Description of this image

  5. Click the , then change to the Members tab. Select Part of the cluster under the Clusters section, and then select your managed server.

    Now click and

    Members tab
    Description of this image

The post-configuration tasks pertaining to Coherence membership are done. When you start the servers (next section), you may need to come back here to adjust the Coherence membership again.

Starting the Servers

To get your deployments up and running, you must start the Administration Server and Managed Servers that were created during domain extension.

Start (or if necessary restart) the servers. Use the command line script to restart the Admin Server, and use the WebLogic Server console to start the Managed Servers. The Admin Server may already be running!

  1. You can now access the WLS Administration Server Console by using the following link: http://admin_server_host:admin_server_port/console.

    WLS Console Login
    Description of this image

  2. In the Domain Structure panel, expand the Environment node. Click Servers.

    Servers
    Description of this image

  3. Click the Control tab, select your managed server (click the checkbox, not the server name), click . (This assumes your Node Manager is running.)

    Start Managed Server
    Description of this image

  4. Click to continue. Wait a minute.

    Confirm
    Description of this image

    Troubleshooting Starting Managed Server:

    Problem Statement: When you start the your managed server, it may fail with the following message in the /u01/data/domains/myjcs_domain/servers/managed_server/logs/managed_server.log file:

    This member could not join the cluster because of a configuration mismatch between this member and the configuration being used by the rest of the cluster. This member specified a cluster name of "DataGridConfig" which did not match the name of the running cluster. This indicates that there are multiple clusters on this network attempting to use overlapping network configurations. .

    Cause: Your server is trying to join another Coherence cluster, perhaps from another node.

    Workaround: In the WLS Console, go to Domain Structure > Environment > Coherence Clusters then click DataGridConfig and change the Listen Port from the default of 8088 to something else, perhaps 9000.

  5. The agent should now be deployed in JCS. You can see it by going to Domain Structure > Deployments then in Summary of Deployments panel click Deployment Order twice to get it sorted low-to-high. You should see oraclediagent near the top, and it should be State=Active and Health=OK.

    Deployments
    Description of this image

    Troubleshooting oraclediagent State and Health:

    Problem Statement: The agent oraclediagent may fail to start with the following message:
    weblogic.application.ModuleException: com.tangosol.net.RequestPolicyException: No storage-enabled nodes exist for service oracle.wls.internal.odi:OdiDistributedCache:com.tangosol.net.RequestPolicyException:No storage-enabled nodes exist for service oracle.wls.internal.odi:OdiDistributedCache
    /!\ Warning Errors were encountered while performing this operation.


    Cause: Your managed server is failing to fully join the Coherence cluster.

    Workaround: In the WLS Console, go to Domain Structure > Environment > Coherence Clusters then click DataGridConfig > Members tab and and change the Clusters from the default of All servers in the cluster to just Part of the cluster > managed_server, then click and and View changes and restarts to restart the managed server.

  6. Go back to ODI Studio to test the agent. In Topology > Physical Architecture > Agents > OracleDIAgent, click .

    Agent Test
    Description of this image

  7. If you chose to configure the standalone collocated agent, then you can test it by repeating step 6, but for OracleDIAgent1.

    Note: This Agent would need to be started first, which you do from the command line. For more information on how to do this, see: section 7.5 - Starting a Standalone or Standalone Collocated Agent Using Node Manager - of the Oracle Fusion Middleware Installing and Configuring Oracle Data Integrator.

The WLS admin server and managed servers are now running. All deployed applications are running.

ODI is now provisioned on the JCS instance. The agents are running and available for ad hoc and scheduled work.

Want to Learn More?