Oracle E-business suite: Virtual host names solution

Posted in: Oracle, Technical Track

 

This blog post is a continuation to an earlier post about my musings on Oracle EBS support for virtual host names.

Actually, most parts of Oracle E-Business Suite work with virtual host names with out any problem. The only component that doesn’t work when using virtual host names are the Concurrent Managers. Concurrent Managers expect that the node name defined in the Concurrent Manager definition screen matches the host name FNDLIBR executable reads at the server level. Having the virtual host name as an alias in the hosts file in the server doesn’t cut it for the FNDLIBR executable. FNDLIBR reads the host name of the server using the Unix system call.

This behaviour of FNDLIBR can be hacked by overriding the Unix gethostname system call using LD_PRELOAD functionality. There is already a prebuilt program out there on github to achieve this functionality. It’s called fakehostname. I have tested this and verifies that it works with Oracle 11i, R12.0 and R12.1 version without any problem.

Here is a demo:


$ hostname
ebs
$ export LD_PRELOAD=/home/oracle/fakehost/libfakehostname.so.1
$ export MYHOSTNAME=ebsfakehost
$ hostname
ebsfakehost
$ export MYHOSTNAME=newebshost
$ hostname
newebshost

 

This utility helps in making concurrent managers thinking that it’s running on the virtual host by overriding the gethostname system call. This method of getting EBS to work with virtual hostnames doesn’t work any more with EBS R12.2. The reason for this EBS R12.2 is that it it’s shipped in a mix of 32bit and 64bit components. Earlier releases of EBS like 11i, 12.0 and 12.1 are 32bit only, even though they run on 64bit platforms. We can get EBS R12.2 working by having both 32bit and 64bit versions of the fakehostname library in the LD_PRELOAD, but EBS borks too many warning messages about not being able to load 32bit/64bit libraries, which defeats the whole purpose of having a simple solution.

I am working on another way of getting virtual host names working in EBS R12.2. I will post that in my next blog post. Stay tuned!

 

Discover more about our expertise in the world of Oracle.

email

Author

Interested in working with Vasu? Schedule a tech call.

About the Author

Vasu Balla’s colleagues call him “Eagle Eye” for a reason – his diverse technical background enables him to view his clients’ systems from a 360-degree angle, giving him a higher level of understanding. Vasu is well known for being approachable, and he truly enjoys helping people. Even former colleagues reach out to Vasu when they are really stuck on an issue. When he isn’t working, Vasu can be found in the kitchen trying new recipes.

8 Comments. Leave new

It looks so complicated.

We just do adconfog using new context file after switchover to backup site. Usually it takes no more than 5-10 minutes.

Of course we use logical hostname too but only for simplification of switchover process. And it allows us to use the same context file on primary and backup sites.

By the way, if you want to resolve names depending on physical location why not use you own local DNS?

Reply

Hi Vasu

Were you able to find any alternate solution for configuring R12.2 with Virtual hostname?
We have this requirement and wanted to check its feasibility.

Reply

Hi Aman,

The solution for EBS R12.2 is to use linux containers. LCs got recently certified with Oracle EBS. I will put a blog around that very soon

Thanks
Vasu

Reply

HI Aman, A colleague of mine was able to get the same LD_PRELOAD solution working for EBS r12.2 as well. I will blog complete solution in few days

Reply

Hi Aman,

The solution for EBS R12.2 is to use linux containers. LCs got recently certified with Oracle EBS. I will put a blog around that very soon

Thanks
Vasu

Reply

Hi Vasu,

Is this only for Linux or will it works for AIX?

Thanks

Reply

For AIX and Solaris, i think there are solutions like Veritas Cluster Server that can help setup and migrate virtual hostname across servers

Reply

Hello Vasu bhai,

Can we use virtual host names to come up with different context and run both internal context and dmz context on the same physical server? Any pointers would be helpful!!!

Thanks

Reply

Leave a Reply

Your email address will not be published. Required fields are marked *