Saturday, October 23, 2010

Virtualization of Application Servers and Database Servers

Virtualization is going to continue to be a key method for organizations to reduce overall costs and deploy cloud services.   There is a also a fundamental shift going on in virtualization.  The first wave of virtualization focused on virtualizing print servers,  desktops, domain controllers, and exchange servers.  Now organizations are virtualizing application servers and database servers at increasing rates.

Earlier generations of virtualized environments could take 10 - 20% overhead versus a physical server.  Today virtualized environments are taking 5 - 10% overhead while providing all the benefits and cost savings of a virtualized environment.   Hardware and VMs are getting faster with every release.  CPU vendors are now customizing their products for virtualization.

Virtualized Environments can run Faster than Physical Environments
There are also now a number of cases where a virtualized environment runs faster than a physical environment.   Virtualized environments offer a number of advantages not available when running a traditional physical server.   I am now running into customers that are virtualizing their application servers and database servers and seeing tremendous advantages over physical (non-virtualized) environments.

Oracle Does Provide Support for Databases Running on VMware
Oracle does provide support for Oracle database servers running virtualized. It makes sense because the Operating System and the Oracle Database Server do not realize they are running in a virtual machine, so there is no reason for  virtualized environment to create a bug for Oracle.  In fact, there are no Oracle bugs in the Oracle Metalink that are tied to the VMware ESX/ESXi virtualized environments.  A few points that some customers do not understand:
  • Oracle does provide support on VMware for bugs already known to Oracle.
  • Oracle can support bugs on VMware if those bugs are not identified as being caused by virtualization software.
  • Oracle does not support Oracle RAC in a VMware virtual environment but they do not prevent you from doing this.  A number of customers are moving forward due to the tremendous advantages of running virtualized databases.
  • Oracle may require the environment be recreated on a physical server if they believe it is due to a virtualization error.  

Friday, October 22, 2010

Virtualization Abstracts the Hardware Layer

One of the great features of virtualization is the ability to abstract the operating system and the applications from the underlying hardware.  A virtual machine (VM) is a software machine that runs an operating system and its environment.  By running an operating system and its applications inside of a software machine instead of a physical machine provides a lot of flexibility and speed in deploying operating systems and applications.

Features in VMware software that leverage hardware abstraction include:
  • vMotion - ability to move a VM and its environment live to another physical host without any down time.  
  • vCenter Converter - ability to move the operating system and environment from a physical machine to a virtual machine running on a different host. 
  • HA - High availability can start up a VM on a different physical server after its original server fails.
  • Distributed Resource Scheduler (DRS) - Ability to load balance VMs and make decisions when to move a VM from one host to another with no down time.
  • DRS Cluster - VMs can be spread across multiple host servers.  So operating systems and their applications become completely independent of the hardware they run on.  
  • Distributed Power Management (DPM) - Ability to move VMs from one host to another and power down host servers that are not being utilized and then powering the host servers back up when there is sufficient utilization.
  • Fault Tolerance (FT) - Ability to mirror VM on a separate host, so if the original environment goes down, then the mirrored environment becomes the primary and a new secondary environment is created.
Treating host servers, VMs and Virtual Appliances (multiple VMs running together) as software components in a virtualized data center allows:
  • VMs and their applications to be moved transparently to different host servers.  This not only abstracts the hardware  from VMs (operating systems and their applications) but even what hardware VMs run on.