Oracle E-Business Suite | Should you clone on your desktop using Virtual Machine?

Hello guys

A long thread name? Well the topic is vast, hence the long name. I’ve been dealing with Oracle EBS or applications R12 from last 9 years. Initially I was ONLY developing for the new infrastructure, that gradually changed to taking care of the whole instance.

Painfully, however definitely I did familiarize myself with Linux (RHEL) & the database, exposing myself to building systems with copies of EBS running for development & testing.

Our instance is approximately 650GB as on date, including both application stack and database & a cold backup is hardly 125GB in tar balls. I have attempted & succeeded to build the cloned instances on my home desktop machine many times, however the performance was a huge issue, forcing me to discard the setups quite often.

This time, I decided NOT to discard as my new desktop at home is a beast compared to my previous machine, that was neither less a best ;) & to figure out “something” that will address the “performance” bottleneck.

I created a new VM using Oracle VirtualBox with following specs

6 processors, 20GB memory & 2 fixed size VDI files (120GB, 600GB) respectively for application and database repositories. I was aware of a limitation already, I was setting up the VDI files on a Western Digital Green series 2TB drive! which spins at 5400RPM!

Well, everything went smooth & and I had the instance up and running in couple of hours time & this time, the response of the instance was awesome. I even boasted about finally winning over the “biatch” to my team & sat back feeling “too proud” for the moment.

Next day (Month End 30th April 2019)

I am all excited after figuring out a way to flush GNOME desktop environment & replace it with Xfce & new tricks…

Started the VM at home, started the EBS instance and tried to access the instance from the same machine. I couldn’t even get the login page…something was gravely wrong. I decided to check the performance monitor and found the following:

Slowly I was forced to recognize the terror! The Standard Concurrent manager was configured to process 25 requests at the same time with a cache of 5 & 30 seconds sleep between the requests. Our month end has a number of scheduled jobs + Gather schema statistics in the queue. My VM was breaking up with the I/O. My 2TB storage oriented disk was NOT spinning fast enough to provide the data for the processes & I was left with the BIGGEST question of the hour “Now what?”

I stopped the Concurrent manager, adjusted the processes to 5 for Standard manager & restarted the instance. Left the instance running whole night and 1st May morning, the instance was back to normal performance as whole the scheduled jobs were finished during the night.

Next day I added one 1TB SSD & moved the application & database VDI files over to it. I was able to get the login screen within 2-3 seconds once after the application started from the VM. I submitted number of create accounting and other resource hungry jobs, which were completed in few seconds time…

Now, my setup is ONLY for the sake of it. It doesn’t have many users, it is idle most of the time & almost every day I shutdown the desktop machine after a day’s usage. This might not be the scenario at a real TEST environment. You may need to implement archive logging & RMAN, those all requiring more space & faster access to storage. A Desktop has less resources & the ONLY positive element you are going to live with is the pleasure of building it & knowledge gained while fixing few new issues.

So, can you build a performance oriented R12 using Desktop environment, the short answer is yes. Does it worth the efforts? Well, definitely YOU are the ONE who have to answer it.

Follow the space & soon I will post a thread explaining the entire exercises. If you are in a hurry, you may refer this

The above article loosely explains how to clone R12 instance on Linux 7. However the same could be followed for Linux 6 as well (both RHEL & OEL)

regards,

rajesh

 

Advertisements

VirtualBox | Blank screen

Hi guys

Recently I’ve started experiencing a peculiar issue with my Windows 10 VM on Windows 10. Once the VM starts, the entire desktop for the VM is either a white/black blank screen, however the Preview pan for the VM shows the proper desktop as loaded.

I’ve gone through multiple such complaints those are posted at VirtualBox forum, however none of them with a proper solution. One of the solutions which works in all cases is turning off the 3D under display settings for the VM

The another “hack” which works in my case is using the HOST+f (full screen) key combinations. This forces the VM to occupy the entire monitor and somehow the desktop is loaded to the view. To return, press HOST+f key once again. If you don’t know what is the HOST key, it is the right “Ctrl” button. A standard keyboard now days should have two numbers of “Ctrl” keys. Once by the extreme left side of the keyboard and the 2nd one by the right hand side, just below the Enter & Shift keys.

VirtualBox guys were saying this issue is mostly seen with Nvidia graphics, which should be true as my work laptop has Intel+NVidia combo, where low power applications are using Intel as primary display.

Give it a try and let us know whether this hack brings back your VM desktop/display. Let us hope VirtualBox fixes (if it is a bug from their software) or wait for another update from Microsoft fixes it.

 

regards,

rajesh

Virtualize your desktop/laptop computer

Hello guys

This is my first post for the year 2016. Actually I have more drafts than posts this time with me and I truly hope that I will able to finish all of them in few weeks time. I’m sure you are interested about Oracle 12c products on Windows platform. Stay tuned, am on it

Coming back to the topic, I have a decent desktop computer that could be called a “half server” with the following configurations

  1. i7 processor 2nd generation
  2. 16GB DDR3 memory
  3. Around 4.5-5 terabyte of storage
  4. windows 10 64Bit Professional

I came across VMWare always 8 years back, liked it, and used it until they started charging for everything. Then Oracle VirtualBox (Earlier JAVA VirtualBox) started giving tough fight and it has become quite famous among developer communities where NOT many were truly able to afford VMWare’s paid software.

VMWare is altogether a different standard made for sophisticated environments, hence we will never compare both the products here. Our intention is to point you towards the advantages of using Virtual Machines that could less clutter your rig, give you better exposure to different technologies and a bit of networking etc

So our product of interest for this post is Oracle VirtualBox and we will see how we can utilize our existing desktops/laptops to run multiple virtual machines at the same time and thus utilize the available hardware to the maximum extends

So prior attempting to virtualize your existing computer, you need to know what kind of hardware you have and whether your computer meets minimum requirements to support virtualization.

So today is 3rd January 2016 & if your computer is 4 years old or less,  99.9% chances that your rig sure supports virtualization. Most of BIOS comes with the virtualization enabled by default.

Yet we should make sure that our computers support virtualization. Read the instructions provided here to find out whether your current processor supports virtualization OR

Just install Oracle VirtualBox and try to create a VM. You will immediately come to realize whether your rig really supports virtualization ;)

Well, that’s the brute force way of doing stuffs, adapt the one that defines you. If you are using Windows 10, I’ve noticed that many default installations enable Hyper-V by default. You need to disable it from add remove windows features console, so that you can create 64Bit VMs using Oracle VirtualBox. This post explains how to enable it, just do the opposite to disable it

Before anything else, you need to identify your processor, it’s capabilities. A nice comparison is available here for i3, i5 & i7 processors and definitely, the author favors i7 processors. Please spend few minutes to read about the differences between these three different processors.

A ripoff from http://www.pcadvisor.co.uk

What the difference between Core i3, i5, i7: Hyper-Threading

A thread in computing terms is a sequence of programmed instructions that the CPU has to process. If a CPU has one core, it can process only one thread at once, so can only do one thing at once (as before, it’s actually more complex than this, but the aim here is to keep it simple and understandable).

Hence, a dual-core CPU can process two threads at once, a quad-core four threads at once. That’s twice or four times the work in the same amount of time.

Hyper-Threading is a clever way to let a single core handle multiple threads.

