This tutorial walks you through the steps that are needed to use Oracle Data Integrator Studio (ODI Studio) graphical tools to create an agent collocated with WLS to support (among other things) scheduling of procedures.
Time to Complete
Approximately 40 minutes.
A common task that is performed using ODI is to set up and install an ODI Agent. After the ODI scenarios are created, they can be scheduled and orchestrated using an ODI Agent, which is a lightweight Java process that orchestrates the execution of ODI scenarios. This tutorial walks you through the steps that are needed to set up and install the ODI Agent.
This is the third in a series of four OBEs in the Oracle Data Integrator 12c: Getting Started series.
Linda works as a database administrator for Example Enterprise Corp (http://www.example.com). In Example Enterprise, Linda is responsible for performing database management and integration tasks on various resources within the organization. In particular, Linda is responsible for data loading, transformation, and validation. To begin working on her projects, Linda created the new Master repository and Work repository. Linda also created the project and the procedure to create a relational table and populate it with data. Now Linda needs to set up and install an ODI Agent as a service. This agent will be used in the next OBE to schedule a later run of the procedure. Agents are used for many other tasks in addition to scheduling.
Hardware and Software Requirements
The following is a list of software requirements:
- A supported operating system (the OS shown here is 64-bit Oracle Enterprise Linux release 5.6 (Carthage), other versions such as Windows are supported as well)
- Oracle Database (the version shown here is Enterprise Edition 12.1.0, other versions are supported as well)
- Oracle WebLogic Server (WLS) 12c (other versions are supported as well). This OBE requires that WebLogic Server (WLS) is installed. If you do not have WLS installed, see alternate OBE here.
- Oracle Data Integrator 12c installed as ODI Enterprise (the version shown here is 12.1.2)
The following is a list of OPTIONAL software:
- Oracle SQL Developer 12c (included with Database 12c install)
If WLS is present, it must be in the same Middleware
HOME directories as ODI.
Before starting this tutorial, you should have:
- Started Oracle Database services and components such as the Listener.
- A Database user with DBA role privileges such as the
- Installed the
HRschema included in the Oracle Database. The Sample Schemas Installation Guide is part of the Oracle Database documentation set, and is also available online at: http://otn.oracle.com.
- Already installed and configured ODI Master and Work repositories (instructions on how to do this are contained in the first of four OBEs in the Getting Started series).
- Already created an ODI project and mapping for a flat file to a relational table (instructions on how to do this are contained in the second of four OBEs in the Getting Started series).
1. Creating the Domain for the Standalone Collocated Agent
The agent in this OBE runs in a domain that is very similar to (but not dependent on) WebLogic Server (WLS) domains. The GUI Configuration Wizard uses templates to determine which components are needed to support the function of the agent. There are three possible kinds of agents:
- completely standalone agent (no WLS installed)
- standalone collocated agent (WLS is installed, but is not being used. The agent is started as its own binary. This OBE uses this kind of agent.)
- JEE agent (WLS installed and used. The domain, admin server, managed servers, node managers, and so on are started in the normal WLS way. The agent is one of many possible JEE apps running in the domain. )
To create the domain using CAM, perform the following steps:
1.1 Basic Configuration
Start the Fusion Middleware (FMW) Configuration Wizard to create a domain for the agent. This is the Common Administration Model (CAM), though you may not see that term used anywhere. It bears a striking resemblance to the WebLogic Server (WLS) domain configurator.
[myuser@myhost ~]$ cd $ODI_HOME/common/bin [myuser@myhost bin]$ pwd /u01/app/oracle/Middleware/Oracle_Home/odi/common/bin [myuser@myhost bin]$ ll total 44 -rwxr-x--- 1 oracle oinstall 483 Feb 6 09:14 clonedunpack.sh -rw-r----- 1 oracle oinstall 210 Jul 11 04:37 commons-logging.properties -rwxr-x--- 1 oracle oinstall 471 Dec 19 2012 config.sh -rwxr-x--- 1 oracle oinstall 2312 Jul 11 04:37 generate_agent_wls_template.cmd -rwxr-x--- 1 oracle oinstall 1980 Jul 11 04:37 generate_agent_wls_template.sh -rw-r----- 1 oracle oinstall 286 Jul 11 04:37 jrf-port-config.properties -rw-r----- 1 oracle oinstall 5412 Jul 11 04:37 ODI-logging-config.xml -rwxr-x--- 1 oracle oinstall 467 Dec 19 2012 pack.sh -rwxr-x--- 1 oracle oinstall 471 Dec 19 2012 unpack.sh -rwxr-x--- 1 oracle oinstall 1748 Dec 19 2012 wlst.sh [myuser@myhost bin]$ ./config.sh
Note that there are other different versions of
config.sh in other FMW directories, but this is the one you want for creating an ODI agent. The splash screen displays briefly.
In summary, you have completed the first half, the basic part of the configuration. You must continue with the second half, the advanced configuration.
1.2 Advanced Configuration
In summary, you completed both halves of the domain configuration. This created several directories with configuration files and scripts.
2. Creating a Physical Agent
The physical agent is a background OS process that communicates with ODI via TCP/IP ports.
To create, start, and test the physical agent, perform the following steps:
2.1 Creating a Physical Agent
Start ODI Studio by running
[myuser@myhost ~]$ cd $ODI_HOME/studio [myuser@myhost studio]$ pwd /u01/app/oracle/Middleware/Oracle_Home/odi/studio [myuser@myhost studio]$ ./odi.sh Oracle Fusion Data Integrator Studio 12c Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
The splash screen and progress bar displays briefly.
In summary, you created the physical agent configuration for within ODI. This points to the executables created in the previous CAM steps.
2.2 Starting the Background Process
Change to the directory of the domain that contains the binary files. Start the agent using the agent name from the domain. Leave that window running (perhaps minimized or sent to the back of the desktop.)
[myuser@myhost ~]$ cd $FMW_HOME/user_projects/domains/base_domain/bin [myuser@myhost bin]$ pwd /u01/app/oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin [myuser@myhost bin]$ ls agent.sh server_migration startNodeManager.sh agentstop.sh service_migration startscen.sh diag setDomainEnv.sh startWebLogic.sh internal setODIDomainEnv.sh stopComponent.sh nodemanager setStartupEnv.sh stoploadplan.sh odi_credtool.sh startcmd.sh stopManagedWebLogic.sh oracle-dfw-0.tmp startComponent.sh stopsession.sh restartloadplan.sh startloadplan.sh stopWebLogic.sh restartsession.sh startManagedWebLogic.sh [myuser@myhost bin]$ ./agent.sh -NAME=OracleDIAgent1 -PORT=20910
The very first time you run this, you will get LOTS of output as Java initializes. Subsequent run times the messages will be fewer. The
-PORT parameter is optional but recommended.
/u01/app/oracle/Middleware/Oracle_Home/odi/agent/internal/bin/commODIEnv.sh: line 111: /u01/app/oracle/Middleware/Oracle_Home/odi/agent/../../wlserver/modules/com.oracle.weblogic.security.encryption_18.104.22.168.jar: Permission denied /u01/app/oracle/Middleware/Oracle_Home/odi/agent/internal/bin/commODIEnv.sh: line 114: /u01/app/oracle/Middleware/Oracle_Home/odi/agent/../../oracle_common/modules/com.oracle.webservices.orasaaj-api_12.1.2.jar: Permission denied /u01/app/oracle/Middleware/Oracle_Home/odi/agent/internal/bin/commODIEnv.sh: line 117: /u01/app/oracle/Middleware/Oracle_Home/odi/agent/../../wlserver/server/lib/wlthint3client.jar: Permission denied 2013-08-02 20:54:24.897 NOTIFICATION New data source: [DEV_ODI_REPO/*******@jdbc:oracle:thin:@localhost:1521/ORCL.US.ORACLE.COM] 2013-08-02 20:54:27.058 NOTIFICATION ODI-1128 Agent OracleDIAgent1 is starting. Container: STANDALONE. Agent Version: 12.1.2 - 11/07/2013. Port: 20910. JMX Port: 21910. Allowing : 127.0.0.1,10.216.4.175,127.0.0.1 2013-08-02 20:54:33.457 NOTIFICATION New data source: [DEV_ODI_REPO/*******@jdbc:oracle:thin:@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(service_name=ORCL.US.ORACLE.COM)(server=dedicated)))] 2013-08-02 20:54:34.186 NOTIFICATION ODI-1111 Agent OracleDIAgent1 started. Agent version: 12.1.2 - 11/07/2013. Port: 20910. JMX Port: 21910. 2013-08-02 20:54:34.187 NOTIFICATION ODI-1136 Starting Schedulers on Agent OracleDIAgent1. 2013-08-02 20:54:35.678 NOTIFICATION ODI-1137 Scheduler started for work repository workrep on Agent OracleDIAgent1.
You want to see at the bottom that the scheduler has started for the correct work repository.
In summary, you have started the external process associated with the ODI physical agent.
2.3 Testing the Physical Agent
In summary, you have configured and started a physical agent.
3. Creating a Logical Agent
Most components in ODI have a physical and logical side to them. You already created the physical agent with ports and names, the logical agent is much simpler and shorter.
To create a logical agent that corresponds with the previous physical agent, perform the following steps:
3.1 Creating a Logical Agent
In summary, you created a logical agent to match the previous physical agent.
In this tutorial, you should have learned how to:
- Use CAM to create a domain from a template for a standalone collocated agent
- Use ODI Studio to create a physical agent
- Start the physical agent background process from the OS prompt
- Use ODI Studio to create a logical agent that corresponds to the physical agent
The following are conceptual or procedural Help topics relevant to the topic of this tutorial:
- Online documentation, viewlets, samples, and OLN URLs on OTN:
- The following specific courses:
- D82167GC10 Oracle Data Integrator 12c: Integration and Administration
(replaces D64974GC20 Oracle Data Integrator 11g: Integration and Administration Ed2)
- D82171GC10 Oracle Data Integrator 12c: New Features
- External Web sites for related information:
- To learn more about Oracle Data Integrator 12c, refer to additional OBEs in the Oracle Learning Library, or on the ODI Studio Start Page.
- Lead Curriculum Developer: Steve Friedberg
- Other Contributors: Viktor Tchemodanov, Alex Kotopoulis, Julien Testut
To navigate this Oracle by Example tutorial, note the following:
- Hide Header Buttons:
- Click the title to hide the buttons in the header. To show the buttons again, click the title again.
- Topic List:
- Click a topic to navigate to that section.
- Expand All Topics:
- Click the button to show or hide the details for the sections. By default, all topics are collapsed.
- Hide All Images:
- Click the button to show or hide the screenshots. By default, all images are displayed.
- Click the button to print the content. The content that is currently displayed or hidden is printed.
To navigate to a particular section in this tutorial, select the topic from the list.