Thursday, August 16, 2012

Installing Oracle SOA Suite10g on Oracle Enterprise Linux

One of the projects I am working on at the moment uses SOA Suite10g. The project will refactor part of the solution to make the code easier to maintain and change. To facilitate the developers, I set out to create a virtual box image. This will enable developers to test their code before checking it in and releasing it to test.

I figured I would save myself some time and download a preconfigured virtual box with a database installed. This can be found here.

The customer was running SOA Suite 10.1.3.5. I needed to download the following files:

  • SOA Suite 10.1.3.1 installation disk
  • SOA Suite 10.1.3.5 patch
  • JDK 1.4.2. for the irca.sh module that installs the database files
  • Patch 6265268 to be able to run the SOA Suite against a Oracle Database 11g

Running the installer on Oracle Enterprise Linux

The installer in SOA Suite 10.1.3.x checks the Linux distribution. When I executed runInstaller, the following error occured:

Checking installer requirements...

Checking operating system version: must be redhat-Red Hat Enterprise Linux AS release 3, redhat-Red Hat Enterprise Linux AS release 4, redhat-Red Hat Enterprise Linux ES release 3, redhat-Red Hat Enterprise Linux ES release 4 or SuSE-9
                                      Failed <<<<

I posted a question on twitter and Tony van Esch, Andreas Chatziantoniou and Mark Kelderman (thank you guys!) responded to my tweet and proposed two possible solutions:

  1. Skip the check for prerequistes
  2. Change the oraparam.ini file to include the Oracle Enterprise Linux distribution as certified linux versions.
I decided to go with the second solution, for obvious reasons...Now I needed to add the exact name of my Linux version I was running. I ran 

cat /etc/issue
which returned Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)

I added this to the oraparam.ini file:

[Certified Versions]
Linux=redhat-Red Hat Enterprise Linux AS release 3,redhat-Red Hat Enterprise Linux AS release 4,redhat-Red Hat Enterprise Linux ES release 3,redhat-Red Hat Enterprise Linux ES release 4,SuSE-9,Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)

This did not work, the installer complained my oraparam.ini file seemed corrupt. I tried something different:

[Certified Versions]
Linux=redhat-Red Hat Enterprise Linux AS release 3,redhat-Red Hat Enterprise Linux AS release 4,redhat-Red Hat Enterprise Linux ES release 3,redhat-Red Hat Enterprise Linux ES release 4,SuSE-9,redhat-Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)

Now the installer gave me the same error as before, telling me the version check failed. I decided to google for the correct answer and found a number of posts on OTN (Oracle Technology Network).

There I found the answer: you can ask Oracle Enterprise Linux what redhat version it is by typing:
cat /etc/redhat-release

It came back with 
Red Hat Enterprise Linux Server release 5.5 (Tikanga)

So I added this name to the certified versions and ran the installer.  

[Certified Versions]
Linux=redhat-Red Hat Enterprise Linux AS release 3,redhat-Red Hat Enterprise Linux AS release 4,redhat-Red Hat Enterprise Linux ES release 3,redhat-Red Hat Enterprise Linux ES release 4,SuSE-9,redhat-Red Hat Enterprise Linux Server release 5.5 (Tikanga)

This time it worked like a charm! Note that the universal installer will still give you a warning when (again) checking perquisites, but you can safely ignore this. 

Installing Oracle SOA Suite 10.1.3.x with Oracle database 11g

Because I downloaded an appliance with the database preinstalled, I ran into the next problem: the SOA Suite 10g installer checks the database version and quits if this is higher than version 10g. There are a number of blogs that describe how to install the SOA Suite10g with a Oracle database 11g. You need to install a patch for the installer, which is described by Antony Reynolds here.

Next I will patch the SOA Suite to 10.1.3.5 and start the server :)