A Core i3 with Hyper-Threading can process two threads per core which means a total of four threads can run simultaneously. The current Core i5 range doesn’t have Hyper-Threading so can also only process four cores. i7 processors do have it, so can process eight threads at once. Combine that with 8MB of cache and Turbo Boost Technology, and you can see why it’s good to choose a Core i7 over an i5 or i3.

Now, you should know how much physical memory you have. More, the merrier. Starting with Windows 7, computers started shipping with a minimum of 4GB as a standard. So, 4GB is enough for your OS and proposed virtualization? It’s going to be a tight fit. I will suggest an additional 4GB minimum, making the total physical memory 8GB so that you won’t have to sacrifice performance.

Finally the storage. Most of the branded PCs and laptops are coming with 500GB HDD as standard & extending the storage of a laptop is complex than of a desktop computer. For the later, all you need is another HDD which you can plug to one of the available SATA ports and configure. With a laptop, you may need to replace the HDD with a higher capacity one or use an external HDD for your additional storage requirements.

My current Virtualizations are mostly for Oracle technologies. I am a forms and reports developer, doing a certain level of .NET development & manage Oracle EBS R12 instances (“NOT a DBA”). Further I try almost all the database, weblogic versions & currently learning ASMM & RMAN. I have never attempted other areas of Oracle technologies, so my VMs run

  1. Oracle EBS R12 cloned instances
  2. Oracle database(s)
  3. Oracle weblogic server(s) with forms and reports (supported)

My EBS R12 VM has the following configuations

8GB memory out of 16GB physical, 4 processor out of 8 logical processors & almost 850GB of storage out of 4.5 terabyte total storage. Our instance has 400GB database size, 175GB application instance & the VM responds to requests instantaneously once after scheduled jobs are completed after a restart of the application. Usually I find the application responding better after 3 hours of settling down & the performance is assured throughout days and weeks until a restart.

My Weblogic, database VMs have the following configurations

4GB memory out of 16GB physical, 4 processor out of 8 logical processors & almost 250 GB of storage out of 4.5 terabyte total storage. I have my weblogic VM running 11gR2 64bit database as well. I get instant responses from both the Weblogic server and Oracle database 11gR2 from a client system, whenever accessed

Recommendations

Even though you can run multiple VMs at the same time, I would suggest, based on your hardware, limit them. Example

When I run my EBS R12 VM (8GB memory, 4 processors) my HOST computer is left with only 8GB free memory and 4 logical processors. If I start a Windows XP VM (2GB memory, 2 processors) to check the application performance, I feel my rig start slowing down and couple of times my computer shutdown with a high thermal point.

So make sure that you do tweaking to your VMs in order to make sure that your HOST doesn’t breakdown due to overload.

I always make sure that my HOST always has half of the hardware resources reserved for it, ie, 8GB memory, 4 processors regardless how many VMs I run at the same time! This is by using the VirtualBox console to alter the parameters of VMs before they are started

1

All the settings for the VMs could be altered using the settings, like increasing or decreasing the memory, processors, adding and removing storage devices etc.

2

Below you watch how fast my VM running EBS r12 responds to requests from another VM running Windows XP

Advantages of using Virtualization

The most important advantage for me is: I’ve a less cluttered HOST, said, I am NOT installing all the technologies to one OS, breaking it with conflicting versions of services and libraries and processing load.

Other advantages

  1. I can backup (copy) my entire “machine” and restore it during a total mess up or loss of data, rather than rebuilding the entire computer
  2. I get a sand-boxed environment & without fearing my attempts will break my main OS, continue the experiments
  3. I can make a VM, for example, running Oracle Enterprise Linux, copy and keep the OS installed disk somewhere and copy it to new VMs whenever required! Say, you install the OS only once and whenever you need to create a new VM with same OS, just duplicate the disk that has the OS! (Make sure you make a backup of the OS disk prior installing and configuring additional software into it)

Finally my suggestions for you, in case if you are considering to build your 1st VM using Oracle VirtualBox

  1. Majority of the Oracle geeks prefer Linux against Windows for database, weblogic deployments. So if you are NOT familiar with Linux, I suggest you start learning, regardless whether you FEEL very comfortable with it or NOT. You may be joining a firm that has reservations towards Windows OS running Oracle products, especially Oracle DBAs who have valid points like block corruptions, difficulties to recover from a crash are complex in the case of Windows OS.
  2. Install OS in a separate disk. 40GB dynamic size should be more than enough for any recent Linux distros. Avoid Linux 7 if you are truly new to Linux. Oracle Linux 6.7 should be your friend.
  3. Install 64Bit OS, so that you can take the advantage of your 64Bit processor and physical memory
  4. Install Oracle supported Linux distros (RHEL, OEL & certain versions of Debian. CentOS is not at all supported)
  5. Install the complete desktop, you are hardly going to complete the installations on pure CLI mode.
  6. Add SCSI interface to your VM and for Oracle database etc, use SCSI disks. I had a huge argument with VirtualBox guys about the performance difference between SATA VDI disks and SCSI VDI disks. I found the SCSI VDI disks performing better, however I was dismissed saying as far both the types are created on the same HDD, it must be more psychological :O
  7. Use 1TB 7200 RPM disks in the place of 2TB 5400 RPM disks. Later ones are best for data storage, when the previous ones give you better I/O. Create fixed size VDI for databases & applications, that means you will NOT able to increase the size of the disk once after created, however, it gives you faster I/O and better performance.
  8. Update your OS. As soon as the VM is built, update your OS prior installing database, weblogic etc. RHEL will NOT allow you to update the packages without subscription, hence Oracle Enterprise Linux should be your best choice of Linux distro. Please note, you shouldn’t use Oracle Linux in a production environment without acquiring sufficient licenses. Whatever I suggest here are limited for study/evaluation purposes and I don’t encourage any kind of illegal usage of software!
  9. Use Oracle’s pre-install packages to install database, EBS etc prerequisites rather than trying to download individual components from different download sites.
  10. Use shared folders between HOST and Guest (VM) so that you don’t have to sacrifice storage. Not just that, when you want to keep the backup of some files from the VM, the shared folders will make it as easy as possible
  11. Use bridged network, with Promiscuous Mode “Allow All” so that you can communicate with the VM from network
  12. 3
  13. Disable IPV6, firewall, SELinux on your Linux VM
  14. If you creating a Windows VM, I’m sure you better know how to configure your guest so that you can access it from a network.

Finally recommendations for a DESKTOP computer to try virtualization

  1. i7 processor + good quality heat sink. Your HOST and VMs are going to create loads of heat!
  2. 16GB Memory (DDR4 is the new standard, do not ignore it)
  3. 1×2 TB HDD

Few years back, such a configuration looked impossible for me, well, I saved bit by bit and made my dream computer. I’m sure you can also do it :) & trust me, a good computer opens a new world for you.

All the best and wish you all a very successful year ahead!

for Windows7bugs

rajesh

 

 

 

 

 

 

 

Windows 10 | Install Oracle Products

