Build an E-Business Suite 12.1.3 Sandbox In VirtualBox With One Hour of Work
Nov 29, 2012 / By John Piwowar
Self-directed learning about a product as complex as Oracle E-Business Suite can be challenging. Oracle helpfully provides a pre-built environment (called ‘Vision’) for training purposes. Configuring a viable training or “sandbox” environment on a workstation can be pretty daunting, however, considering:
- The memory and storage resources required to run a “small” Vision instance
- The need to install and configure the OS and a list of pre-requisite patches and packages
- Learning about the installer itself, which is straightforward but can be a little quirky, especially without careful attention to item #2!
- Learning enough about basic EBS administration to turn the darn thing on and start playing
Over time, improved specs for workstations have made item #1 less of a problem. There is ample documentation to cover items 2-4, and several people (including yours truly) have written basic bootstrap guides to help people get up and running quickly. Then Oracle went a step further and released Oracle VM templates for EBS (and updated them earlier this year), which eliminate the need for all of the fiddly stuff in steps 2-3, except for one small detail: They only run in Oracle VM Server, and maintaining an Oracle VM environment is a resource-intensive endeavor by itself.
This blog post aims to change all that. Are you ready to learn how to deploy the Oracle VM templates in Oracle VirtualBox, so you can run them on your own workstation without the need to run Oracle VM Server? I hope you are, because let me tell you, I’ve done a lot of typing. Whew.
Oh, and that “One hour of work” line in the title is not a mere advertising gimmick! There are long steps at the beginning, but they’re mostly hands-free (downloading and converting the OVM templates, steps 1-3 below). After you’ve gone through that, you really can have a working EBS 12.1.3 Vision instance up and running in a little over an hour. Let’s begin…
Ingredients
You will need:
- At least 3.5 GB of free memory (2 GB for the database server, 1.5 for the application server). You may be ok to use 1.5GB and 1GB, respectively, but I have not done rigorous testing on useable lower limits. Bottom line: If you have 4GB of RAM in your workstation, this may still work, but it will be a tight fit.
- A recent version of Oracle VirtualBox. Virtualbox installation instructions are beyond the scope of this post, but it’s a straighforward install.
- A lot of storage, for reasons that will become clear later. ~700GB. Fortunately, 1TB USB drives are pretty cheap these days, and you can reclaim some of the space when you’re done with this exercise.
- A Linux install ISO image (or physical CD, if you’re into that sort of thing). I used Oracle Enterprise Linux 5, Update 6, but any relatively recent OEL or RHEL install image should do the job here.
- An understanding of some basic Linux systems administration tasks
- Familiarity with configuring storage and network options in Virtualbox
- Familiarity with the EBS Rapid Clone (adcfgclone) utility, or willingness to blindly follow instructions and cross your fingers. :)
- Patience. There are large downloads involved, and then operations on some pretty big files.
Important notes
Nothing you’re about to read in this post is supported by anyone. Not me, not Pythian, and certainly not Oracle. If you’re thinking about using the techniques described here for any sort of production or QA deployment, please stop and question your sanity. Then call a few colleagues over to your desk and ask them to question your sanity.
Please be mindful of your licensing and support status for Oracle E-Business Suite when experimenting with your “sandbox” E-Business Suite instances. EBS is subject to a far more restrictive evaluation license than the more-familiar OTN development license.
Presumably, the basic method described in this post could be applied to convert other OVM templates. I haven’t tried this yet, but there is no EBS-specific magic here. For that matter, with a bit of adjustment, one should also be able to deploy these and other OVM templates under VMware workstation products.
As with many things you’ll find on the intertubes, this is not an original idea. I took my inspiration from the following blog posts, and am grateful to their authors for sharing:
- This post in the VMware Community
- Jim Marion’s post on converting Peoplesoft VM templates to Virtualbox
Finally, you’ll note a Unix-y bias to my instructions. :) I’ve done my VirtualBox work on OS X, but all the principles are the same for Windows and Linux hosts. You’ll need to be able to concatenate and uncompress some files, an ssh client to connect to your VMs, and use a command-line utility that comes with your VirtualBox install (VBoxManage). That’s about it from the host (workstation) side. The guests (VMs) are all Linux, of course, there’s no getting around that!
HOWTO: The short version
Here are the basic steps, so you know what you’re in for. This may actually be enough to get some readers 95% of the way there, but there are a few tweaks required along the way. I advise checking the more detailed instructions below, as well, particularly steps 6,9, 11, and 14.
- Download the OVM EBS 12.1 Vision database and app tier templates from the Oracle Software Cloud thingy (formerly E-Delivery)
- Unzip all the zip files, and unzip those contents as well
- Convert the disk image files from the two VM templates to .vdi format
- Boot the database server from the Linux ISO in rescue mode, and install a non-Xen version of the Linux kernel
- Reboot and configure the EBS database
- Boot the application server from the Linux ISO in rescue mode, and install a non-Xen version of the Linux kernel
- Reboot and configure the EBS application server
- Play on!
HOWTO: The long version (with screenshots and everything!)
- Download the software
Connect to Oracle’s Software Delivery Cloud and download the files listed under Oracle VM Templates for Oracle E-Business Suite Release 12.1.3 Vision Media Pack for x86 (64 bit). You’ll need all 11 files (V25323-1.zip through V25333-01.zip). I also recommend clicking the “View Digest ” button near the top of the download page, and running md5sum on each of the downloaded zip files to make sure the checksums match that list.
- Extract the templates
Note: If you’re using Windows and don’t have a Unix-like shell environment like Cygwin available, you may have to translate some of these steps to their Windows-y equivalents. Since we’re just concatenating and uncompressing files, I will assume you can do that. :-)
- Unzip all the files you just downloaded (
unzip 'V25*.zip'). This will produce two sets of files:OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM.tgz.[0-7](database tier template) andOVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM.tgz.[0-2](apps tier template). - Concatenate and uncompress the two sets of files:
zathras:OVM jpiwowar$ time cat /Volumes/Software/OVM1213Templ/OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM.tgz.* | tar xvz x OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/ x OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/ebs1211db.img x OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/System.img x OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/vm.cfg x OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/README.txt real 84m53.974s user 12m44.096s sys 5m13.680s zathras:OVM jpiwowar$ time cat /Volumes/Software/OVM1213Templ/OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM.tgz.* | tar xvz x OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/ x OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/vm.cfg x OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/ebs1211apps.img x OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/README.txt x OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/System.img real 16m11.327s user 2m42.887s sys 1m11.960s
- When complete, you should have two directories:
zathras:Valen jpiwowar$ ls -lh OVM_OL5U6_X86_64_EBIZ12.1.3_* OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM: total 105194496 -rwxrwxrwx 1 jpiwowar jpiwowar 20K Nov 4 19:44 README.txt -rwxrwxrwx 1 jpiwowar jpiwowar 5.2G Nov 4 19:47 System.img -rwxrwxrwx 1 jpiwowar jpiwowar 45G Nov 4 19:44 ebs1211apps.img -rwxrwxrwx 1 jpiwowar jpiwowar 448B Nov 4 19:15 vm.cfg OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM: total 514145024 -rwxrwxrwx 1 jpiwowar jpiwowar 20K Nov 4 22:28 README.txt -rwxrwxrwx 1 jpiwowar jpiwowar 5.2G Nov 13 02:59 System.img -rwxrwxrwx 1 jpiwowar jpiwowar 240G Nov 4 22:24 ebs1211db.img -rwxrwxrwx 1 jpiwowar jpiwowar 434B Nov 4 22:28 vm.cfg
Incidentally, the README files contain a few interesting tidbits about the environment you’re building. I recommend reviewing them while waiting for Step 3 to complete. :)
- Convert the disk images to .vdi formatOpen a command/terminal window and use the VBoxManage utility to convert the raw disk images (.img) to vdi files. The utility is installed with VirtualBox; you may need to find the utility first and add it to your path (location varies by host platform). Timings listed in the examples below are provided to set expectations for how long you’ll need to wait for the conversion to complete. Note that I was doing this on a slow 5400rpm drive on my laptop; you may get better performance. To save yourself some confusion later when attaching the converted disks to your VMs, I strongly recommend changing the name of ‘System’ image files to something uniquely identifiable, as shown below.Note: I’m running VirtualBox on OS X, and the installer dropped VBoxManage into /usr/bin for me, so it’s already in my path. Presumably you’ll find a similar situation in Linux. If you’re on Windows, and haven’t customized your install, you should be able to find VBoxManage.exe in
Program Files/Oracle/VirtualBox.zathras:OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM jpiwowar$ time VBoxManage convertfromraw /Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/System.img EBS121AppRoot.vdi; time VBoxManage convertfromraw /Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/ebs1211apps.img ebs1211apps.vdi Converting from raw image file="/Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/System.img" to file="EBS121AppRoot.vdi"... Creating dynamic image with size 5535613440 bytes (5280MB)... real 3m39.852s user 0m1.814s sys 0m7.244s Converting from raw image file="/Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_APPS_VIS_PVM/ebs1211apps.img" to file="ebs1211apps.vdi"... Creating dynamic image with size 48323520000 bytes (46085MB)... real 32m22.239s user 0m14.037s sys 1m22.806s zathras:OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM jpiwowar$ time VBoxManage convertfromraw /Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/System.img EBS121DBRoot.vdi; time VBoxManage convertfromraw /Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/ebs1211db.img ebs1211db.img.vdi Converting from raw image file="/Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/System.img" to file="EBS121DBRoot.vdi"... Creating dynamic image with size 5535613440 bytes (5280MB)... real 3m54.990s user 0m1.561s sys 0m7.082s Converting from raw image file="/Volumes/Io/OVM/OVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVM/ebs1211db.img" to file="ebs1211db.img.vdi"... Creating dynamic image with size 257706247680 bytes (245768MB)... real 193m12.402s user 1m10.258s sys 10m15.028s
- Create two new Virtualbox VMs
You’ll need one VM for the apps server and one for the database server. I’m assuming you know how to create VMs in Virtualbox already, so I will not go into excruciating, screenshot-laden detail. Here are the requirements for each VM…- OS: Oracle Linux, 64-bit
- CPUs: 1
- Device boot order: CD-ROM, Hard Disk
- Memory: 2GB for db server, 1GB for app server
- Storage: Attach Linux installation ISO to CD/DVD drive on the IDE controller, and attach the two vdi files to the SATA controller
- Network: Two network interfaces – 1 host-only (vboxnet0), and 1 NAT. I set this up to allow the VMs to communicate between themselves and get out to the internet for patches and updates. If you have a favorite preferred configuration for your VMs that also achieves these goals, please feel free to use that instead. :)
The screenshots below illustrate the final configurations of the db and app servers:


