Documente Academic
Documente Profesional
Documente Cultură
All.Things.Oracle
* The Agent being the process that executes the ETL the equivalent of the control
centre service in OWB.
Specify the location where you want to install ODI. Note for the remainder of this blog
this location will be referred to as the ODI_HOME.
On the final screen you get the option to automatically launch the configuration wizard
although weblogic has been installed, a domain hasnt been created yet. However you
need to run the weblogic configuration a second time later on to deploy the ODI services,
so you can (and I did) skip the configuration now and do it all in one step later on.
So now I can install ODI 12c, specifically ODI 12.1.2.0.0. I unzipped the downloaded
ofm_odi_generic_12.1.2.0.0_disk1_1of1.zip file to get odi_121200.jar, then ran it with the
latest version of java.
Note: I didnt have enough space in my tmp folder to unzip this, so I created a new tmp
folder (/u01/tmp) and used a parameter in java to point to it (Djava.io.tmpdir), you
probably wont need this, but I included it below as an example of how to
/usr/java/jdk1.7.0_45/bin/java -Djava.io.tmpdir=/u01/tmp -jar odi_121200.jar
After extracting the files the installer starts
I wanted to do an enterprise installation, so thats what I chose. Just a quick note hereif
you want to do a stand-alone installation the oracle home must NOT contain a weblogic
install (i.e. dont install weblogic then decide to do a stand-alone ODI install!)
Select Create Repository and System Load and Product Load to do it all in one go.
I got this interesting messageODI 12c not officially supported on Oracle Database
11.2.0.4I chose ignore
I just selected Oracle Data Integrator, the other dependencies are auto-selected.
Used the same password for all schemas(see the full list of schemas in the select
components screen earlier).
cd /u01/app/Middleware/Oracle_Home/oracle_common/common/bin
JAVA_HOME=/usr/java/jdk1.7.0_45
export JAVA_HOME
./config.sh
The configuration wizard will then begin:
Now I can include ODI in the domain configuration. I left Create Domain using Product
Templates selected and then from the available templates added:
Oracle Enterprise Manager Plugin for ODI 12.1.2.0 [em]]
Oracle Data Integrator Console 12.1.2.0 [odi]
Oracle Data Integrator Agent 12.1.2.0 [odi]
Other dependent templates were automatically selected.
Umm, I want to setup a Production environment, but I also want to use boot.properties to
avoid entering the user-id/password every time I start/stop the vm. Fortunately I know
how to setup the boot.properties file manually Ill show this later on.
The JDK defaulted to the JAVA_HOME set before running the wizard above.
The wizard now needs to connect to the repository created with the RCU above
specifically it needs to access the Service tables in the prefix_STB schema (DEV_STB in
this example).
Enter the connection details and click the Get RCU Configuration button. If this is
successful carry on.
The JDBC component schema screen should already be populated this is what the
Get RCU Configuration button did.
Click the Test Selected Connections button just to make sure all details have loaded
properly before continuing.
Two keys are required for ODI. The SUPERVISOR credential already exists when you
enter this screen, but needs the actual user-name and password entered (as created
earlier when running the RCU). Note the user-name must be entered upper case.
The second key is for the ODI Domain within weblogic, and needs to be the weblogic
administrator user-id & password as entered on page 4 of this wizard above.
Click the Add button and on the new line that opens up enter odidomain as the keyname, followed by the admin user-name and password and finally choose
oracle.odi.credmap as the store name from the drop down list.
The three options Administration Server, Node Manager and Managed Servers need to be
selected these open up more screens below to complete the configuration.
In here I left the server name and port as default, however the Listen Address MUST be
changed to the IP address of the server DO NOT leave this as All Local Addresses
I dont have/want any server groups, I this is left as unspecified.
The default Per Domain is required (i.e. one node manager per domain, and there is only
one domain). Enter a user-id and password for the node manager.
In the following five screens I need to configure the ODI server, create a cluster (albeit
with just the one server), then create a machine and assign both the ODI server and
weblogic Admin Server to it.
To start with on this screen the ODI_Server1 server name had already been created, but
the Listen Address again defaulted to All Addresses which MUST be changed to the IP
Address of the server. The other settings can be left as default.
Use the add button and enter a cluster name. No address is required.
Select the ODI_server1 in the servers window and click the > button to move it to the
cluster.
Again I clicked Add to create a machine, entered a name and selected the local IP
address for the listen address.
Then selectede both the Admin Server and the ODI Server1 and clicked > to add it to the
ODI Machine.
Then a rather full looking summary screen displays the settings chosen over the previous
18 screens
Running ODI Studio for the first time
The first time ODI is run a connection to the Master repository needs to be created,
followed by the creation of the Agent.
As this is Linux, ODI is started via terminal window:
cd /u01/app/Middleware/Oracle_Home/odi/studio
./odi.sh
Again, as this is a first-time run, it asks about importing preferences. I didnt have
previous installation to import from
From the ODI category, click on Create a new ODI Repository Login
Then enter the connection details to the Repository the supervisor user/password as
entered when creating the domain, the DEV_ODI_REPO being one of the schemas
created by the RCU above.
Its also worth selecting the Work Repository to connect to at this point as well
otherwise youll only have to manually select it each time you connect.
Click test just to make sure! Then continue.
ODI uses a wallet to store encrypted connection details using this means you only need
to enter the wallet password each time you connect rather than individual passwords for
the master & work repositories and other components. So enter a password for the wallet.
The 18,000 days I entered for expiry is probably a little OTT, but this is only a dev vm!
Now back at the main ODI screen, click Connect to Repository.which well be doing
every time we launch ODI.
Then in the ODI login screen the user/password details are pre-filled out for us.
In the Topology tab of the navigator window, right click on Agents and select New Agent
In the new tab that opens up enter an Agent Name and the name of the host server. All
other values can be left as default. Click the Test button in the menu bar of the tab.
Thats all thats needed right now. ODI is up and running and ready to use.
cdODI_HOME/user_projects/domains/base_domain/servers/AdminServer
mkdirsecurity
cdsecurity
viboot.properties
username=weblogic
password=Password1
Then change to the ODI Server directory and copy this file:
cdODI_HOME/user_projects/domains/base_domain/servers/ODI_server1
mkdirsecurity
cdsecurity
cp../../AdminServer/security/boot.properties.
#!/bin/bash
ORACLE_OWNR=oracle#LocalUnixuserrunningODI
MIDDLEWARE_HOME=/u01/app/Middleware/Oracle_Home#Deploymenthomedirectory
DOMAIN_NAME=base_domain#Domainname
SERVER_NAME=ODI_server1
WL_DOMAIN_PATH=$MIDDLEWARE_HOME/user_projects/domains/$DOMAIN_NAME/bin
ODI_USER=weblogic#ODIadministratorname
ODI_PASSWD=Password1
#ODIadministratorpassword
MANAGED_SERVER_URL=oraclelinux6.localdomain:7001#AdminserverURL(hostname
SUBSYS=ODI
NOW=$(date+"%Y%m%d%H%M")
START_LOG=~/logs/odistart$NOW.log
STOP_LOG=~/logs/odistop$NOW.log
start(){
echo"***********************************************************************
echo"StartingNodeManageron$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/startNodeManager.sh&
wait_for"socketlistenerstartedonport"
echo"***********************************************************************
echo"StartingWeblogicServeron$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/startWebLogic.sh&
wait_for"ServerstartedinRUNNINGmode"
echo"***********************************************************************
echo"StartingODIServiceson$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/startManagedWebLogic.sh$SERVER_NAME&
echo"***********************************************************************
echo"ODIstartsequencecompletedon$(date)"
echo"***********************************************************************
}
stop(){
echo"***********************************************************************
echo"StoppingODIServiceson$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/stopManagedWebLogic.sh$SERVER_NAMEt3://$MANAGED_SERVER_URL
echo"***********************************************************************
echo"StartingWeblogicServeron$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/startWebLogic.sh&
wait_for"serverstartedinRUNNINGmode"
echo"***********************************************************************
echo"StartingODIServiceson$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/startManagedWebLogic.sh$SERVER_NAME&
echo"***********************************************************************
echo"ODIstartsequencecompletedon$(date)"
echo"***********************************************************************
}
stop(){
echo"***********************************************************************
echo"StoppingODIServiceson$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/stopManagedWebLogic.sh$SERVER_NAMEt3://$MANAGED_SERVER_URL
echo"***********************************************************************
echo"StartingWeblogicServeron$(date)"
echo"***********************************************************************
$WL_DOMAIN_PATH/stopWebLogic.sh
echo"***********************************************************************
echo"StopingNodeManageron$(date)"
echo"***********************************************************************
pkillTERMu$ORACLE_OWNRf"weblogic\\.NodeManager"
echo"***********************************************************************
echo"ODIstopsequencecompletedon$(date)"
echo"***********************************************************************
}
wait_for(){
res=0
while[[!$resgt0]]
do
res=$(tail5"$START_LOG"|fgrepc"$1")
sleep5
done
}
case"$1"in
start)
echo"***********************************************************************
echo"StartingEPMon$(date)"
echo"ViewLogwith:tailf$START_LOG"
echo"***********************************************************************
start&>$START_LOG&
#touch/var/lock/subsys/$SUBSYS
stop)
echo"***********************************************************************
echo"StoppingEPMon$(date)"
echo"Logsaresentto$STOP_LOG"
echo"***********************************************************************
stop&>$STOP_LOG
#rmf/var/lock/subsys/$SUBSYS
restart)
$0stop
$0start
*)
echo"Usage:$(basename$0)start|stop|restart"
exit1
esac
exit0
This entry was posted in Uncategorized by Paul Cannon. Bookmark the permalink
[http://blog.3sixty-analytics.com/?p=577] .
3 THOUGHTS ON ODI12C INSTALLATION (FROM AN OWB DEVELOPERS VIEW!)
Adi
on February 9, 2014 at 1:37 am said:
Hi,
A newbie in ODI, Ive installed ODI12c 12.1.2. In the installation, I missed to give
odidomain credentials in the Credentials screen. So, I ran wlst and gave in these
credentials. my domain name is base_domain so i created credentials with keys
odidomain and base_fomain. Yet, my JEE agent is not starting, its giving this
error:
SEVERE: org.apache.commons.cli.ParseException: ODI-1625: This must be
executed from a domain. System property domain.home cannot be null
org.apache.commons.cli.ParseException: ODI-1625: This must be executed from
a domain. System property domain.home cannot be null
There is no agent.bat in the domain\bin, rather its in odi\agent\internal\bin.
Detailed question is here: https://community.oracle.com/thread/3513978
Please let me know where am I going wrong.
Thank you in advance!
-Adi
Paul Cannon
on February 10, 2014 at 8:39 am said:
Adi,
Ive seen all the additional problems and replies on the oracle community
link and I think youre just attacking the symptoms rather than fixing the
main problem which was the install wasnt carried out properly. As this
is a new installation my advice would be to delete it and start over.
Paul.
OracleAppsDbaGirl
on July 2, 2014 at 1:20 pm said: