The Rise of the Virtual Machine
Part 2: What are my options?

John W. Garmany

As many IT shops are rushing to consolidate to fewer large servers and virtualization, it helps to know what your options are.  Basically there are three types of virtualization:

  1. Virtualized Server
  2. Para-virtualized Server
  3. Containers

 So how do these three options differ?

 Virtualized Server

The virtualized server virtualizes every aspect of the server hardware.  This is the method used by the popular VMWARE.  The major advantage to using virtualized servers is that any OS can be installed and run without modification.  This is how a Redhat Linux server, running VMWARE, can run MS Windows.  The Windows OS does not know it is running on the virtual server.  The drawback of virtualizing all the hardware is the overhead.  This involved catching request and processing them correctly for each virtualized server being hosted.  The overhead of virtualizing everything can be quit large.  The server must be able to handle the load of each hosted virtual server and the overhead of the virtualization process.

Para-virtualized Server

The para-virtualized server uses a modified kernel to implement the virtualization.  The entire server is not virtualized, so the overhead is substantially reduced.  Para-virtualization has been available for a while in the Fedora Linux Distributions since FC4 and RedHat has announced the RHEL5 will support virtualization with Xen.  Xen is an open-source virtualization tool that implements para-virtualization.  While para-virtualization is more efficient than virtualizing the entire server, the OS must be modified to support virtualization.  Thus Linux running Xen can not implement a virtual server running Windows because the OS can not be modified.  The latest processors from AMD and Intel contain code that will allow para-virtualization to run an unmodified OS.  With this implementation, Linux running Xen will be able to run unmodified Windows in a para-virtual server. Although I have not confirmed this, rumor has it that VMWARE is also looking at para-virtualization using the latest processors to help boost its efficiency.

Virtual Containers

With container virtualization, you do not have the option of running another OS.  The OS that runs the container is the OS that all applications in the containers run on.  The advantage of container virtualization is that it is very efficient, while still allowing you to control the resources each container utilizes. You can not run FC6 and have a container running RHEL4.

So which option is right for you?

Like all Oracle (and most IT) questions, the answer is “it depends”.  If you are a RedHat shop, then Xen is the game for your.  You can efficiently virtualize as many servers as you need. Containers would be even more efficient if your OS implements them.   If you are mixing Windows and Linux/Unix virtual host on the same server, then total virtualization using something like VMWARE will fit your needs.  

So where does that leave you with your Oracle Application Server?  In Part III, To Virtualize or Not to Virtualize” I will discuss why you may or may not want to use virtual servers with your Oracle implementation.


Need Oracle App Server Support?

I'm now offering personal app server mentoring for Oracle DBAs who must quickly learn the intricate details of OracleAS10g. You can have an Oracle expert right at your fingertips, anytime day or night.

We work with dozens of Oracle Application Servers every year, so we know exactly how to quickly assist you with any Oracle9iAS or Oracle Application Server 10g question.

Just call toll free 800-766-1884 to schedule your personal support.


Need Oracle Training?

The very best Oracle training comes from Burleson Consulting, where you get an on-site visit by an experienced Oracle expert and author.  Whether it's one-on-one mentoring or getting a customized on-site Oracle training class, there is no substitute for BC Oracle training.  Just call me at 919-783-4133 for details, and check-out our on-site Oracle training catalog: