I have one Windows 10 guest from last many years, upgraded through VirtualBox versions 5, 6. Recently I upgraded VirtualBox to 7. While Windows XP & Oracle Linux guests automatically resized the display on host, Windows 10 guest was adamant. Uninstalling and installing the guest addons didn’t help.
After scavenging through few posts over VirtualBox forums, came across one of them discussing about fixing the resizing issue by choosing “VBoxVGA”, though it was not supported. I decided to give it a try and Windows 10 guest resized the display when I toggled the “Auto-Resize Guest Display” from the view menu.
Then I shutdown the guest, changed the Display back to “VBoxSVGA” & the guest allowed me to resize the display using View menu & subsequent restarts were resizing the guest display as expected. However, there were times when I had to manually adjust the display size. Hope Oracle fixes this issue in coming releases.
I’m a huge fan of Oracle VirtualBox. Actually I have almost 10 different VMs (many of them were never used over years) scattered everywhere within my home network. Then I had this Windows 10 VM, that always had troubles.
Environment: HOST (HP PROBOOK 440 G7
Windows 10 Pro 64Bit, i7-10th Generation Processor with 8 CPUs, 32GB RAM, NVMe disk for OS and Crucial MX500 series 1TB SSD for data/Virtual Machines & Windows 10 guest has the configurations as seen with the image.
In addition to, for the VDI with fixed size, I have exclusively set “Solid-state Drive” flag. If you have a keen observation, I have selected “Hyper-V Paravirtualization” for “Acceleration” and I don’t have Hyper-V enabled :). Well, I didn’t hear any complaints (yet)!
After reviewing many posts and answers over VirtualBox forum, I have made few changes those I felt could make some differences, and I feel my VM responds much better after those changes.
Disable Transparency. This makes your Windows 10 VM respond much faster (not just “seems faster®” ;) )
Setup your box for best performance.
Reboot the Virtual Machine. I have seen slight gains with the booting time, however once logged in the VM is snappier than ever. I cannot help you, if you are using VM for something fancy that depends upon the Graphic processing. For a server side software like Oracle database where the performance matters, I think this is the only one go with current VirtualBox/Windows 10 setup.
If you are interested to see how long it takes for my VM to finally let me log in, watch the below video.
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)
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.
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
i7 processor 2nd generation
16GB DDR3 memory
Around 4.5-5 terabyte of storage
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.
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
Oracle EBS R12 cloned instances
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
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
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.
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.
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
I get a sand-boxed environment & without fearing my attempts will break my main OS, continue the experiments
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
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.
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.
Install 64Bit OS, so that you can take the advantage of your 64Bit processor and physical memory
Install Oracle supported Linux distros (RHEL, OEL & certain versions of Debian. CentOS is not at all supported)
Install the complete desktop, you are hardly going to complete the installations on pure CLI mode.
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
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.
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!
Use Oracle’s pre-install packages to install database, EBS etc prerequisites rather than trying to download individual components from different download sites.
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
Use bridged network, with Promiscuous Mode “Allow All” so that you can communicate with the VM from network
Disable IPV6, firewall, SELinux on your Linux VM
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
i7 processor + good quality heat sink. Your HOST and VMs are going to create loads of heat!
16GB Memory (DDR4 is the new standard, do not ignore it)
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!
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:
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
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.
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,
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.
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!
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