I want you to take a step back and think about a hypothetical company not running any virtualization. The company has an Oracle Enterprise Edition database running on a 4 core server that’s has very heavy (95%) CPU utilization. The company has to decide between buying a new 8 core server to handle the additional computing as their data volume and business grows, or they need to find a way to reduce their CPU utilization.
If the company goes with the new server, they’ve got the cost of the new hardware itself (irrelevant to my point so let’s call it $0) PLUS 4 more cores (2 processor licenses) of Oracle Enterprise Database – $95,000 (According to the latest Oracle pricing list).
The DBA takes a DEV copy of the system and run OEM Diagnostics and Tuning Packs against it and finds he can cut their CPU utilization in half. Cost to implement in production? 4 cores worth (2 processor licenses) of Diagnostics and Tuning Packs – $20,000.
The company saves $75,000, the DBA is regarded as a hero and is about to be given a Porsche Boxster by the company for all the savings.. until accounting rightfully points out that with everything tuned up, the company has an extra Oracle Enterprise Edition processor license of processing power that the company isn’t getting ANY benefit out of and can’t use for another database server, plus the company isn’t getting much additional benefit from the $20,000 of Diagnostics and Tuning licenses.
If only there was a better way!
Imagine the company decided to first virtualize that database server – I’m talking the most basic sort of vSphere virtualization – just one stand alone vSphere ESXi host. Cost from VMware? Zero Dollars. Now, they still have the whole server licensed for Oracle databases. They spend their $20000 and buy OEM Diagnostics and Tuning Packs and now, just like before, they’re left with a database server running on 2 cores, they have two cores unused but licensed for Oracle Enterprise Edition. Because they’re virtualized, they can add another database server virtual machine on the server (getting use out of that wasted license) AND they can leverage the OEM Diagnostics and Tuning Packs to tune that additional database.
So now the company is getting double it’s value out of those Database and OEM licenses – all just by virtualizing under VMware. This is the most rudimentary example, assuming you had a database that was actually utilizing 95% of the CPUs before and that OEM helped you cut that load in half. Imagine the benefit a company that has 5 or 10 physical Oracle database servers each at 25% utilization could benefit by virtualizing under VMware to a couple of hosts and licensing those hosts with those OEM packs.
As a company grows and adds systems, the benefits of virtualizing Oracle really start to add up.
Don’t be shocked when the DBA starts showing up in a Porsche Cayenne Turbo.
As long as Oracle continues to recognize VMware as soft partitioning, the cost benefit will not exist for a legitimate Oracle implementation. Would you really trust your Oracle environment to a single x86 server? Where are the QA/DEV instances going to run? You can try to equate a VM to an LPAR, but Oracle doesn’t see it that way.
Free “ESXi” has RAM caps, 12GB on ESXi4 and 32GB on ESXi5.
Gabriel,
Thanks for your comment. I disagree with your statement about the cost benefit not existing for a legitimate Oracle implementation and some of your other points.
As far as the cost benefit not existing for a legitimate Oracle implementation – note that most Oracle implementations have both a production and a QA/DEV environment and those environments need to be licensed. Even with a small Oracle implementation where I’m proposing to just use ESXi with a single host with local storage, those environments could all live on a single host quite easily and stay under the RAM caps of ESXi.
In addition, many smaller Oracle installations come about due to a packaged product requiring an Oracle database – for example some of E-Trade’s stock options management offerings require a Oracle database on Windows. Now the company can have truly separate Oracle environments (each with their own copy of Windows to test out Patch Tuesday patches and such) on that same one box Oracle requires them to license.
You ask “would you really trust your Oracle environment to a single x86 server”? Many organizations, especially the smaller Oracle installations such as the example above, do. By virtualizing that Oracle environment, even on a single x86 host, they’ve now abstracted the hardware details of the host from the VMs, allowing them to more easily backup, restore or even move those whole environments to another host without worrying about chipset changes, different RAID controllers, etc.
I definitely realize there’s a difference between the hard partitioning available with an LPAR and VMware. What I’m saying is there ISN’T a difference between OracleVMs partitioning (which Oracle considers hard partitioning) and VMware’s partitioning (which Oracle considers soft partitioning). Both allow you to pin a VM to certain cores if you so choose (which is Oracle’s requirement for OracleVM to be considered hard partitioning), regardless of if that’s a good idea.
A more striking example of the soft/hard partitioning conundrum is that Oracle allows you to use Solaris Containers, an abstraction on top of an OS, as a valid means of hard partitioning (with suitable zone configuration).
Thanks for expanding on the points made. I only have our current environment to base my observations off of. Still as I understand it, I have to license all of the cores is my ESXi Host regardless of how many vCPU’s I give the Oracle VM servers, that makes it far more expensive than my physical systems that run on P550 servers since my ESXi hosts are 4 socket 4 cores and 2 Socket 8 Cores.
So for me to license a single VM running Oracle EE DB, I have to pay for .5 (intel per core licensing) X 16 (number of cores) for a total of 8 DB licenses. Thats to run any number of VM’s on one of my Dual Socket 16 Core ESXi Hosts. Versus, paying for 4 licenses on my Power5 4 Core servers. In my situation, the cost advantage comes when I can deploy more DB servers than my physical host can support, so that’s how I could see virtualizing my environment.
I find it funny that Oracle recognizes their own virtrualization platform as hard partitioning when its simply their own hacked version of Xen, yet they won’t on Citrix XenServer.
You are correct on your pricing / licensing statements as far as I can tell – I haven’t had the pleasure to work on any enterprise IBM systems in about 4 years so I end up thinking mainly about x86 only. As long as you’re getting enough compute power out of the Power5 so it is cost effective vs switching to x86, it makes sense for you to do as you’re doing.
Yeah, it is frustrating to me too that Oracle considers OracleVM hard partitioning but not similarly configured VMware or Citriz XenServer. Its not endearing customers to Oracle.
Until you open a tar and get stonewalled when they find out it’s on VMWare.
I’ve had that experience once. I got the SR duty managed immediately and the issue was then taken care of satisfactorily. Analysts (and even occasionally DBAs) get things wrong once in a while.