I’m sure you guys didn’t hear much from us for a long time. Actually we were been too busy testing Windows 10 to make sure that we can safely migrate our existing domain joined computers. Almost everything works as they were working on Windows 8.x and we confirm the following to you:

  1. You can install Oracle developer Suite 10g in Windows 10 Professional edition, following the same hacks provided as provided with the following post https://simpleoracle.com/2010/02/18/install-oracle-10g-onward-database-developer-on-windows-7/
  2. You can install Toad 10.x without any issues over Windows 10 without any specific hacks
  3. You can install 11g client 32Bit without any issues, by ignoring the only one warning at the installation startup
  4. You can get over with the Oracle VirtualBox NIC related issues by installing the test build 5.0 (download from VirtualBox test builds)

 

We are yet to test the developer suite 6i, once completed we will update this thread.

So, we hope you would be more than happy to know that, almost all legacy Oracle products are installable over Microsoft’s latest OS!!

 

regards,

for Windows7bugs

rajesh

VirtualBox | SATA vs SCSI

Recently I tried to build a cloned instance of our production instance over VirtualBox for some emergency issues faced by our inventory module. As this instance was supposed to be only accessed by me, I opted to use my desktop machine for the same. Throughout the last many years I built my own machines, choosing the best available hardware at the time of building them. My current desktop configuration is like following

i7 processor, 16GB memory, 2x1TB 7200 RPM HDD, 2x2TB 5200 RPM HDD, 1x500GB HDD for the OS (Windows 8.1 64Bit)

and throughout the years I built dozens of Virtual Machines using Oracle VirtualBox, mainly for testing un-certified Oracle & other products in a sand-boxed environment, against the crippled VMplayer, VirtualBox’s unrestricted interface supported almost everything I needed from a virtual environment.

So I built my R12 instance, that is around 600GB roughly in size with almost 4.5-5 years of business data, media etc. The following resources were dedicated for the fresh VM

  • 4 processors
  • 10GB memory
  • 40GB fixed size SATA VDI for the Operating System (I used both OEL 5 & OEL 7 64bit)
  • 1.2TB fixed size SATA VDI for the instance files
  • A dedicated D-Link 10/100MB NIC

Once the instance came online, I removed, cancelled all the scheduled concurrent programs, changed the database level parameters like job_queue_processes etc, however the lag experienced throughout the access attempts remained the same. Sometimes the HTML pages took 5-6 minutes to open, forms based modules took 8-10 minutes to open and timeouts were happening, frustrating me to the most possible levels

That is when I decided to give VMPlayer a try, I converted the existing VDI for the OS as vmdk and created a fresh 850 fixed size vmdk for the instance files and attached the same as SCSI to the VM. Did the complete clone process and to my utter surprise, the login page loaded within a minutes once after the instance was started!

This lead me to do various attempts with the fresh instance, I was able to shutdown the instance much faster, forms were opening faster, though LOVs having more than thousands of items were taking more time than anticipated

Once again, I created another fresh VM with VirtualBox and attached the disks created for VMplayer with it and repeated the tests. Well, I got the same performances from the new VM and somehow I came to a conclusion that, both VirtualBox and VMPlayer provide better I/O for SCSI interfaces compared to plain SATA emulators, ironically, the disks were created over SATA drives!

This difference you may not experience with VMs those are not hosting resource hungry applications like Oracle E-Business Suite. So, if you are attempting what I had described above and notice the differences, please update me with comments section.

 

regards,

 

rajesh

 

 

VirtualBox | CentOS/Oracle 7.x Linux| Memory cannot be read/write error

Hi guys

Many times I pointed out the importance of testing technical previews, latest releases of other OS using VirtualBox as the early releases are prone to have frustrating bugs, which are many time specific to a particular hardware or distro. I was playing around with Oracle linux 7, which is a forked version of Red Hat Linux 7, named Unbrekable Linux by Oracle. Relatively I hardly had many issues with guest OS in recent times while tested over VirtualBox  and with OEL 7 guest, all of a sudden I started getting memory read errors like the one you can find with below image,

7-vb-memory error

once after the guest addons were installed. Although the change log of VirtualBox for 4.3.28 states the 3D bugs fix,  3D acceleration is the main culprit for the guest crashing once after a login attempt.

VirtualBox change log: https://www.virtualbox.org/wiki/Changelog

So, all you need to do is to disable the 3D acceleration for the guest using the settings panel. Well, unless you are going to use your VM for some “gaming” ;) I think this temporary fix should get you online with your CentOS/OEL 7.1 VM box!

Additional reading: https://www.virtualbox.org/ticket/13332

regards,

 

Windows 10 on Virtual Box | Unable to allocate and lock memory | Virtualbox Guru Meditation error

As Microsoft is continuously updating their technical preview for Windows 10, we are sure many of you out there are trying out the latest release 10074, that adds(?) many features. As a precaution, we always use Oracle VirtualBox for testing such releases and never had more issues than with the pre-releases of Windows 10!

One of the regular errors we came across were about “Unable to allocate and lock memory” while the VM started, and gradually pops up another window titled “Guru Meditation”, asking us to view the log files (/me chuckles, when Google can do that for us). We came across a wonderful post, that explains how to resolve this particular dreadful situation with VMs!

and here we are linking the same POST for you! Enjoy and Enjoy your Windows 10 VM

regards,

rajesh

Oracle R12 Vision Instance 12.1.3 Cloning – step by step instructions

*General Note: The below instructions, which were successfully completed and tested are from the prospective of a person who do not have any previous knowledge about cloning, advance level Linux administration etc. If you find it too amateurish, please let us know with the comments session and corrections. We will be more than happy to amend the post.

Most probably few of the errors we received with write permissions missing to /tmp for applprod user should because of missing Rapid Clone patches.

Prerequisites

Oracle VirtualBox (We don’t support a physical system as detailing a cloning for a Linux system wouldn’t fit entirely within the discussed topic)

Minimum 4GB of memory to spare for the Virtual Machine

500GB of free hard disk space (If you don’t have additional 500GB, you can use the same source machine for cloning, by backing up the necessary folders and after removing the E-BIZ folder entirely)

Step #1

Create a folder on a partition where you have 500GB or more space and call it “ebiznew”

Copy and paste both System.vdi and ebs1211db.vdi from your other virtual machine folder, where you have a properly working Vision Instance (We are not going to clone the existing VM using the VirtualBox clone utility)

Change the uuid for both System.vdi and ebs1211db.vid

[sourcecode language="text" padlinenumbers="true"]
E:\ebiznew>"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" internalcommands
sethduuid System.vdi
UUID changed to: 5dbdd6e3-c8ff-431d-bdd8-edf31c3012fb

E:\ebiznew>"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" internalcommands
sethduuid ebs1211db.vdi
UUID changed to: 05068998-dc4d-46ef-8f8f-1ae07b786bfa
[/sourcecode]

Now start creating a new VM using VirtualBox and attach System.vdi and ebs1211db.vdi under SATA

As we have changed the kernel to NON Xen, you should able to boot up the VM immediately

