“Seriously John, do you blog about anything else?”
Yeah, well… Evidence is strongly against me so far. :)
One of the more common questions I’ve received as a followup to my Build an E-Business Suite 12.1.3 Sandbox In VirtualBox in One Hour post has been, “Can I do this in a single node instead of creating two VMs?” The answer of course, is yes, but it never seemed like a good topic for a full blog post. Given the number of requests, however (and the patience and persistence of one reader in particular — hi Sandip!), I’m using this post to present quick notes on how to create a single-node EBS 12.1.3 Vision instance from the OVM templates, instead of the two-node system for which they’re designed.
In addition to the normal complete-lack-of-support caveats listed in the original post, please be aware that this post contains pointers and rough notes, not detailed instructions. Basically, I’ve just wrapped some formatting around some notes from a presentation I gave on this topic last summer. If you don’t understand what’s happening in the original set of instructions, these notes will not be useful to you at all. Please read the original post carefully before asking questions about this one.
Since we’re running apps and the database in a single node we need to configure a slightly more powerful single VM. Here’s partial output from ‘vboxmanage showvminfo’ that illustrates the important points (more memory, more CPU, and an extra disk for the Apps software). Otherwise, the configuration (network interfaces, rescue boot image setup, etc) is the same as in the original post.
Memory size: 3072MB
Number of CPUs: 2
Storage Controller Name (1): SATA
Storage Controller Type (1): IntelAhci
SATA (0, 0): /Volumes/Valen/OVM_1213/EBS121RootDisk.vdi (UUID: ebd87cd3-2620-49b6-b24d-c64158b183da)
SATA (1, 0): /Volumes/Valen/OVM_1213/EBS121DB.vdi (UUID: 0ae2f4dc-bd40-4299-82f7-eebea2c34de7)
SATA (2, 0): /Volumes/Valen/OVM_1213/EBS121Apps.vdi (UUID: 7fc14a42-f4bc-4741-8ba7-a33341ac73ea)
Still the same
The following steps are almost the same as in the original post:
- Download the software
- Extract the templates
- Convert the disk images to .vdi format (though you can skip the Apps server System.img disk, you won’t need it, only ebs1211apps.img). Of course, you’ll only need to create 1 VM at this step, attaching the Apps vdi as the third disk.
- Boot the database server VM in rescue mode from the install CD — the steps to install the new kernel and run mkinitrd remain the same
Things change a bit before moving on to step 5, “Reboot and prepare for next steps,” as described below.
Apart from the obvious “no second VM to create,” here are the essential changes I made to my build process for a single-node Vision instance:
- Before rebooting, add another line to /etc/fstab to attach the apps software volume:
/dev/sdc1 /u02 ext3 defaults 1 0
- Before rebooting, do not edit the /etc/sysconfig/oraclevm-template script. I found it to be easier to just let the script execute at boot time, although it did require me to be a bit more careful about my inputs.
- After rebooting, the template configuration script will guide you through the configuration of the network interfaces and the Vision database tier, as described in the original post
Once the database is started, you’ll need to make a few changes to the scripts that configure, start, and stop the applications tier. First, log in to the VM as root, and then adjust the scripts to account for the new mount point. To save your sanity, it’s also necessary to comment out ovm_configure_network from the ebiz_1211_reconfig.sh script:
# cd /u02 # perl -pi.old -e 's/u01/u02/g' startapps.sh stopapps.sh ebiz_1211_reconfig.sh # vi ebiz_1211_reconfig.sh # diff ebiz_1211_reconfig.sh ebiz_1211_reconfig.sh.old 47c47 < #ovm_configure_network "static" --- > ovm_configure_network "static" 61c61 < su oracle -c "perl /u02/E-BIZ/apps/apps_st/comn/clone/bin/adcfgclone.pl appsTier" --- > su oracle -c "perl /u01/E-BIZ/apps/apps_st/comn/clone/bin/adcfgclone.pl appsTier"
After the scripts have been adjusted, you’re ready to configure the apps tier. Again, as root, run the /u02/ebiz_1211_reconfig.sh script, which will invoke AutoConfig and ask you all the necessary questions. Your answers will differ from the two-node process in two important ways:
- There is only one hostname for the environment now
- All references to the apps software locations will point to /u02, not /u01
Here’s an excerpt of the Autoconfig run, with only the important/changed bits included:
cd /u02 [[email protected] u02]# ./ebiz_1211_reconfig.sh Configuring Oracle E-Business Suite... Target System Hostname (virtual or normal) [gkar] : Target System Database SID : VIS Target System Database Server Node [gkar] : Target System Database Domain Name [local.org] : Target System Base Directory : /u02/E-BIZ Target System Tools ORACLE_HOME Directory [/u02/E-BIZ/apps/tech_st/10.1.2] : Target System Web ORACLE_HOME Directory [/u02/E-BIZ/apps/tech_st/10.1.3] : Target System APPL_TOP Directory [/u02/E-BIZ/apps/apps_st/appl] : Target System COMMON_TOP Directory [/u02/E-BIZ/apps/apps_st/comn] : Target System Instance Home Directory [/u02/E-BIZ/inst] : Do you want to preserve the Display [atgtxk-09:0.0] (y/n) : n Target System Display [gkar:0.0] : Do you want the the target system to have the same port values as the source system (y/n) [y] ? : n Target System Port Pool [0-99] : 42 UTL_FILE_DIR on database tier consists of the following directories. 1. /usr/tmp 2. /usr/tmp 3. /u01/E-BIZ/db/tech_st/18.104.22.168/appsutil/outbound/VIS_gkar 4. /usr/tmp Choose a value which will be set as APPLPTMP value on the target node  : 1 Do you want to startup the Application Services for VIS? (y/n) [y] : y
Cleanup items and other reminders
To prevent annoyances when starting/stopping services, and logging in as oracle:
- touch /home/oracle/.passchanged
- rm /u02/E-BIZ/apps/apps_st/appl/*mydb*
Also, since our root disk came from the database server VM template, only database services will stop and start automatically upon server shutdown and boot. You will need to use the startapps.sh and stopapps.sh scripts in /u02 to manage the applications tier services.
That should be enough to get you going. Good luck!