- Boot the database server VM in rescue mode from the install CDEnter “linux rescue” at the the
boot:prompt to enter rescue mode:

Select the keyboard and language preferences that suit you, and enable both network interfaces (for now, just select “use IPv4″ and “DHCP” when configuring eth0 and eth1, unless you have strong opinions. These settings are temporary):




(repeat the steps above for the second interface, eth1)After setting up the network interfaces, progress therough the menus (“Continue” and “OK” in my case) until you get to a linux prompt, and switch to the root volume as instructed:# chroot /mnt/sysimage
Optional step: start the sshd service and connect to the VM from your host via ssh, instead of performing the next few steps from the console of the VM. Use ‘ifconfig eth0′ to find the IP address to use. (Note: as listed in the README in the template directory, the root password for both VMs is ‘ovsroot’)
# service sshd start

- Update configuration files
The kernel modules that are loaded to support the Xen kernel are not going to work with the non-Xen kernel, so we need to update modprobe.conf to match our target kernel version:[root@localhost ~]# cp /etc/modprobe.conf /etc/modprobe.conf.xen [root@localhost ~]# cat /etc/modprobe.conf alias eth0 xennet alias scsi_hostadapter xenblk [root@localhost ~]# vi /etc/modprobe.conf "/etc/modprobe.conf" 3L, 78C written [root@localhost ~]# diff /etc/modprobe.conf /etc/modprobe.conf.xen 1,3c1,2 < alias eth0 e1000 < alias scsi_hostadapter ata_piix < alias scsi_hostadapter1 ahci --- > alias eth0 xennet > alias scsi_hostadapter xenblk [root@localhost ~]# cat /etc/modprobe.conf alias eth0 e1000 alias scsi_hostadapter ata_piix alias scsi_hostadapter1 ahci
Update /etc/fstab to disable automatic fsck on /u01, or you’ll be sitting for a little while at boot time:
[root@localhost ~]# vi /etc/fstab "/etc/fstab" 8L, 608C written [root@localhost ~]# grep /u01 /etc/fstab LABEL=ebs1211db /u01 ext3 defaults 1 0
Finally, edit /etc/sysconfig/oraclevm-template to disable template configuration at boot time. Otherwise, you’ll have to run through all these steps on the console, no matter what else happens at boot time, and that’s annoying.
[root@localhost ~]# vi /etc/sysconfig/oraclevm-template "/etc/sysconfig/oraclevm-template" 27L, 929C written [root@localhost ~]# grep RUN_ /etc/sysconfig/oraclevm-template #RUN_TEMPLATE_CONF=YES RUN_TEMPLATE_CONF=NO
- Install a new kernel (this isn’t as scary as it sounds…it’s not the late 90′s anymore)Virtualbox can’t boot the Xen kernel that supports para-virtualized operation under OVM, so we need to replace it with a standard kernel of the same version. One way to do this is to install the correct kernel version from the install media, but just in case you’re using media that isn’t the same as what’s installed in the OVM template (OEL5 update 6), we’ll use the Oracle public yum server instead (that’s why we’ve configured and activated the NAT interface):
[root@localhost etc]# cd /etc/yum.repos.d [root@localhost yum.repos.d]# wget http://public-yum.oracle.com/public-yum-el5.repo --2012-11-15 00:25:26-- http://public-yum.oracle.com/public-yum-el5.repo Resolving public-yum.oracle.com... 141.146.44.34 Connecting to public-yum.oracle.com|141.146.44.34|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 3974 (3.9K) Saving to: `public-yum-el5.repo' 100%[==========================================================================================> 3,974 --.-K/s in 0s 2012-11-15 00:25:26 (316 MB/s) - `public-yum-el5.repo' saved [3974/3974]
Update the public-yum-el5.repo file and set enabled=0 for every source except ol5_u6_base:
[root@localhost yum.repos.d]# vi public-yum-el5.repo "public-yum-el5.repo" 111L, 3974C written [root@localhost yum.repos.d]# grep -B5 'enabled=1' public-yum-el5.repo | grep ']' [ol5_u6_base]
Install the OEL5 update 6 (2.6.18-238) kernel form the Oracle public yum server:
[root@localhost yum.repos.d]# yum install kernel-2.6.18-238.el5 ol5_u6_base | 1.1 kB 00:00 ol5_u6_base/primary | 1.5 MB 00:02 ol5_u6_base 4551/4551 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package kernel.x86_64 0:2.6.18-238.el5 set to be installed --> Finished Dependency Resolution Dependencies Resolved ==================================================================================================================================== Package Arch Version Repository Size ==================================================================================================================================== Installing: kernel x86_64 2.6.18-238.el5 ol5_u6_base 19 M Transaction Summary ==================================================================================================================================== Install 1 Package(s) Upgrade 0 Package(s) Total download size: 19 M Is this ok [y/N]: y Downloading Packages: kernel-2.6.18-238.el5.x86_64.rpm | 19 MB 00:23 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : kernel 1/1 Installed: kernel.x86_64 0:2.6.18-238.el5 Complete!
Create an initrd for the new kernel; this should also add a new stanza to grub.conf:
[root@localhost yum.repos.d]# mkinitrd -v -f /boot/initrd-2.6.18-238.el5.img 2.6.18-238.el5 Creating initramfs Looking for deps of module ehci-hcd Looking for deps of module ohci-hcd Looking for deps of module uhci-hcd Looking for deps of module ext3: jbd Looking for deps of module jbd Found root device sda2 for LABEL=/ Looking for driver for device sda2 Looking for deps of module pci:v00008086d00002829sv00000000sd00000000bc01sc06i01: scsi_mod libata ahci scsi_mod libata ahci Looking for deps of module scsi_mod Looking for deps of module sd_mod: scsi_mod Looking for deps of module libata: scsi_mod Looking for deps of module ahci: scsi_mod libata Looking for driver for device sda3 Looking for deps of module pci:v00008086d00002829sv00000000sd00000000bc01sc06i01: scsi_mod libata ahci scsi_mod libata ahci Looking for deps of module ata_piix: scsi_mod libata Looking for deps of module ide-disk Looking for deps of module dm-mem-cache Looking for deps of module dm-region_hash: dm-mod dm-log Looking for deps of module dm-mod Looking for deps of module dm-log: dm-mod Looking for deps of module dm-message Looking for deps of module dm-raid45: dm-message dm-mod dm-mem-cache dm-log dm-region_hash Using modules: /lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/ehci-hcd.ko /lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/ohci-hcd.ko /lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/uhci-hcd.ko /lib/modules/2.6.18-238.el5/kernel/fs/jbd/jbd.ko /lib/modules/2.6.18-238.el5/kernel/fs/ext3/ext3.ko /lib/modules/2.6.18-238.el5/kernel/drivers/scsi/scsi_mod.ko /lib/modules/2.6.18-238.el5/kernel/drivers/scsi/sd_mod.ko /lib/modules/2.6.18-238.el5/kernel/drivers/ata/libata.ko /lib/modules/2.6.18-238.el5/kernel/drivers/ata/ahci.ko /lib/modules/2.6.18-238.el5/kernel/drivers/ata/ata_piix.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-mem-cache.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-mod.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-log.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-region_hash.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-message.ko /lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-raid45.ko /sbin/nash -> /tmp/initrd.TY1796/bin/nash /sbin/insmod.static -> /tmp/initrd.TY1796/bin/insmod /etc/udev/rules.d/05-udev-early.rules -> /tmp/initrd.TY1796/etc/udev/rules.d/05-udev-early.rules /sbin/firmware_helper.static -> /tmp/initrd.TY1796/sbin/firmware_helper /sbin/udevd.static -> /tmp/initrd.TY1796/sbin/udevd copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/ehci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/ehci-hcd.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/ohci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/ohci-hcd.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/usb/host/uhci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/uhci-hcd.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/fs/jbd/jbd.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/jbd.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/fs/ext3/ext3.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/ext3.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/scsi/scsi_mod.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/scsi_mod.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/scsi/sd_mod.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/sd_mod.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/ata/libata.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/libata.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/ata/ahci.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/ahci.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/ata/ata_piix.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/ata_piix.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-mem-cache.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-mem-cache.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-mod.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-mod.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-log.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-log.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-region_hash.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-region_hash.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-message.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-message.ko' [elf64-x86-64] copy from `/lib/modules/2.6.18-238.el5/kernel/drivers/md/dm-raid45.ko' [elf64-x86-64] to `/tmp/initrd.TY1796/lib/dm-raid45.ko' [elf64-x86-64] /sbin/dmraid.static -> /tmp/initrd.TY1796/bin/dmraid /sbin/kpartx.static -> /tmp/initrd.TY1796/bin/kpartx Adding module ehci-hcd Adding module ohci-hcd Adding module uhci-hcd Adding module jbd Adding module ext3 Adding module scsi_mod Adding module sd_mod Adding module libata Adding module ahci Adding module ata_piix Adding module dm-mem-cache Adding module dm-mod Adding module dm-log Adding module dm-region_hash Adding module dm-message Adding module dm-raid45 [root@localhost yum.repos.d]# cat /boot/grub/grub.conf # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/xvda2 # initrd /initrd-version.img #boot=/dev/xvda timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu default=0 title Oracle Linux Server (2.6.18-238.el5) root (hd0,0) kernel /vmlinuz-2.6.18-238.el5 ro root=LABEL=/ numa=off initrd /initrd-2.6.18-238.el5.img title Oracle Linux Server (2.6.18-238.0.0.0.1.el5xen) root (hd0,0) kernel /vmlinuz-2.6.18-238.0.0.0.1.el5xen ro root=LABEL=/ numa=off initrd /initrd-2.6.18-238.0.0.0.1.el5xen.img title Oracle Linux Server (2.6.32-100.26.2.el5) root (hd0,0) kernel /vmlinuz-2.6.32-100.26.2.el5 ro root=LABEL=/ numa=off initrd /initrd-2.6.32-100.26.2.el5.img title Enterprise Linux Enterprise Linux Server (2.6.32-100.0.19.el5) root (hd0,0) kernel /vmlinuz-2.6.32-100.0.19.el5 ro root=LABEL=/ numa=off initrd /initrd-2.6.32-100.0.19.el5.img title Enterprise Linux Enterprise Linux Server (2.6.18-128.0.0.0.2.el5xen) root (hd0,0) kernel /vmlinuz-2.6.18-128.0.0.0.2.el5xen ro root=LABEL=/ numa=off initrd /initrd-2.6.18-128.0.0.0.2.el5xen.imgSide note: Astute readers will notice (by inspection of grub.conf or by running rpm -q) that there are a number of other kernels already installed in this VM, including some “vanilla” OEL6/UEK kernels and an earlier OEL5 Xen kernel. I chose to stick with OEL 5.6 because it matches the version of the template’s Xen kernel, and therefore best fits the most recent configuration of the VM. Besides, at the time of this writing, there are still some components of E-Business Suite that are not yet supported under OEL6/RHEL6 (see “Unsupported Products” in My Oracle Support Note 761566.1 )
[root@localhost ~]# rpm -qa | grep kernel kernel-uek-headers-2.6.32-100.26.2.el5 kernel-xen-2.6.18-128.0.0.0.2.el5 kernel-2.6.32-100.0.19.el5 kernel-xen-2.6.18-238.0.0.0.1.el5 kernel-firmware-2.6.32-100.0.19.el5 kernel-uek-firmware-2.6.32-100.26.2.el5 kernel-uek-2.6.32-100.26.2.el5
- Reboot and prepare for next steps
- Detach the boot ISO from the CD drive of the database server VM (Devices menu -> Remove disk from virtual drive)
- Reboot the database server VM.
- Connect as the root user (the password, as listed in the template README file, is ‘ovsroot’)
- Configure the Vision database tier
Oracle provides a helpful script that, when run as root, will configure your network interfaces and the E-Business Suite Vision database tier. It should need to be run only once. First, we need to re-enable the script before we invoke it, by settingRUN_TEMPLATE_CONF=YESin /etc/sysconfig/oraclevm-template:
[root@localhost ~]# vi /etc/sysconfig/oraclevm-template "/etc/sysconfig/oraclevm-template" 26L, 907C written [root@localhost ~]# grep RUN_ /etc/sysconfig/oraclevm-template RUN_TEMPLATE_CONF=YES
Now start the config script. The first part will help you configure networking. For my setup of the first network interface (eth0), I chose an IP address that was unused in the range supported by my host-only network, and was also not part of the range of DHCP addresses for the host-only network. Pick anything you like for the hostname, as long as it follows the three-part ‘host.domain.com’ scheme required by the configuration script. The sometimes-popular host.localdomain format won’t work in this case. For DNS server, choose one that will work for you. I like Google’s; it’s easy to remember. :) Note that the script also picked my NAT interface to use as a gateway. This didn’t cause me any problems so far, so I’m living with it. Warning: this script stops and restarts network interfaces! To minimize risk of failure, run these steps from the console of your VM. If you choose to connect to the VM via ssh, I recommend using ‘screen’ before running the oraclevm-template script, to insulate yourself from dropped network connections.
[root@localhost ~]# /etc/init.d/oraclevm-template start
Starting oraclevm-template...
Regenerating SSH host keys.
Stopping sshd: [ OK ]
Generating SSH1 RSA host key: [ OK ]
Generating SSH2 RSA host key: [ OK ]
Generating SSH2 DSA host key: [ OK ]
Starting sshd: [ OK ]
Setting Oracle validated configuration parameters.
Configuring Oracle E-Business Suite...
Configuring network interface.
Network device: eth0
Hardware address: 08:00:27:5A:17:F4
Enter static IP address: 192.168.56.42
Enter netmask: [255.255.255.0] <ENTER to take default>
Enter gateway: 192.168.56.1
Enter DNS server: 8.8.8.8
Shutting down interface eth0: [ OK ]
Shutting down interface eth1: [ OK ]
Shutting down loopback interface: [ OK ]
Configuring network settings.
IP configuration: Static IP address
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
Bringing up interface eth1:
Determining IP information for eth1... done.
[ OK ]
Enter hostname (e.g, host.domain.com): gkar.local.org
Network configuration changed successfully.
IP configuration: Static IP address
IP address: 192.168.56.42
Netmask: 255.255.255.0
Gateway: 10.0.3.2
DNS server: 8.8.8.8
Hostname: gkar.local.org
Once the network is set up, the script invokes the Rapid Clone utility to set up the EBS datbaase tier. You can get valid values from the README file that came with the template, or follow the example below.
Copyright (c) 2002 Oracle Corporation
Redwood Shores, California, USA
Oracle Applications Rapid Clone
Version 12.0.0
adcfgclone Version 120.31.12010000.8
Enter the APPS password : apps
Running:
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre/bin/java -Xmx600M -cp /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/java:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/xmlparserv2.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojdbc5.jar oracle.apps.ad.context.CloneContext -e /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/../context/db/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile_7558.lst -stage /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone 2> /tmp/adcfgclone_7558.err; echo $? > /tmp/adcfgclone_7558.res
Log file located at /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1115072133.log
Provide the values required for creation of the new Database Context file.
Target System Hostname (virtual or normal) [gkar] : <ENTER to take default>
Target Instance is RAC (y/n) [n] : <ENTER to take default>
Target System Database SID : VIS
Target System Base Directory : /u01/E-BIZ
Target System utl_file_dir Directory List : /usr/tmp
Number of DATA_TOP's on the Target System [1] : <ENTER to take default>
Target System DATA_TOP Directory 1 [/u01/E-BIZ/db/apps_st/data] : <ENTER to take default>
Target System RDBMS ORACLE_HOME Directory [/u01/E-BIZ/db/tech_st/11.1.0] : /u01/E-BIZ/db/tech_st/11.2.0.2
Do you want to preserve the Display [atgtxk05:0.0] (y/n) : n
Target System Display [gkar:0.0] : <ENTER to take default>
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
Checking the port pool 42
done: Port Pool 42 is free
Report file located at /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/temp/portpool.lst
Complete port information available at /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/temp/portpool.lst
Creating the new Database Context file from :
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/template/adxdbctx.tmp
The new database context file has been created :
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/VIS_gkar.xml
Log file located at /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1115072133.log
Check Clone Context logfile /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1115072133.log for details.
Running Rapid Clone with command:
perl /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/adclone.pl java=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre mode=apply stage=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/VIS_gkar.xml showProgress contextValidated=true
Running:
perl /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/adclone.pl java=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre mode=apply stage=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/VIS_gkar.xml showProgress contextValidated=true
APPS Password :
Beginning database tier Apply - Thu Nov 15 07:24:40 2012
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true -Doracle.installer.oui_loc=/u01/E-BIZ/db/tech_st/11.2.0.2/oui -classpath /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/xmlparserv2.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojdbc5.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/java:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/OraInstaller.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/ewt3.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/share.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/srvm.jar:/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojmisc.jar oracle.apps.ad.clone.ApplyDBTier -e /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/VIS_gkar.xml -stage /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/clone -showProgress
APPS Password : Log file located at /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/log/VIS_gkar/ApplyDBTier_11150724.log
\ 15% completed
Completed Apply...
Thu Nov 15 07:43:22 2012
Starting database listener for VIS:
Running:
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_gkar/addlnctl.sh start VIS
Logfile: /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/log/VIS_gkar/addlnctl.txt
You are running addlnctl.sh version 120.1.12010000.4
Starting listener process VIS ...
Listener VIS has already been started.
addlnctl.sh: exiting with status 0
addlnctl.sh: check the logfile /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/log/VIS_gkar/addlnctl.txt for more information ...
Template configuration disabled.
[ OK ]
[root@localhost ~]# ps -ef | grep pmon
oracle 14565 1 0 07:36 ? 00:00:00 ora_pmon_VIS
root 15375 2319 0 07:45 pts/0 00:00:00 grep pmon
OK, we’re done with the first part! Keep the database server running (not optional, required), and let’s move on to the apps tier!
- Boot the app server VM in rescue mode from the install CD
Start the application server VM in rescue mode (“linux rescue” at the boot: prompt). Follow all the same steps as you did for the database server, including enabling the network interfaces, andchroot /mnt/sysimage. I’ll spare you the screenshots this time. - Update configuration files
As with the database server, adjust /etc/modprobe.conf, /etc/fstab, and /etc/sysconfig/oraclevm-template:[root@localhost ~]# cat /etc/modprobe.conf alias eth0 e1000 alias scsi_hostadapter ata_piix alias scsi_hostadapter1 ahci [root@localhost ~]# grep ebs1211apps /etc/fstab LABEL=ebs1211apps /u01 ext3 defaults 1 0 [root@localhost ~]# grep RUN /etc/sysconfig/oraclevm-template #RUN_TEMPLATE_CONF=YES RUN_TEMPLATE_CONF=NO
- Install a new kernel
Same idea as before, with a few exceptions: The app server VM doesn’t have a nameserver entry in resolv.conf, so we need to add it before we reach out the to the yum server. We do not, however, need to download the repository config file:[root@localhost ~]# cd /etc/yum.repos.d [root@localhost yum.repos.d]# cat /etc/resolv.conf cat: /etc/resolv.conf: No such file or directory [root@localhost yum.repos.d]# echo "nameserver 8.8.8.8" > /etc/resolv.conf [root@localhost yum.repos.d]# cat /etc/resolv.conf nameserver 8.8.8.8 [root@localhost yum.repos.d]# nslookup public-yum.oracle.com Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: public-yum.oracle.com canonical name = bigip-public-yum.oracle.com. Name: bigip-public-yum.oracle.com Address: 141.146.44.34 [root@localhost yum.repos.d]# ls -l public-yum-el5.repo -rw-r--r-- 1 root root 2308 Feb 1 2011 public-yum-el5.repo "public-yum-el5.repo" 69L, 2308C written [root@localhost yum.repos.d]# vi public-yum-el5.repo [root@localhost yum.repos.d]# grep -B5 'enabled=1' public-yum-el5.repo | grep ']' [ol5_u6_base] [root@localhost yum.repos.d]# yum install kernel-2.6.18-238.el5 ol5_u6_base | 1.1 kB 00:00 ol5_u6_base/primary | 1.5 MB 00:02 ol5_u6_base 4551/4551 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package kernel.x86_64 0:2.6.18-238.el5 set to be installed --> Finished Dependency Resolution Dependencies Resolved ==================================================================================================================================== Package Arch Version Repository Size ==================================================================================================================================== Installing: kernel x86_64 2.6.18-238.el5 ol5_u6_base 19 M Transaction Summary ==================================================================================================================================== Install 1 Package(s) Upgrade 0 Package(s) Total download size: 19 M Is this ok [y/N]: y Downloading Packages: kernel-2.6.18-238.el5.x86_64.rpm | 19 MB 00:23 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : kernel 1/1 Installed: kernel.x86_64 0:2.6.18-238.el5 Complete! [root@localhost yum.repos.d]# mkinitrd -v -f /boot/initrd-2.6.18-238.el5.img 2.6.18-238.el5 [mkinitrd output snipped this time. You're welcome] [root@localhost yum.repos.d]# head -15 /boot/grub/grub.conf # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/xvda2 # initrd /initrd-version.img #boot=/dev/xvda timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu default=0 title Oracle Linux Server (2.6.18-238.el5) root (hd0,0) - Reboot and prepare for next steps
- Detach the boot ISO from the CD drive of the app server VM (Devices menu -> Remove disk from virtual drive)
- Reboot the app server VM.
- Connect as the root user (the password, as listed in the template README file, is ‘ovsroot’)
- Configure the Vision applications tier
There are some important differences here from the database server setup. Please read carefully. The first part, however, is the same: re-enable and run the oraclevm-template script, setting up the same network options as before (different IP/hostname for the app server, of course). As with the database server, make sure to run the config script in the VM console or in a screen session to avoid network interruptions![root@localhost ~]# grep RUN /etc/sysconfig/oraclevm-template RUN_TEMPLATE_CONF=YES [root@localhost ~]# /etc/init.d/oraclevm-template start Starting oraclevm-template... Regenerating SSH host keys. Stopping sshd: [ OK ] Generating SSH1 RSA host key: [ OK ] Generating SSH2 RSA host key: [ OK ] Generating SSH2 DSA host key: [ OK ] Starting sshd: [ OK ] Setting Oracle validated configuration parameters. Configuring Oracle E-Business Suite... Configuring network interface. Network device: eth0 Hardware address: 08:00:27:3D:41:3B Enter static IP address: 192.168.56.43 Enter netmask: [255.255.255.0] <ENTER to take default> Enter gateway: 192.168.56.1 Enter DNS server: 8.8.8.8 Shutting down interface eth0: [ OK ] Shutting down interface eth1: [ OK ] Shutting down loopback interface: [ OK ] Configuring network settings. IP configuration: Static IP address Bringing up loopback interface: [ OK ] Bringing up interface eth0: [ OK ] Bringing up interface eth1: Determining IP information for eth1... done. [ OK ] Enter hostname (e.g, host.domain.com): natoth.local.org Network configuration changed successfully. IP configuration: Static IP address IP address: 192.168.56.43 Netmask: 255.255.255.0 Gateway: 10.0.3.2 DNS server: 8.8.8.8 Hostname: natoth.local.org***IMPORTANT*** AFTER network configuration, but BEFORE proceeding with any Rapid Clone steps, start a second session (do NOT interrupt the template configuration script) to add the IP and hostname for your database server to /etc/hosts. Otherwise, Rapid Clone won’t be able to find the db server to complete its configuration. It’s not helpful to try to “cheat forward” and make the /etc/hosts adjustments before starting the template configuration script, because the script overwrites /etc/hosts. So:
root@192.168.56.43's password: [you should be able to access the VM via the IP you specified earlier] Last login: Tue Nov 20 21:51:13 2012 from 192.168.56.1 [root@natoth ~]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 192.168.56.43 natoth.local.org natoth [root@natoth ~]# echo "192.168.56.42 gkar.local.org gkar" >> /etc/hosts [root@natoth ~]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 192.168.56.43 natoth.local.org natoth 192.168.56.42 gkar.local.org gkar [root@natoth ~]# ping gkar [confirm that app server can see the database server] PING gkar.local.org (192.168.56.42) 56(84) bytes of data. 64 bytes from gkar.local.org (192.168.56.42): icmp_seq=1 ttl=64 time=1.94 ms 64 bytes from gkar.local.org (192.168.56.42): icmp_seq=2 ttl=64 time=0.505 ms --- gkar.local.org ping statistics ---
***RESUME Rapid Clone run in the first session*** (it should be waiting for you to enter the APPS user password)
-
Copyright (c) 2002 Oracle Corporation Redwood Shores, California, USA Oracle Applications Rapid Clone Version 12.0.0 adcfgclone Version 120.31.12010000.8 Enter the APPS password : apps Running: /u01/E-BIZ/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -cp /u01/E-BIZ/apps/apps_st/comn/clone/jlib/java:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/ojdbc14.jar oracle.apps.ad.context.CloneContext -e /u01/E-BIZ/apps/apps_st/comn/clone/bin/../context/apps/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile_21022.lst -stage /u01/E-BIZ/apps/apps_st/comn/clone 2> /tmp/adcfgclone_21022.err; echo $? > /tmp/adcfgclone_21022.res Log file located at /u01/E-BIZ/apps/apps_st/comn/clone/bin/CloneContext_1120230342.log Provide the values required for creation of the new APPL_TOP Context file. Target System Hostname (virtual or normal) [natoth] : <ENTER to take default> Target System Database SID : VIS Target System Database Server Node [natoth] : gkar Target System Database Domain Name [local.org] : <ENTER to take default> Target System Base Directory : /u01/E-BIZ Target System Tools ORACLE_HOME Directory [/u01/E-BIZ/apps/tech_st/10.1.2] : <ENTER to take default> Target System Web ORACLE_HOME Directory [/u01/E-BIZ/apps/tech_st/10.1.3] : <ENTER to take default> Target System APPL_TOP Directory [/u01/E-BIZ/apps/apps_st/appl] : <ENTER to take default> Target System COMMON_TOP Directory [/u01/E-BIZ/apps/apps_st/comn] : <ENTER to take default> Target System Instance Home Directory [/u01/E-BIZ/inst] : <ENTER to take default> Target System Root Service [enabled] : <ENTER to take default> Target System Web Entry Point Services [enabled] : <ENTER to take default> Target System Web Application Services [enabled] : <ENTER to take default> Target System Batch Processing Services [enabled] : <ENTER to take default> Target System Other Services [disabled] : <ENTER to take default> Do you want to preserve the Display [atgtxk-09:0.0] (y/n) : n Target System Display [natoth:0.0] : <ENTER to take default> 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 Checking the port pool 42 done: Port Pool 42 is free Report file located at /u01/E-BIZ/inst/apps/VIS_natoth/temp/portpool.lst Complete port information available at /u01/E-BIZ/inst/apps/VIS_natoth/temp/portpool.lst UTL_FILE_DIR on database tier consists of the following directories. 1. /usr/tmp 2. /usr/tmp 3. /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/outbound/VIS_gkar 4. /usr/tmp Choose a value which will be set as APPLPTMP value on the target node [1] : 1 Backing up /u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml to /u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml.bak Creating the new APPL_TOP Context file from : /u01/E-BIZ/apps/apps_st/appl/ad/12.0.0/admin/template/adxmlctx.tmp The new APPL_TOP context file has been created : /u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml Log file located at /u01/E-BIZ/apps/apps_st/comn/clone/bin/CloneContext_1120230342.log Check Clone Context logfile /u01/E-BIZ/apps/apps_st/comn/clone/bin/CloneContext_1120230342.log for details. Running Rapid Clone with command: perl /u01/E-BIZ/apps/apps_st/comn/clone/bin/adclone.pl java=/u01/E-BIZ/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u01/E-BIZ/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml showProgress contextValidated=true Running: perl /u01/E-BIZ/apps/apps_st/comn/clone/bin/adclone.pl java=/u01/E-BIZ/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u01/E-BIZ/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml showProgress contextValidated=true APPS Password : Beginning application tier Apply - Tue Nov 20 23:04:58 2012 /u01/E-BIZ/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true -Doracle.installer.oui_loc=/oui -classpath /u01/E-BIZ/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/ojdbc14.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/java:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/oui/ewt3.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/oui/share.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/oui/srvm.jar:/u01/E-BIZ/apps/apps_st/comn/clone/jlib/ojmisc.jar oracle.apps.ad.clone.ApplyAppsTier -e /u01/E-BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml -stage /u01/E-BIZ/apps/apps_st/comn/clone -showProgress APPS Password : Log file located at /u01/E-BIZ/inst/apps/VIS_natoth/admin/log/ApplyAppsTier_11202304.log \ 73% completed Completed Apply... Tue Nov 20 23:13:40 2012 Do you want to startup the Application Services for VIS? (y/n) [y] : y Starting application Services for VIS: Running: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adstrtal.sh -nopromptmsg You are running adstrtal.sh version 120.15.12010000.3 The logfile for this session is located at /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adstrtal.log Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adopmnctl.sh start script returned: **************************************************** You are running adopmnctl.sh version 120.6.12010000.5 Starting Oracle Process Manager (OPMN) ... opmnctl: opmn started. adopmnctl.sh: exiting with status 0 adopmnctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adopmnctl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adalnctl.sh start script returned: **************************************************** adalnctl.sh version 120.3 Checking for FNDFS executable. Starting listener process APPS_VIS. adalnctl.sh: exiting with status 0 adalnctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adalnctl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adapcctl.sh start script returned: **************************************************** You are running adapcctl.sh version 120.7.12010000.2 Starting OPMN managed Oracle HTTP Server (OHS) instance ... opmnctl: opmn is already running. opmnctl: starting opmn managed processes... adapcctl.sh: exiting with status 0 adapcctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adapcctl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adoacorectl.sh start script returned: **************************************************** You are running adoacorectl.sh version 120.13 Starting OPMN managed OACORE OC4J instance ... adoacorectl.sh: exiting with status 0 adoacorectl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adoacorectl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adformsctl.sh start script returned: **************************************************** You are running adformsctl.sh version 120.16.12010000.3 Starting OPMN managed FORMS OC4J instance ... Calling txkChkFormsDeployment.pl to check whether latest FORMSAPP.EAR is deployed... Program : /u01/E-BIZ/apps/apps_st/appl/fnd/12.0.0/patch/115/bin/txkChkFormsDeployment.pl started @ Thu Nov 29 07:20:21 2012 *** Log File = /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/rgf/TXK/txkChkFormsDeployment_Thu_Nov_29_07_20_20_2012/txkChkFormsDeployment_Thu_Nov_29_07_20_20_2012.log File "/u01/E-BIZ/apps/tech_st/10.1.3/j2ee/forms/applications/forms/formsweb/WEB-INF/lib/frmsrv.jar" exists. Proceeding to check the size... ============================================= *** Latest formsapp.ear has been deployed *** ============================================= Program : /u01/E-BIZ/apps/apps_st/appl/fnd/12.0.0/patch/115/bin/txkChkFormsDeployment.pl completed @ Thu Nov 29 07:20:21 2012 Perl script txkChkFormsDeployment.pl got executed successfully adformsctl.sh: exiting with status 0 adformsctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adformsctl.txt for more information ... .end std out. *** ALL THE FOLLOWING FILES ARE REQUIRED FOR RESOLVING RUNTIME ERRORS *** Log File = /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/rgf/TXK/txkChkFormsDeployment_Thu_Nov_29_07_20_20_2012/txkChkFormsDeployment_Thu_Nov_29_07_20_20_2012.log .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adoafmctl.sh start script returned: **************************************************** You are running adoafmctl.sh version 120.8 Starting OPMN managed OAFM OC4J instance ... adoafmctl.sh: exiting with status 0 adoafmctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adoafmctl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/adcmctl.sh start script returned: **************************************************** You are running adcmctl.sh version 120.17.12010000.5 Starting concurrent manager for VIS ... Starting VIS_1129@VIS Internal Concurrent Manager Default printer is noprint adcmctl.sh: exiting with status 0 adcmctl.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adcmctl.txt for more information ... .end std out. .end err out. **************************************************** Executing service control script: /u01/E-BIZ/inst/apps/VIS_natoth/admin/scripts/jtffmctl.sh start script returned: **************************************************** You are running jtffmctl.sh version 120.3 Validating Fulfillment patch level via /u01/E-BIZ/apps/apps_st/comn/java/classes Fulfillment patch level validated. Starting Fulfillment Server for VIS on port 9342 ... jtffmctl.sh: exiting with status 0 .end std out. .end err out. **************************************************** All enabled services for this node are started. adstrtal.sh: Exiting with status 0 adstrtal.sh: check the logfile /u01/E-BIZ/inst/apps/VIS_natoth/logs/appl/admin/log/adstrtal.log for more information ... Template configuration disabled.[Apps DBAs with experience running Vision might be a bit worried about this last step, because of the number of services that can be started by default. I found that the version delivered with the template is reasonably trim, with only a handful of concurrent managers configured. It could probably still be pared down, but the default config won't make your VM choke and fall over.]
That’s it! Almost…
A few more notes to get you on your way:
- Access the front-end of your shiny new E-Business Suite Release 12.1.3 instance at http://your_hostname:80nn, where nn is the value of the port pool that you chose during the Rapid Clone run (http://natoth.local.org:8042 in my example). The login to use is sysadmin, and the password is the same (but they’re pronounced differently)
- If you have JRE 7 installed on your workstation, you are going to have problems when launching the Oracle Forms interface, but the web interface (“Self Service”) should work without issues. If you’re interested in giving the Forms interface a whirl, you will need to roll back to JRE 6.
- To start and stop the apps the “quick and easy” way, you can use the scripts found in /u01 on each server: startapps.sh and stopapps.sh on the app server, and startdb.shs and stopdb.sh on the database server. These scripts need to be run as the software owner (oracle, in both cases), not root!
- The oracle user accounts are configured to prompt you to change default passwords whenever you log in:
**************************ATTENTION************************************** This is the first time you are logging in to the system as oracle user Oracle recommends that you change the default password for the oracle user Would you like to change the password now (YES/NO)? ************************************************************************* Enter YES or NO :
It’s not a bad idea to change the paswords, of course. If you’re happy with the defaults, however, then just answer NO to all the prompts, and issue the command
touch /home/oracle/.passchangedto avoid being prompted on subsequent logins. - To make sure that your environment variables are set correctly when connecting to the apps and db servers as oracle, add the following lines to the .bash_profile:
App server: echo ". /u01/E-BIZ/apps/apps_st/appl/APPSVIS_`hostname -s`.env" >> ~/.bash_profile DB Server: echo ". /u01/E-BIZ/db/tech_st/11.2.0.2/VIS_`hostname -s`.env" >> ~/.bash_profile
- More than likely, if you’re bothering to go through with all of this nonsense, you’re already somewhat familiar with E-Business Suite. If you’re new to the administrative side of EBS, however, I humbly recommend a review of Part 3 and Part 4 of the EBS install guide I wrote for oraclenerd.com a while back. It barely scratches the surface, but there’s enough there for some basic orientation. After that, you have lots of documentation reading ahead of you!
- Finally, if you aren’t going to use them in an Oracle VM server, and you’re satisfied with the state of your new Vision instance, you can now delete the original disk .img files and reclaim about 300GB of disk space. Just don’t delete the .vdi versions by mistake!
69 comments on “Build an E-Business Suite 12.1.3 Sandbox In VirtualBox With One Hour of Work”
Leave a Reply
You must be logged in to post a comment.

Great article, John! I’ll try the method very soon.
Pingback: Only Four Left… » Build an E-Business Suite 12.1.3 sandbox in VirtualBox with one hour of work
Great article , I have created a sandbox and it is working like a charm.
Great news, Naeem! I’m glad to know it works for someone else, too. :-) Thanks for sharing your results.
Pingback: Build an 11gR2 RAC cluster in VirtualBox in 1 Hour using OVM templates | The Pythian Blog
Hi John,
I couldn’t find any /etc/modprobe.conf file in my file system. I started system in rescue mode with Linux 5 update 6, as suggested by yourself.
Can I carry on without touching that missing file?
Many Thanks
Hi Ghulam,
/etc/modprobe.conf should definitely be there, it’s on the template’s filesystem. Can you double-check to make sure that you mounted the the template’s root volume with ‘chroot /mnt/sysimage’ after booting in rescue mode? If you did not take this step, you will find modprobe.conf in /mnt/sysimage/etc instead of /etc .
You do need to made the modifications to modprobe.conf; otherwise, the VM won’t boot, since it’s trying to load Xen kernel modules that aren’t appropriate for Virtualbox.
Hi John,
Thanks for coming back so shortly.
I successfully followed the steps through 1 to 5. It prompted to run chroot command and I did as following.
sh-3.2# chroot /mnt/sysimage
After issuing ‘chroot’, I noticed your prompt suddenly changed from ‘sh-3.2#’ to ‘[root@localhost ~]#’. I think I am missing something here and it messed up the file system. I am copying back the VM disks (ebs1211db.img & EBS121DBRoot) to restart through step 1 again. I will try to follow your advice, as a moderate Linux User.
Many Thanks
Hi Ghulam,
The prompt changed because I was following the “optional step” I mentioned at the end of the rescue mode instructions:
Optional step: start the sshd service and connect to the VM from your host via ssh, instead of performing the next few steps from the console of the VM. Use ‘ifconfig eth0? to find the IP address to use. (Note: as listed in the README in the template directory, the root password for both VMs is ‘ovsroot’)
# service sshd start
When I connected to the VM via ssh, the prompt for that session is set to root@localhost. I only did this because I prefer to use my normal terminal program instead of the VM console (and because it was easier to capture the command output for the blog post). It is not required.
I hope I caught you before you convert the image files again; the database image is huge. :-)
Hi John,
Database tier went fine. It is up and running now.
While deploying application tear, following error appeared after “Target System Port Pool [0-99] : 42″ above.
I opened another session to configure the network settings before providing ‘apps’ password and it pinged fine to db server.
================================
Error details:
73% completed
ERROR while running apply….
ERROR: Failed to execute /u01/E-BIZ/apps/apps_st/comm./clone/bin/adclone.pl
Please check logfile
Template configuration disabled
================================
I am sure I am not following something in between properly. Frustrating part is that I did it twice and finally got nowhere to go.
Many Thanks
Hi Ghulam,
I think the answer may be here:
ERROR: Failed to execute /u01/E-BIZ/apps/apps_st/comm./clone/bin/adclone.pl
That should be /u01/E-BIZ/apps/apps_st/comn
Please review your responses to the clone configuration script.
Hi John,
Finally I did it in fourth attempt. Actually the app user was locked by default and that was the reason failing over.
I am still struggling to find a was to see the dream screen on my laptop (i.e http://natoth.local.org:8042). It didn’t work from host machine. Now I have created another VM with ip 192.168.56.45 (brown.local.org). Still no success. Will update this blog once go through.
Finally that was a great blog and it went very smooth (if follow the instructions carefully). Many Thanks
Hi,
I completed all the deployment including client tier. Apps did not support Firefox but IE 7/8 is working fine. To achieve this, I created one more XP virtual machine and set it up with IP 192.168.56.45. Registered both the servers (gkar & natoth) in host file of xp. I did this because from Windows 7 host, it was taking much and I never wanted to ruin my new year eve.
Once again a big thanks to John.
Glad to hear you got it all worked out, Ghulam. : ) Have fun!
Thanks John for taking the time to do this. The guide worked a treat – very comprehensive. Having your very own virtual environment to try things out on (and to be able to bounce the app server to your hearts content ;) is a very valuable thing to have – especially when you get the time to try out things like Apex and ADF extensions in an eBiz context.
I am running VirtualBox 4.2.6 and cannot get it to copy and paste between the host and guest environments (even after successfully applying the Guest Additions (shared folders working though)) but everything else is working well. I’m now trying out Gnome.
All the best,
Steve Teale
My installation of Gnome has resolved my copy and paste (clipboard) issue whereas the X Windows install didn’t :)
Hi Steve,
Thanks for the feedback! I’m glad to hear that this worked out so well for you. Enjoy your new sandbox!
Mate, I owe you a beer for that.
Hi,
I am trying to test the Oracle Ebusiness suite on Virtual box. I followed all the steps upto “Install a new kernel”. I am stuck at this point. There doesn’t seem to be a repo file to get. I tried Yum update and there are no updates available.
I am using Oracle Linux 6 Update 3 and Oracle Ebusiness suite 12.1.3.
Can you help me how to get this resolved.
Harry – the Yum update function found updates for OEL5 update 6 as per this guide – I thought of going with a slightly more up to date base level Kernel but in the end stayed cautious and went with the OEL5.6 as detailed here – worked as per the guide. I’ll defer to those with more knowledge of OS patching than me if you really need the Linux 6 kernel update.
Hi Harry,
I tried to “keep it simple” for this guide and stay with the kernel that Oracle had originally targeted (OEL 5.6) when it built the VMs in the first place. There are a few other dependencies that you will need to satisfy if you want to upgrade the kernel to OEL6 in addition to all the other work being done to configure the EBS VMs.
It’s also worth noting that some components of EBS are not yet supported under OEL6 (see “Unsupported products” in Note 761566.1 )
Wonderful article John! ;)
I followed all the steps here and I was able to access to EBS directly after the installation; the login page and all…
The problem is, after a reboot of the APP VM, I have the following error at the step ‘Starting ebizapps’: /u01/E-BIZ/apps/apps_st/appl/APPSbydb_atgtxk02.env: line 31: /u01/E-BIZ/inst/apps/mydb_atgtxk02/ora/10.1.2/mydb/atgtxk02.env: No such file or directory
Any idea about that?
Jay,
I had the same issue. Basically the scripts supplied in /u01 for the APPS server refer to “. /u01/E-BIZ/apps/apps_st/appl/APPS*.env”. APPS*.env matches to APPSmydb_atgtxk02.env and APPSVIS_gkarapps.env. Hence the failure.
Please change the line as “. /u01/E-BIZ/apps/apps_st/appl/APPSVIS*.env” in both startapps.sh and stopapps.sh.
That should fix the issue.
Viktor, thanks very much for joining in to help out with this. :)
Viktor,
Thanks for the solution. I’m newbie to the EBS admin, trying to learn. Where stop apps.sh or startapps.sh located (directory)? Thanks
Hi Raj,
You’ll find the startapps and stopapps scripts in /u01 on the application server VM.
Just a note: Another way to get around the issue w/ the startapps.sh script is to remove the invalid environment files that are referenced in the error message. They’re not useful for us, since (as we’ve seen) they reference invalid paths and filenames:
[oracle@natoth ~]$ cd /u01/E-BIZ/apps/apps_st/appl
[oracle@natoth appl]$ rm *atgtxk02*
Hi John,
Great, well said. The solution fix that problem. Thanks
Hi Jay, Sorry to leave you hanging for so long on this. An embarrassing email client failure on my part was causing me to lose comment notifications. :( Looks like Viktor has been able to help you out, though; that is indeed what needs to happen. I’ll work on updating the content of the post to reflect the additional requirement.
Excellent article John and thanks for taking the time to put this together. Instance is up and ready to rock and roll :)
John,
Fantastic article. I had been trying to setup this by myself for quite a while but was not successful till now.
I had setup the VM’s with the Host-only and NAT adapters and am able to access the internet from the VM’s. How do I access the application from outside the LAN?
Best Regards.
Hi Viktor,
Thanks! I’m glad these instructions worked out for you.
Sorry for the delayed response. As I noted in an earlier comment, I missed a few email notifications. :( Regarding accessing the apps from your LAN (outside the host), that might be a bit tricky. I’m far from expert on Virtualbox networking, and I wanted to take the most simple route possible for my example. :)
It might be possible to set up some port-forwarding rules on your host to redirect to the Forms and Web interfaces of the EBS app tier, but based on a quick review of VBox forums and Google, it sounds a bit more complicated in practice than in theory (see https://forums.virtualbox.org/viewtopic.php?f=7&t=40109 as an example of what people have tried).
One other option is to set up Bridged networking for the middle tier VM, but as you can imagine, that will change the IP address of the interface. I can’t post contents of My Oracle Support notes here, but if you decide to try the Bridged network method, please review Note 751328.1 for instructions on what needs to happen when you change a middle tier’s IP address.
If I get time to experiment with this myself, I’ll post my results. If you get to it before I do, I’d love to see a blog post from you about it so we can all learn!
great step by step method.
Please help me I stuck at following instruction:
[root@localhost yum.repos.d]# wget http://public-yum.oracle.com/public-yum-el5.repo –2012-11-15 00:25:26–
http://public-yum.oracle.com/public-yum-el5.repo Resolving public-yum.oracle.com… 141.146.44.34 Connecting to public-yum.oracle.com|141.146.44.34|:80… connected.
HTTP request sent, awaiting response… 404 Not found.
I have checked I’m able to access http://public-yum.oracle.com/public-yum-el5.repo from any browser outside of VIRTUALBOX .
I checked my VIRTUALBOX setting which are same as presented in your screen shot , especially NAT.
Your help is greatly appreciated.
Thanks
Raj
Hi Raj,
That’s interesting. From the message you’ve posted, it’s clear that the VM is able to reach the public-yum server without a problem (the connection isn’t failing or timing out, the web server is just returning a 404). HAve you tried multiple times to retrieve the .repo file from inside the VM? it might have been a temporary failure on the repository webserver.
Another option, since you can get the file on your host, is to just download the file to your host and transfer it from there to your VM.
sorry, misstypes el5 as e15 Problem solved.
Thank You John for your kind reply.
Problem resolved.
“However, when I installed app server , everything going well until as per your step:
BIZ/inst/apps/VIS_natoth/appl/admin/VIS_natoth.xml -stage /u01/E-BIZ/apps/apps_st/comn/clone -showProgress APPS Password : Log file located at /u01/E-BIZ/inst/apps/VIS_natoth/admin/log/ApplyAppsTier_11202304.log
73% completed Completed
Apply… Tue Nov 20 23:13:40 2012 ”
at this stage,
I got error messages:
| 50% completed
ERROR while running Apply.
I have looked into the log file, it says
SQLPLUS Executable: /u01/E-BIZ/apps/tech_st/10.1.2/bin/sqlplus
SQL*Plus: Release 10.1.0.5.0 —————–blah—–
————– blah———-
ORA-12541: TNS: no listener
I have followed all the instruction (due diligently, I’m hoping) ..
So I’m unable to complete the final few steps in APPS server.
I too noticed, why oracle version 10 is mentioned here… any help is greatly appreciated.
Thanks
Raj
Hi Raj,
Glad you got the other issue worked out. The error you’re getting from AutoConfig is because the apps tier can’t contact the database tier listener. Please make sure that the Apps database and listener are up in your first VM, and that you’ve supplied all the correct information when configuring the network interfaces for both machines.
Regarding your other question: the Apps tier uses client version 10.1.0.5. Since all the application server components are version 10gAS 10.1.x, this isn’t unusual. :)
Hi,
Great article. Am looking to follow these instructions, as I’ve previously installed R12.1.1 by installing Oracle Linux, then using the rapid install available on the e-cloud.
I’ve noticed that you created a VM for the database and apps tier.
Is it possible, using your method to only create the one VM, integrating the DB and Apps tier into one?
Cheers,
Russell H.
Hi Russell,
I created two servers (1 db and 1 apps) because that’s the way the Vision templates are delivered, and I was trying to take the simplest possible approach. :) Using the templates as a starting point, it’s a little more complicated to get to a single-node instance than it is when installing from scratch using runInstaller. There are a couple of ways to accomplish what you’re asking, and none of them are particularly painful; they just would have made the “cookbook” version I’ve described here a bit more complicated. :) One of the easiest would be to stop after the db tier config, mount the disk containing the apps software on the db tier, and run Autoconfig manually to point to the additional disk.
Thank you for your response John. It’s greatly appreciated.
I might have a go at your suggestion, by mounting both disks into the one VM and see how that goes.
Again, thanks. Good work with the cookbook.
Cheers,
Russell H.
Hi,
First off many thanks for this article. I am a baby when it comes to virtualbox and linux os, that said here’s my question:
I’m nearing completion and have both my DB and APPS VM’s currently running (per your instructions for APP tier config)with the APPS tier awaiting me to enter the APPS password for the Rapid Clone. You mention the below:
***IMPORTANT*** AFTER network configuration, but BEFORE proceeding with any Rapid Clone steps, start a second session (do NOT interrupt the template configuration script) to add the IP and hostname for your database server to /etc/hosts. Otherwise, Rapid Clone won’t be able to find the db server to complete its configuration. It’s not helpful to try to “cheat forward” and make the /etc/hosts adjustments before starting the template configuration script, because the script overwrites /etc/hosts.
This my be silly, but what does it meant to start a “second session”? I thought maybe it meant opening another instance of virtualbox, but doing so still shows both VMs running, sam as the first instance.
Any help would be much appreciated…I feel so close :)
Thanks!
Mike
Hi Mike!
Glad you’re finding the post to be useful. By “start a second session,” I mean, “connect to your app tier server in a second shell session.” The easiest way to do this is to ssh to your apps tier host (192.168.56.43 in our working example) as root. If you don’t have an ssh client available, you can also just hit alt-f2 in your vm window to get a second login prompt on the same machine. In that case, alt-f1 will get you back to the first session, where the main configuration script is running.
Hope that helps; let me know if it doesn’t. :)
Hi John!
Thanks so much for the quick reply. That certainly helped and did the trick! Rapid clone on the APPS completed (I think) I wasn’t there when it finished. I wasn’t able to get to the front end login via my host setups, but was using the ie9 from the host OS (don’t know if I need to create another VM to run the browser like Ghulam mentions in his 12/28/12 comment.
I’ll poke around some more…..thanks again for the help!
Hey Mike,
You shouldn’t need another VM to access the front-end, though you will need to have the hostname and IP address of your app VM in the local hosts file on your windows server. There might be some issues with IE9 and the version of the Java plugin that’s expected by the Vision instance (I haven’t checked, since I’m a Mac nerd), but that should not prevent you from reaching the login screen and initial Navigator interface for EBS, since that’s all normal HTML stuff, not Oracle Forms.
Hi John,
Thanks for writing this article up though i feel its like pandora’s box :) It was through this article i found the pythian website and have spent a lot of time on it this last week.
I’m currently working through this but have already made plans to look at the RAC setup in 1 hour and found my way onto the RAC Attack website. Keep up the great work.
James
Hey James,
Glad to know my post could serve as the “gateway” to the Pythian blog. There’s tons of good stuff here, and as you’ve already seen, most of it is not mine. :-) Enjoy the reading and experimenting!
Hey John,
Get ready for another kudos…I reconfg’d both VMs and Tiers, updated my local host files, rolled back to JRE 6, and am now up and running Professional and OAF forms and all.
I will be reading your recommended articles 3 and 4, and owe you a round of digital beers.
Many thanks!
Mike
Awesome, Mike, glad to hear you have everything worked out. Raising my digital glass to you from the end of weekend. ;)
Hi,
great article,I am able to install R12.1.3 successfully. i faced the same issues encountered by gulam and raj. i continued and found the dbport being used as 1531(connection manager port) ,updated the contextfile and ran autoconfig which got completed successfully.
Thanks,
Many thanks John for your effort on this article. It’s magnificent and hugely useful and has enabled me to stand up a 12.1.3 instance after I had previously aborted on attempts to setup and manage the VM Manager / Server infrastructure – it’s just far too heavyweight for my requirements and available time!
I’m trying to apply the same techniques now to enable me to stand up a Virtualbox VM from the Enterprise Manager 12c VM template available from eDelivery – but I’m struggling to know which kernel to download and install. I don’t suppose you have any pointers on that one???
My goal is to get some experience using the E-Business Suite Grid control – particularly around the patching / release management functionality.
Thanks again for the article,
- Matt
Hi Matt,
Thanks, glad you found the article to be useful. I haven’t delved into the 12c templates myself, but the general method should be the same: if you can get the root disk for the tmeplate mounted in rescue mode, you can find the kernel version in a few places (/etc/issue and /boot/grub.conf). There may be a bit more cleanup that you’ll need to do in various OS config files to get the disk devices to be recognized. See my post on RAC OVM templates, step 7 for examples, but bear in mind that the 12c Cloud Control templates may have their own differences.
(Also, I’m replying from a tablet, and am far from my reference system at the moment, so please pardon any errors in paths, etc in the previous comment that may have resulted from under-caffeinated memory ;)
John, got it working – thanks again. Details of required changes are here:
http://an-ebs-blog.blogspot.com/2013/04/running-oracles-12c-enterprise-manager.html
Hi Matt,
Sorry to respond so late. That’s a great post! Thanks for taking the time to share your experience. I’m glad I was able to provide a kick-start; that’s how all this blogging/SocMed stuff is supposed to work. ;)
Hi John,
congrats for this article.
I downloaded the kernel but after trying to create initrd i get:
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
kernel x86_64 2.6.18-238.el5 ol5_u6_base 19 M
Transaction Summary
================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 19 M
Is this ok [y/N]: y
Downloading Packages:
kernel-2.6.18-238.el5.x86_64.rpm | 19 MB 01:17
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : kernel 1/1
Installed:
kernel.x86_64 0:2.6.18-238.el5
Complete!
[root@localhost yum.repos.d]# mkinitrd -v -f /boot/initrd-2.6.18-238.el5.img 2.6.18-238.e15
No modules available for kernel “2.6.18-238.e15″.
any suggestion?
Thanks
I guess I had a typo as I copied from your post and run successfully
Thanks
Accidentally I modified script /etc/init.d/oraclevm-template
PLease, can you post or send to me content?
Thanks!
Hi Francisco,
Since you haven’t provided contact information, I can’t send the file to you, but there’s a pretty simple solution. Since the file is on the root disk of the VM, it only takes a few minutes to re-convert the System.img file to a new VDI disk. From there, it’s your choice: you can start over with the VM configuration, or just mount the converted disk temporarily to extract the file you need.
Hi John,
thanks for your suggestion. All solved now :-)
Regards
I’m following your guideline but running into a small issue.
Before I run chroot /mnt/sysimage, I’m able to access the internet but when I give this command chroot /mnt/sysimage after that my ping stops working.
SO, I’m unable to download wget etc.
Could you suggest?
I tried with my office network and even outside network.
Nothing worked.
Thanks
Sandip Kumar
Hi Sandip,
Only thing I can think of here is that there’s an issue with the NAT interface (eth1) on your VM. Can you confirm that you set up the second network adapter as a NAT interface, not host-only or some other type?
Hi Sandip
I have encountered exactly the same issue.
The second network adapter is defined as NAT, the first Host-only.
After I chroot to /mnt/sysimage, I also had no internet connectivity at all. Further trials appeared to indicate that only DNS resolution is failing (but I don’t know why ?)
So I substituted
wget http://public-yum.oracle.com/public-yum-el5.repo with
wget http://141.146.44.34/public-yum-el5.repo
which worked.
I then editing public-yum-el5.repo so that [ol5_u6_base] also had
http://141.146.44.34/ rather than http://public-yum.oracle.com/
which also worked.
Regards
That’s a good tip, Mac, thanks for sharing! As to why DNS resolution is failing; I’m not sure why that would be. On the app server setup, I had to add a nameserver entry to resolv.conf, but I did not have to do that for the database template. If the nameserver entry in the template (8.8.8.8) isn’t resolving, you might try using a nameserver that’s known to work for your host to see if that helps.
John:
Thanks for taking the time to share your knowledge, much appreciated. I am hoping you would help me with a very vexing issue that had me stumped.
I followed your instructions to the letter, and at the last step, when I remove the disk from CD drive, and do a reboot, the image jsut wouldn’t boot. It keeps giving me the /dev/root not found, followed by a bunch of other not found errors and finally just hangs and sits there.
Would you know of why this may be happening. It seems to me that the Linux image can’t see the file system.
Hi Rajesh,
Without seeing the actual error messages, it’s difficult to be sure, but here is a guess: It sounds like your /etc/fstab file might not be set up correctly, and it doesn’t have an entry for the root device. Take a close look at this part of the instructions again:
Update /etc/fstab to disable automatic fsck on /u01, or you’ll be sitting for a little while at boot time:
[root@localhost ~]# vi /etc/fstab
“/etc/fstab” 8L, 608C written
[root@localhost ~]# grep /u01 /etc/fstab
LABEL=ebs1211db /u01 ext3 defaults 1 0
You should have multiple lines in /etc/fstab, not just one; in the instructions, I’m only showing the line that’s changed. :)
Another possibility is that you missed saving your changes to modprobe.conf, and it still has entries for the old Xen devices under scsi_hostadapter1.
Thanks for your response John. I have tried this a few more times without much success. The funny thing about this is when I copied a working image from a friend of mine ( who followed this very tutorial) and load it with my Virtualbox, it runs very smoothly. It leads me to believe I am missing something with the process.
I have used windows explorer to unzip the original files. I then used Cygwin to tar the unzipped files. I then used Vboxmange to convert the images. Mind you , all of these steps were run on a windows 2008 16GB server.
So, all said and done, I followed your instructions to the letter. I paid keen attention to the outputs to the commands, and here is where my results diverge from yours.
Creating initramfs
Looking for deps of module ehci-hcd
Looking for deps of module ohci-hcd
Looking for deps of module uhci-hcd
Looking for deps of module ext3: jbd
Looking for deps of module jbd
Found root device sda2 for LABEL=/
You see you have a “Found root device” message, I never got that. Mine says, “looking for” a dozen or so times, and says process finished.
My suspicion is that the virtual disks being created are not detected by Virtualbox for whatever reason. Normally I would have let this go, and continued using my buddy’s image, but he has customised the image already so there is a lot of cleaning up to do before I can use it. Besides the Computer Engineer inside is taking it personally that there is “something” unknown causing this error and he is pissed. :-)
Hi Rajesh,
Ok, with that info, I see two possible options:
1) Your virtual disks are attached to a controller that doesn’t match the expected device type of the disks (ahci). This is unlikely, since you’ve been able to attach your colleague’s disks without issues. Still, just to be thorough, what’s the output of ‘VBoxManage showvminfo’ for your VM?
2) Your /etc/fstab file is incomplete. Can you boot in rescue mode again, chroot /mnt/sysimage, and provide the output of ‘cat /etc/fstab’ and ‘cat /etc/modprobe.conf’?
There may be something else askew here, but those two things seem to be the most likely.
Showvminfo output
Name: OVM1213DB
Groups: /
Guest OS: Oracle (64 bit)
UUID: 43e19f82-926b-46f3-bc39-191875f813d0
Config file: C:UsersAdministratorVirtualBox VMsOVM1213DBOVM1213DB.vbox
Snapshot folder: C:UsersAdministratorVirtualBox VMsOVM1213DBSnapshots
Log folder: C:UsersAdministratorVirtualBox VMsOVM1213DBLogs
Hardware UUID: 43e19f82-926b-46f3-bc39-191875f813d0
Memory size: 512MB
Page Fusion: off
VRAM size: 12MB
CPU exec cap: 100%
HPET: off
Chipset: piix3
Firmware: BIOS
Number of CPUs: 1
Synthetic Cpu: off
CPUID overrides: None
Boot menu mode: message and menu
Boot Device (1): Floppy
Boot Device (2): DVD
Boot Device (3): HardDisk
Boot Device (4): Not Assigned
ACPI: on
IOAPIC: on
PAE: on
Time offset: 0ms
RTC: UTC
Hardw. virt.ext: on
Hardw. virt.ext exclusive: off
Nested Paging: on
Large Pages: on
VT-x VPID: on
State: running (since 2013-05-07T04:20:27.719000000)
Monitor count: 1
3D Acceleration: off
2D Video Acceleration: off
Teleporter Enabled: off
Teleporter Port: 0
Teleporter Address:
Teleporter Password:
Tracing Enabled: off
Allow Tracing to Access VM: off
Tracing Configuration:
Autostart Enabled: off
Autostart Delay: 0
Storage Controller Name (0): IDE
Storage Controller Type (0): PIIX4
Storage Controller Instance Number (0): 0
Storage Controller Max Port Count (0): 2
Storage Controller Port Count (0): 2
Storage Controller Bootable (0): on
Storage Controller Name (1): SATA
Storage Controller Type (1): IntelAhci
Storage Controller Instance Number (1): 0
Storage Controller Max Port Count (1): 30
Storage Controller Port Count (1): 2
Storage Controller Bootable (1): on
IDE (1, 0): G:Virtual MachinesOracleLinux.iso (UUID: e558a991-c26e-40e1-b5be-2376849b5f5c)
SATA (0, 0): G:OracleAppsOVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVMEBS121DBRoot.vdi (UUID: cb3d701c-506f-4233-aebe-4a4ce7dac5a3)
SATA (1, 0): G:OracleAppsOVM_OL5U6_X86_64_EBIZ12.1.3_DB_VIS_PVMebs1211db.vdi (UUID: 05770f3f-a3bd-468b-87f6-07d21c5d3f32)
NIC 1: MAC: 080027824743, Attachment: NAT, Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 1 Settings: MTU: 0, Socket (send: 64, receive: 64), TCP Window (send:64, receive: 64)
NIC 2: disabled
NIC 3: disabled
NIC 4: disabled
NIC 5: disabled
NIC 6: disabled
NIC 7: disabled
NIC 8: disabled
Pointing Device: PS/2 Mouse
Keyboard Device: PS/2 Keyboard
UART 1: disabled
UART 2: disabled
LPT 1: disabled
LPT 2: disabled
Audio: enabled (Driver: DSOUND, Controller: AC97)
Clipboard Mode: Bidirectional
Drag’n\'drop Mode: disabled
Video mode: 720x400x0
VRDE: disabled
USB: enabled
EHCI: disabled
USB Device Filters:
Available remote USB devices:
Currently Attached USB Devices:
Bandwidth groups:
Shared folders:
VRDE Connection: not active
Clients so far: 0
Guest:
Configured memory balloon size: 0 MB
OS type: Oracle_64
Additions run level: 0
Guest Facilities:
No active facilities.
That all looks ok to me, Rajesh, what about the modprobe.conf and /etc/fstab files?
John:
Thanks for your efforts to help. After my last comment, I looked at the modprobe, and fstab files and compared them with the ones from my buddy. They were identical. So, I was banging my head against the wall in frustration, and as any good IT guy would do, opened a bottle of scotch!!! :-)
I decided to start over, from the get go, and downloaded the files again, check-summed them vigorously, and followed the steps with extra bit of caution. And yes, I did see a teeny bit of warning message I overlooked before.
During the Yum install of the new kernel using “yum install kernel-2.6.18-238.el5″, there was this message “grubby fatal error unable to find a suitable template”. As to why I got this, I have no clue. I promptly googled the error message, and one guy on a linux forum advised to manually modify the grub.conf file. So I did, I used your grub.conf as a source, and manually added the required stanza to the file. I then crossed my fingers and rebooted the machine and viola…..it booted like a charm.
The moral of the lesson is I could do with a little more in-depth knowledge of Linux DBA stuff, and would have picked it a lot sooner. But, a Linux DBA not being my day job, I think I did ok ( but for the 10 days of my life and my prized bottle of single malt… :-) ).
All’s well now, and thanks for your original post and subsequent help. If we ever cross paths in the physical world, first round is on me.