Once logged in as “root”, let us drop the existing E-BIZ/* folders for cloning purpose

As root

[sourcecode language="bash"]
#cd /u01

#rm -rf *

[/sourcecode]

Sit back, it will take a while for the system to delete the folders and contents

Once the folders and file are deleted create a new folder called “backup” within /u01

[sourcecode language="bash"]
#mkdir backup
[/sourcecode]

 

Change the hostname, IP address etc for the new VM

Make sure from your HOST box you can ping the new VM by both hostname and IP address

 

*Special note: If you have a total of 8GB(only) memory with your box, you have to change the memory allocations for both your VMs (one which already has the Vision instance configured & the new VM on which you are going to execute the cloning) to 2GB each

Boot up you VM with Vision instance configured and running (Aka source system)

Edit /etc/hosts file and add the IP address and hostname of your new VM

As root

vi /etc/hosts

192.168.0.50 ebs1213.rhome.com ebs1213

Where ebs1213 is the new hostname you have set for the new VM. Adjust it according to the name you have chosen

Save and exit the vi editor and try to ping the new VM from your source VM

ping ebs1213.rhome.com

Make sure you are getting ping replies from the new VM

 

Start dbTier and appsTier sequentially and make sure that you can access the application

Step #2

Now we are all set to “try” our first cloning process

Prior cloning we MUST prepare the source system for cloning. Hence switch user to “oracle” and switch to following folder (Adjust the path according to your environment)

cd /u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis

$perl adpreclone.pl dbTier

(provide the apps password when it is promoted)

The pre-clone should complete within few minutes time, and if there are no errors (in our case), we can proceed to prepare the application tier now

As user “Oracle” switch to

/u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts

$perl adpreclone.pl appsTier

(provide the apps password when it is promoted)

Let the pre-clone procedure complete.

Once the pre-clone procedure has been completed, shutdown the application tier and database tier sequentially

Check for FNDLIBR processes, until the count reaches two(2)

$ps –ef | grep FNDLIBR | wc –l

Now we have to copy the database and application tier folders to our target VM. For our exercise we will create individual tar.gz files for both database and application folders

We will create a new folder with /u01 on the source system

As root

[sourcecode language="text"]
#cd /u01

#mkdir backup

#cd backup

# time tar -zcvf db.tar.gz /u01/E-BIZ/db/*

This will create a new tar ball with the name “db.tar.gz” inside /u01/backup folder

Sit back and relax, it is going to take some time

Once the tar process finishes, we will attempt to create a tar ball for the application tier

#time tar -zcvf apps.tar.gz /u01/E-BIZ/apps/apps_st/*

The entire tar processes may take more than couple of hours time (Depending upon the resources you have allocated for the source VM)
[/sourcecode]

Now we will copy the tar files created to our target system using SCP

As root, from /u01/backup folder

#scp –pr db.tar.gz root@ebs1213:/u01/backup

You will be given a warning, accept the prompt. After that, you will be asked to enter the root password for your target machine, in our case “ebs1213”

If your vision instance is fresh without much data added after it was put online, the tar ball will be something less than 30GB, and the transfer should complete within 16-20 minutes time

Once the database tar ball transferred you can proceed with transferring your application tar bar

#scp –pr apps.tar.gz root@ebs1213:/u01/backup

Amount of time required will vary depending upon the resources available. Wait until the transfer completes

Now you can shutdown your source system (So that you can release the memory/processors allocated and increase them with your new VM on which we will continue with the cloning process)

Shutdown your new VM (Target system)

Make changes to your new VM with more memory, processors etc

Boot up the new VM and logon to the VM as root

Step #3

We are going to MIMIC a production instance with our new VM (Please note, do not attempt to violate Oracle’s licensing agreements, our intention is not to help you with doing something which is against Oracle’s licensing terms and Vision instance usage)

We will create two new users and add them to existing oinstall and dba groups

As root

Now switch to /u01 folder (or other mount point as you have created it)

We will create a number of folders, which will be entirely different from the Vision Instance structure

[sourcecode language="bash"]
#mkdir oraprod

#cd oraprod

#mkdir PROD

#cd PROD

#mkdir db

#cd /u01

#mkdir applprod

#cd applprod

#mkdir PROD

#cd PROD

#mkdir apps

[/sourcecode]

Now we will change the ownership & permissions for /u01/oraprod & /u01/applprod

As root

[sourcecode language="bash"]
chown -R oraprod:dba /u01/oraprod

chmod -R 777 /u01/oraprod

chown -R oraprod:dba /u01/applprod

chmod -R 777 /u01/applprod

[/sourcecode]

Now we will extract the tar balls to appropriate folders

#cd /u01/oraprod/PROD/db

#time tar –zxvf /u01/backup/db.tar.gz

Approximately the extraction process will take around 3 hours for the database tar ball and around one hour for the application tar ball

Once the database tar ball extracted, we will start extracting the application tar ball

cd /u01/applprod/PROD/apps

time tar –zxvf /u01/backup/apps.tar.gz

Now we can start the actual cloning process

Step #4 Cloning the database tier

[sourcecode language="bash"]
[root@visclone u01]# su - oraprod
[oraprod@ebs1213 ~]$ cd /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin
[oraprod@ebs1213 bin]$

#
[root@visclone u01]# su - oraprod
[oraprod@ebs1213 ~]$ cd /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin
[oraprod@ebs1213 bin]$ perl adcfgclone.pl dbTier

                     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 :

Running:
/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre/bin/java -Xmx600M -cp /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/java:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/xmlparserv2.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojdbc5.jar oracle.apps.ad.context.CloneContext -e /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/../context/db/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile_3095.lst -stage /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone  2> /tmp/adcfgclone_3095.err; echo $? > /tmp/adcfgclone_3095.res

Log file located at /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1007224741.log

Provide the values required for creation of the new Database Context file.

Target System Hostname (virtual or normal) [ebs1213] :

Target Instance is RAC (y/n) [n] :

Target System Database SID : PROD

Target System Base Directory : /u01/oraprod

Target System utl_file_dir Directory List : /usr/tmp

Number of DATA_TOP's on the Target System [1] : 1

Target System DATA_TOP Directory 1 [/u01/E-BIZ/db/apps_st/data] : /u01/oraprod/PROD/db/apps_st/data

Target System RDBMS ORACLE_HOME Directory [/u01/oraprod/db/tech_st/11.1.0] : /u01/oraprod/PROD/db/tech_st/11.2.0.2

Do you want to preserve the Display [appvis:0.0] (y/n)  : n

Target System Display [ebs1213: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

[/sourcecode]

Database cloning will kick start now, and should complete without throwing errors. Some sample outputs like below

[sourcecode language="text"]
Checking the port pool 42
done: Port Pool 42 is free
Report file located at /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/temp/portpool.lst
Complete port information available at /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/temp/portpool.lst

Creating the new Database Context file from :
  /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/template/adxdbctx.tmp

The new database context file has been created :
  /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/PROD_ebs1213.xml

Log file located at /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1007224741.log
Check Clone Context logfile /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/CloneContext_1007224741.log for details.

Running Rapid Clone with command:
perl /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/adclone.pl java=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre mode=apply stage=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/PROD_ebs1213.xml showProgress contextValidated=true
Running:
perl /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/adclone.pl java=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre mode=apply stage=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/PROD_ebs1213.xml showProgress contextValidated=true
APPS Password :

Beginning database tier Apply - Mon Oct  7 22:50:46 2013

/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true  -Doracle.installer.oui_loc=/u01/oraprod/PROD/db/tech_st/11.2.0.2/oui -classpath /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/xmlparserv2.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojdbc5.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/java:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/OraInstaller.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/ewt3.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/share.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/oui/srvm.jar:/u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone/jlib/ojmisc.jar   oracle.apps.ad.clone.ApplyDBTier -e /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/PROD_ebs1213.xml -stage /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/clone   -showProgress
APPS Password : Log file located at /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/log/PROD_ebs1213/ApplyDBTier_10072250.log
  /      0% completed
[/sourcecode]

Once the cloning completes without errors, the database instance will start automatically and you can proceed with cloning the application tier

Step #5 Cloning the application tier

[sourcecode language="text"]
[oraprod@visclone u01]# su - oraprod
[applprod@ebs1213 ~]$ cd /u01/oraprod/PROD/apps/apps_st/comn/clone/bin
[applprod@ebs1213 bin]$

[applprod@ebs1213 bin]$ perl adcfgclone.pl appsTier

                     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 :

Running:
/u01/applprod/PROD/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -cp /u01/applprod/PROD/apps/apps_st/comn/clone/jlib/java:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/ojdbc14.jar oracle.apps.ad.context.CloneContext -e /u01/applprod/PROD/apps/apps_st/comn/clone/bin/../context/apps/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile_11049.lst -stage /u01/applprod/PROD/apps/apps_st/comn/clone  2> /tmp/adcfgclone_11049.err; echo $? > /tmp/adcfgclone_11049.res

Log file located at /u01/applprod/PROD/apps/apps_st/comn/clone/bin/CloneContext_1007230323.log

Provide the values required for creation of the new APPL_TOP Context file.

Target System Hostname (virtual or normal) [ebs1213] :

Target System Database SID : PROD

Target System Database Server Node [ebs1213] :

Target System Database Domain Name [rhome.com] :

Target System Base Directory : /u01/applprod

Target System Tools ORACLE_HOME Directory [/u01/applprod/apps/tech_st/10.1.2] : /u01/applprod/PROD/apps/tech_st/10.1.2

Target System Web ORACLE_HOME Directory [/u01/applprod/apps/tech_st/10.1.3] :  /u01/applprod/PROD/apps/tech_st/10.1.3

Target System APPL_TOP Directory [/u01/applprod/apps/apps_st/appl] :  /u01/applprod/PROD/apps/apps_st/appl

Target System COMMON_TOP Directory [/u01/applprod/apps/apps_st/comn] :  /u01/applprod/PROD/apps/apps_st/comn

Target System Instance Home Directory [/u01/applprod/inst] :  /u01/applprod/PROD/inst      
Target System Root Service [enabled] :

Target System Web Entry Point Services [enabled] :

Target System Web Application Services [enabled] :

Target System Batch Processing Services [enabled] :

Target System Other Services [disabled] :

Do you want to preserve the Display [appvis:0.0] (y/n)  : n

[/sourcecode]

We had an error, applprod user failing to write to /tmp folder

Target System Display [ebs1213:0.0] :
RC-50004: Error occurred in CloneContext:
AC-00005: No write permissions for creating the Context file – /tmp/temp.xml
Raised by oracle.apps.ad.context.AppsContext
Check Clone Context logfile /u01/applprod/PROD/apps/apps_st/comn/clone/bin/CloneContext_1007230323.log for details.

ERROR: Context creation not completed successfully.
For additional details review the file /tmp/adcfgclone_11049.err if present.

 

Hence I have changed the ownership & permissions for  /tmp folder

[sourcecode language="bash"]
login as: root
root@ebs1213.rhome.com's password:
Last login: Mon Oct  7 16:18:34 2013 from 192.168.0.200

[root@ebs1213/]# ls -al | grep tmp
drwxrwxrwx   7 root   root     20480 Oct  7 23:06 tmp
[root@ebs1213/]# chown -R applprod:dba /tmp
[root@ebs1213/]# chmod -R 777 /tmp
[root@ebs1213/]# ls -al | grep tmp
drwxrwxrwx   7 applprod dba      20480 Oct  7 23:06 tmp
[root@ebs1213/]#
[/sourcecode]

Re-run the application tier cloning as user “applprod”

[sourcecode language="text"]
Checking the port pool 42
done: Port Pool 42 is free
Report file located at /u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/out/portpool.lst
Complete port information available at /u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/out/portpool.lst

UTL_FILE_DIR on database tier consists of the following directories.

1. /usr/tmp
2. /usr/tmp
3. /u01/oraprod/PROD/db/tech_st/11.2.0.2/appsutil/outbound/PROD_ebs1213
4. /usr/tmp
Choose a value which will be set as APPLPTMP value on the target node [1] : 1

Creating the new APPL_TOP Context file from :
  /u01/applprod/PROD/apps/apps_st/appl/ad/12.0.0/admin/template/adxmlctx.tmp

The new APPL_TOP context file has been created :
  /u01/applprod/PROD/inst/apps/PROD_ebs1213/appl/admin/PROD_ebs1213.xml

Log file located at /u01/applprod/PROD/apps/apps_st/comn/clone/bin/CloneContext_1007233459.log
Check Clone Context logfile /u01/applprod/PROD/apps/apps_st/comn/clone/bin/CloneContext_1007233459.log for details.

Running Rapid Clone with command:
perl /u01/applprod/PROD/apps/apps_st/comn/clone/bin/adclone.pl java=/u01/applprod/PROD/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u01/applprod/PROD/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u01/applprod/PROD/inst/apps/PROD_ebs1213/appl/admin/PROD_ebs1213.xml showProgress contextValidated=true
Running:
perl /u01/applprod/PROD/apps/apps_st/comn/clone/bin/adclone.pl java=/u01/applprod/PROD/apps/apps_st/comn/clone/bin/../jre mode=apply stage=/u01/applprod/PROD/apps/apps_st/comn/clone component=appsTier method=CUSTOM appctxtg=/u01/applprod/PROD/inst/apps/PROD_ebs1213/appl/admin/PROD_ebs1213.xml showProgress contextValidated=true
APPS Password :

Beginning application tier Apply - Mon Oct  7 23:36:52 2013

/u01/applprod/PROD/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true  -Doracle.installer.oui_loc=/oui -classpath /u01/applprod/PROD/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/ojdbc14.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/java:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/oui/ewt3.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/oui/share.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/oui/srvm.jar:/u01/applprod/PROD/apps/apps_st/comn/clone/jlib/ojmisc.jar  oracle.apps.ad.clone.ApplyAppsTier -e /u01/applprod/PROD/inst/apps/PROD_ebs1213/appl/admin/PROD_ebs1213.xml -stage /u01/applprod/PROD/apps/apps_st/comn/clone    -showProgress
APPS Password : Log file located at /u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/log/ApplyAppsTier_10072336.log
  -      0% completed

  Completed Apply...
Mon Oct  7 23:43:12 2013


Do you want to startup the Application Services for PROD? (y/n) [y] : y

Starting application Services for PROD:
Running:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/scripts/adstrtal.sh -nopromptmsg

You are running adstrtal.sh version 120.15.12010000.3

The logfile for this session is located at /u01/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adstrtal.log
Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adopmnctl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/scripts/adalnctl.sh start
script returned:
****************************************************

adalnctl.sh version 120.3

Checking for FNDFS executable.
Starting listener process APPS_PROD.

adalnctl.sh: exiting with status 0


adalnctl.sh: check the logfile /u01/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adalnctl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adapcctl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adoacorectl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/apps/apps_st/appl/fnd/12.0.0/patch/115/bin/txkChkFormsDeployment.pl started @ Mon Oct  7 23:44:32 2013

*** Log File = /u01/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/rgf/TXK/txkChkFormsDeployment_Mon_Oct_7_23_44_31_2013/txkChkFormsDeployment_Mon_Oct_7_23_44_31_2013.log

File "/u01/applprod/PROD/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/applprod/PROD/apps/apps_st/appl/fnd/12.0.0/patch/115/bin/txkChkFormsDeployment.pl completed @ Mon Oct  7 23:44:32 2013

Perl script txkChkFormsDeployment.pl got executed successfully



adformsctl.sh: exiting with status 0

adformsctl.sh: check the logfile /u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/rgf/TXK/txkChkFormsDeployment_Mon_Oct_7_23_44_31_2013/txkChkFormsDeployment_Mon_Oct_7_23_44_31_2013.log

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adoafmctl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/scripts/adcmctl.sh start
script returned:
****************************************************

You are running adcmctl.sh version 120.17.12010000.5

Starting concurrent manager for PROD ...
Starting PROD_1007@PROD Internal Concurrent Manager
Default printer is noprint

adcmctl.sh: exiting with status 0


adcmctl.sh: check the logfile /u01/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adcmctl.txt for more information ...


.end std out.

.end err out.

****************************************************


Executing service control script:
/u01/applprod/PROD/inst/apps/PROD_ebs1213/admin/scripts/jtffmctl.sh start
script returned:
****************************************************

You are running jtffmctl.sh version 120.3

Validating Fulfillment patch level via /u01/applprod/PROD/apps/apps_st/comn/java/classes
Fulfillment patch level validated.
Starting Fulfillment Server for PROD 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/applprod/PROD/inst/apps/PROD_ebs1213/logs/appl/admin/log/adstrtal.log for more information ...

[applprod@ebs1213 bin]$

[/sourcecode]

Rolled back /tmp ownership

[sourcecode language="bash"]
[root@ebs1213 /]# chown -R root:root /tmp
[root@ebs1213 /]# ls -al | grep tmp
drwxrwxrwx   7 root   root     28672 Oct  7 23:44 tmp
[root@ebs1213 /]#
[/sourcecode]

Try to access your newly cloned instance through http://ebs1213.rhome.com:8042/

You should be provided with a login page. Use either sysadmin or other user you have created earlier, change site name etc and enjoy!

I hope you have enjoyed another “beginner” post form windows7bugs

for windows7bugs

rajesh

Oracle E-Business Suite R12 12.1.3, build a Vision Instance using Oracle Virtual Box

 

A year back, following the Oracle’s blog, got excited and got engaged with a tedious task to setup a Vision instance for Oracle R12 12.1.3 using the templates.

Against all the warnings and negative responses, I did manage to setup Oracle VM Manager and other repositories using Oracle Virtual Box and put the Vision instance online.

The efforts were unjustified as the tasks involved were supposed to be carried out by a seasoned DBA with advance level Linux knowledge. Apparently I lost the appetite to continue with the solution and discarded the entire setup along with the data repositories.

Recently, I came across the below article

http://www.pythian.com/blog/build-ebs-sandbox-1hr/

which explained a different approach towards setting up a Vision instance using the same Oracle templates for R12 12.1.3 and decided to give it a try.

I must say, John Piwowar @ pythian has put everything in place, so that a novice like me could follow the instructions without making any kind of mistakes and get the vision instance up and running.

Once the vision instance was up and running, I started wondering whether I could try something further. Oracle’s template based approach was involving two independent virtual machines serving two different roles

  1. One server providing the database node
  2. Second server providing the application node

At work I am used to deal with a single server hosting both database and application nodes which makes few things like server administration, OS patching etc easier.

Hence I started pondering the possibilities of merging both database and application servers into a single server.

Right now, after around 48 hours, I have successfully managed to merge both the nodes into a single server (virtual) and online with the Vision instance & I am going to share the entire procedures in detail so that you can also!

PART-1 Collect and arrange your stuff

 

Minimum Requirements

  • A desktop/laptop machine with minimum 4GB free RAM for the virtual machine. That means you must have 6-8GB base memory
  • Loads of free storage space. If your fixed disk doesn’t have minimum 500GB free disk space, I recommend you to buy a 1T external HDD (the read/write speed may be compromised, USB3 could be a minor exception)
  • Access to a very fast internet connection to download the templates from Oracle e-delivery portal

image

image

You have to download 11 files, 38GB by continuing

image

Pythian post describes a method to use wget to download all the files listed, using a file list input parameter, from a OSx/Linux host.

I downloaded the above files from a Windows machine, and must say it was a painful process.

PART-2 Convert the template files into .img and then .vdi files

I am not going to repeat the steps which are already clearly narrated with pythian article. Only suggest that, don’t use a Windows machine and 7zip to do all the unzip and joining the files. You use a Linux Virtual machine to do those jobs. It would be faster, and it would be the best. I created a Oracle Linux 6 VirtualBox to do those jobs by sharing the downloads folder with the Virtual Machine.

convert img-vdi

PART-3 Backup everything!

So once the img files are converted as .VDI files, the most import thing is to backup the .VDI files to somewhere else! Yes, you may corrupt the sources available inside the .VDI files while attempting to setup the Vision instance. If you don’t have a backup, you have to go through the painful process of unzipping, combining and converting the .img files to .VDI formats. Trust me, this exercise could easily run into 4-6 hours time, depending upon the efficiency of your hardware.

PART-4 1st Gear, slow start

Create a folder called “myvision” (name it anything)

Copy both System.vdi and ebs1211db.vdi (While converting the .img files I gave the .VDI files the same image names) from your database template folder or backup folder to “myvision” folder

The actual size of ebs1211db.vdi over Windows environment will be approximately 220GB, which will be few GB smaller over Linux environment.

As we are planning to host both the dB and Application tier from a single server, we MUST increase the size of ebs1211db.vdi

Let me explain why, prior going ahead

Oracle’s approach towards the VM setup was purely involving two servers(virtual) and both database & application files are placed on /u01 mount point

ie, Database server has a mount point called /u01 and so does the application server

All the clone scripts available for both database & applications servers have certain scripts hardcoded with /u01 as base path. Hence, one could get into useless activities of editing scripts to change the hardcoded base path values to adjust the cloning (Which was done successfully)

PART-5 2nd Gear, Resize ebs1211db.vdi

Fortunately, ebs1211db.vdi doesn’t have multiple partitions. Hence resizing the volume is pretty easier using Virtual Box command line tools & free linux tools like Gparted

Switch to command prompt (if you are on Windows 7 & 8 make it elevated)

Switch to “myvision” folder

C:\Users\rthampi>cd D:\myvision

Issue the following command

D:\myvision>”C:\Program Files\Oracle\VirtualBox\VBoxManage.exe” modifyhd ebs1211db.vdi –resize 460800

With the above command, the ebs1211db.vdi size will be modified as 450GB! and this is done in a fraction of moment

Refer below link for more details like how to use Gparted for resizing a .VDI file which is used with a Linux host

http://derekmolloy.ie/resize-a-virtualbox-disk/

PART-6 3rd Gear, We are on the go

Release ebs1211db.vdi from the Gparted Virtual Machine. Let us start creating a Virtual Machine using Oracle’s VirtualBox. Please note we are using the latest version of VirtualBox, if you are not, please update prior you move ahead with rest of the exercises

Please check the VM configurations I made for my Vision Instance Server with the below image

image

You can see that I have attached both System.vdi & ebs1211db.vdi files under SATA

Now, most important: You must have a .iso image or a physical DVD/CD for a recent release of Oracle/CentOS/RHEL linux, as we have to alter few attributes of the Virtual Machine we are going to put online.

Oracle has created the VM compiling a XEN kernel, which will not work under VirtualBox & you will fail to boot your Vision Instance VM, unless the kernel pointers are changed and recompiled.

Don’t worry it is pretty easy

Follow pythian article until the new kernel installation part

If you have just downloaded the templates from Oracle, you have the latest release of Oracle Linux embedded with System.img/.vdi file, and you don’t have to install a new kernel.

As root

#rpm –qa | grep kernel

image

If your uek kernel version matches as one provided with the image or higher, you can safely move ahead with creating a new initrd entry. As root issue the following command

#mkinitrd -v -f /boot/initrd-2.6.32-100.26.2.el5.img 2.6.32-100.26.2.el5

Reboot your Virtual Machine, after removing the Linux media from the CD rom drive (or detach the linux iso image)

If you were following pythian post attentively, your new virtual machine MUST boot, without throwing any errors and prompt you for a login

The default password for root is “ovsroot”

I hope you did change the /etc/fstab entry for “/u01” mounting point prior rebooting the server as mentioned last time and that you have changed the

/etc/sysconfig/oraclevm-template entry to RUN_TEMPLATE_CONF=YES

If you haven’t, please do & restart the Virtual Machine. Optionally you can set a static IP to your box, so that you can start using a ssh client like putty, which will genuinely make many things easier while setting up the server at later stages.

Once the server restarted, you will notice that Oracle will automatically start the cloning process based on the “RUN_TEMPLATE_CONF=YES” entry

Throughout, we were using a hostname “appvis”, hence all the instructions, workarounds will utilize the same hostname. Please adjust the hostname according your preferences

Configuring Oracle E-Business Suite…

Configuring network interface.
  Network device: eth0
  Hardware address: 08:00:27:18:A4:CE

Enter static IP address: 192.168.0.30
Enter netmask: [255.255.255.0]
Enter gateway: 192.168.0.1
Enter DNS server: 192.168.0.1

Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]

Configuring network settings.
  IP configuration: Static IP address

Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:                                [  OK  ]

Enter hostname (e.g, host.domain.com): appvis.rhome.com

Network configuration changed successfully.
  IP configuration: Static IP address
  IP address:       192.168.0.30
  Netmask:          255.255.255.0
  Gateway:          192.168.0.1
  DNS server:       192.168.0.1
  Hostname:         appvis.rhome.com

 

Database node related prompts

Enter the APPS password : apps

Provide the values required for creation of the new Database Context file.

Target System Hostname (virtual or normal) [appvis] :<<press ENTER>>

Target Instance is RAC (y/n) [n] : n<<press ENTER>>

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] :<<press ENTER>>

Target System DATA_TOP Directory 1 [/u01/E-BIZ/db/apps_st/data] : /u01/E-BIZ/db/apps_st/data

Target System RDBMS ORACLE_HOME Directory [/u02/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 [appvis:0.0] :<<press ENTER>>

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

Make a note of the System Port Pool you have entered here, as we must use the same while setting up the Application tier, in order to establish a connection to the database & perform the cloning process

Sit back and let the cloning process for database to complete. It may take a while. Once the cloning process is over, the database will be started.

After a successful completion of cloning, the server will come back to a logon prompt

login as “oracle” and the default password is “oracle”

You will be asked to change the password for user oracle and APPS, ignore the prompts this time.

PART-7 4thd Gear, Free on the roads, hacking the Application tier

As I mentioned, what we are going to do is a pure hack, against Oracle’s design structure.

The first step is to create a soft link, which is mandatory for cloning the Application tier

Login as root
cd /usr/lib
cp libXtst.so.6  libXtst.so.6.backup
rm libXtst.so.6
ln -s /usr/X11R6/lib/libXtst.so.6.1 /usr/lib/libXtst.so.6

Refer the following link for more details

http://11iapps.wordpress.com/tag/usrliblibxtst-so-6-undefined-reference-to-__stack_chk_failglibc_2-4-usrliblibxtst-so-6-undefined-reference-to-__fprintf_chkglibc_2-3-4-usrliblibxtst-so-6-undefined-reference-to-__sp/

Shutdown the database

#cd /u01/

#./stopdb.sh

Shutdown the Virtual Machine

#init 0

Copy the ebs1211apps.vdi to “myvision” folder now

Change the settings for your new virtual machine and attach ebs1211apps.vdi under SATA

Start the server

As your server starts you will notice that the database server getting started during the boot process itself. I’ll explain the methods to disable the automatic startup later with this post

Once the logon prompt appears, login as root (password: ovsroot)

Let us mount the newly added ebs1211apps.vdi (/dev/sdc1) to a mount point

As root

#mkdir /u02

#mount –t ext3 /dev/sdc1 /u02

The real hacks will take place now

Copy the /u02/E-BIZ/apps folder to /u01/E-BIZ/

As root

#cp –avr /u02/E-BIZ/* /u01/BIZ/

(I slept a whole night after starting the copying process, hence hardly have any idea how long it took, however I am sure you can finish one English movie during the copying period)

A total of 29GB will be copied to /u01/BIZ/apps folder

Once the copy process is over, we are ready to try the Application tier clone.

As root, issue the following command

#perl /u01/E-BIZ/apps/apps_st/comn/clone/bin/adcfgclone.pl appsTier

As prompted with the Database tier clone, a number of prompts you must answer, commonly the following

Enter the APPS password : apps
Target System Hostname (virtual or normal) [appvis] : <ENTER to take default>
Target System Database SID : VIS
Target System Database Server Node [appvis] : gkar
Target System Database Domain Name [rhome.com] : <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 [appvis: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
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_appvis
4. /usr/tmp
Choose 1, default

The cloning will kick start now, and resume until 89% prior ending up with a FATAL error

–Minor update (if it is already NOT too late) 08-October-2013

I was trying to do a cloning & realized that the cloning process terminates with various errors and most of the errors were due to write permissions.

I was able to complete the cloning processes (dbTier & appsTier) individually by changing the permissions on folders like

Prior cloning the database tier

As root

chown –R oracle:dba /u01/E-BIZ/db
chmod –R 777 /u01/E-BIZ/db

As user “oracle”

perl adcfgclone.pl dbTier

and prior cloning the apps tier

As root

chown –R oracle:dba /u01/E-BIZ/apps
chmod –R 777 /u01/E-BIZ/apps
chown –R oracle:dba /tmp
chmod –R 777 /tmp

As user “oracle”

perl adcfgclone.pl appsTier

and after the clone, resetting the ownership of /tmp back to root

chown –R root:root /tmp
chmod –R 777 /tmp

Hence the below mentioned error “could be” addressed by changing few OS level rights as mentioned above.

This error is caused by missing “adautocfg.sh” file in the folder /u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts which the auto configuration tries to access.

Without this file in this particular directory, the cloning process will never complete successfully. So we have to find a solution for it (I am not a APPS DBA and genuinely do not have any idea why the heck this file is missing in this particular location. All I could do is a guess work and it is towards avoiding the oracle template configuration wizard part, which initiates few functions. I’ll check it one of the following days and update this post accordingly)

 

As root

#cd /u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts
#touch adautocfg.sh

#vi adautocfg.sh

and paste the following (Yes you can do it, just change the VIS_appvis with your CONTEXT name)

#!/bin/sh
# dbdrv: none

#
# $Header: adautocfg_ux.sh 120.4 2008/02/19 04:28:02 sbandla ship $
#
# ###############################################################
#
# This file is automatically generated by AutoConfig.  It will be read and
# overwritten.  If you were instructed to edit this file, or if you are not
# able to use the settings created by AutoConfig, refer to Metalink Note
# 387859.1 for assistance.
#
# ###############################################################

#

CTX_FILE=”/u01/E-BIZ/inst/apps/VIS_appvis/appl/admin/VIS_appvis.xml
promptmsg=””
myparams=””
appspass=””

for myarg in $*
do

  arg=`echo $myarg | sed ‘s/^-//’`
  case $arg in
    appspass=*)
            appspass=`echo $arg | sed ‘s/appspass=//g’`
            shift
            ;;
    nocustom)
            myparams=”$myparams $arg”
            shift
            ;;
    noversionchecks)
            myparams=”$myparams $arg”
            shift
            ;;
    promptmsg=*)
            promptmsg=`echo $arg | sed ‘s/promptmsg=//g’`
            shift
            ;;
        *)  echo “$0: unrecognized action specified”
            exit 1
  esac
done

if test “${appspass}x” = “x”; then
  if test “${promptmsg}” != “hide”; then
    stty -echo
    printf “Enter the APPS user password:”
    read appspass
    printf “\n”
    stty echo
  else
    read appspass
  fi
fi

myparams=”$myparams promptmsg=hide”

{ echo $appspass; } | /u01/E-BIZ/apps/apps_st/appl/ad/12.0.0/bin/adconfig.sh -co         ntextfile=$CTX_FILE $myparams

error_code=$?
exit $error_code

 

Save the file and exit.

Let us try to re-initiate the application tier cloning process once again

As root

#perl /u01/E-BIZ/apps/apps_st/comn/clone/bin/adcfgclone.pl appsTier

The cloning process must complete without throwing any further errors and you will be asked whether the application should be started by the end of the cloning process. You can go ahead with starting the application tier.

However, you will notice, the apache HTTP will fail to start, as the CONTEXT FILE will have entries, which were not properly put in place during our last clone process as it has ended up with a FATAL error.

Let us edit the CONTEXT file and correct those entries now.

(This situation arises only if the cloning is done as user root)

 

As root

#vi /u01/E-BIZ/inst/apps/VIS_appvis/appl/admin/VIS_appvis.xml

Search for the string

/s_appsuser

replace s_appsuser values “root” with “oracle” and s_appsgroup with “oinstall”

Save the file and exit vi editor

 

Shutdown the application tier:

/u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts/adstpall.sh apps/apps

Shutdown the database tier:

/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis/addlnctl stop VIS

/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis/addbctl.sh stop immediate

Once the database server shutdown

As root

#chown -R oracle:oinstall /u01
#chmod –R 775 /u01

Restart database

/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis/addlnctl start VIS

/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis/addbctl start

Now, proceed with auto configure so that the new changes will take place with changed user & group settings with the CONTEXT FILE

/u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts/adautocfg.sh

Provide  the apps password and sit back. It hardly takes few minutes to reset everything. Once the auto configuration part completes, go ahead with starting the application node

Now you can access the application through http://appvis.rhome.com:8042/

Incase if you are not sure about the http port, open up “VIS_appvis.xml” CONTEXT FILE and scan through, you will find it with url address area

Use sysadmin/sysadmin to logon and enjoy!!!

PART-8 5th Gear, Smooth Sailing, Restarting and online

As a system administrator I literally don’t like the idea of starting resource hungry services until the boxes are completed booted up and online. I prefer to start certain services myself and make sure that whatever were started manually completed the startup process successfully.

As root switch to “/etc/init.d” folder

chmod –x ebizdb

and you are done! The database will not startup next time while you are starting your Vision instance.

Go to these folders for starting database and application nodes

Database
/u01/E-BIZ/db/tech_st/11.2.0.2/appsutil/scripts/VIS_appvis
Application
/u01/E-BIZ/inst/apps/VIS_appvis/admin/scripts

 

Day 3 – Adding Desktop to Oracle’s basic server (system.vdi)

I personally prefer to have a proper GUI, coming from an entirely Windows environment, that is a MUST for many times, regardless whether I am working with Linux or Windows systems

Here are the few things I have done to get the GNOME desktop installed with the basic Oracle linux Server embedded with the Oracle VM templates for Oracle R12 12.1.3

 

(Please make sure, from your Oracle linux box you have access to internet. Do you a ping www.google.com and confirm you are getting replies)

(Please shutdown both database and application prior proceeding)

(Please increase the size of System.vdi file PRIOR experimenting with any of the below exercises, and be careful while you would use Gparted to do it. Make a backup for system.vdi file and follow the thread provided above with the post to resize the partition (it is easy, I assure))

 

As root

#cd /etc/yum.repos.d
#wget http://public-yum.oracle.com/public-yum-el5.repo

This will install the public yum repository from Oracle

#yum update

It may take a while to download and upgrade the entire system and your Linux release will be upgrade to 5.9 (Tikanga)

#cat /etc/redhat-release

Now reboot your box, login as root once again

#yum grouplist
#yum groupinstall “X Window System” “GNOME Desktop Environment”

Around 380MB data will be downloaded and GNOME Desktop will be installed. Sit back and relax

Try to start the Desktop now

As root

#startx

X will crash and you will be provided certain error messages, which are NOT what we want. Hence let us go ahead and “correct” X

#X –config xorg.conf.new

X will start, however, a blank screen with ‘X’ shaped cursor and Ctrl+Alt+Backspace doesn’t kill it (minimum in my case)

Reset the terminal from VirtualBox menu and logon to the box as root once again

#cd /etc/X11

#mv xorg.conf xorg.conf.backup

#startx

Am sure you will be very much pleased to the GUI starting up. However, you don’t have a browser yet, so

#yum install firefox

This will install Firefox 17 (latest from the Oracle public yum repository)

If you want to start the GNOME automatic during the box startup, you need to edit /etc/inittab file

#vi /etc/inittab

and change the line

“id:3:initdefault:”

with

“id:5:initdefault:”

Save the file and exit the editor

Now a final reboot

#init 6

Once the box rebooted, you will be provided a graphical interface for the login process. Login and enjoy your GUI

However, if you would try to install the VirtualBox guest addons you will end up with FATAL errors, reporting missing headers. So you should, as root install the missing header files

#yum install kernel-uek-devel

A 6mb download will install the missing headers and, now you can safely complete the VirtualBox guest addons

regards

for windows7bugs

rajesh