I’ve been meaning to take a serious look at Oracle VM for a few months. In fact, it was this post [Live Migration of EBS Services Using Oracle VM] (and my long-winded reply) that was a major push for me to start this blog.
The final bit of impetus to learn all about Oracle VM came a few months ago when I saw the “Oracle VM for x86 Essentials” beta exam. If passed, you earn the certification “Oracle VM for x86 Certified Implementation Specialist”. It’s a certification geared for Oracle Partners. I figured the knowledge could help me to better understand Oracle’s offering. First and foremost, I’m an Oracle Applications DBA. If Oracle’s product could allow me to better serve my clients and do my job – awesome!
So I’ve been hitting all the Oracle VM resources I could find to learn about the product. I’ll post links to a number of the excellent resources I found at the end of this post. All the links at the bottom refer to information on the currently available product (Oracle VM 2.2). While compiling all of this information, I came across [Oracle Virtualization:Making Software Easier to Deploy, Manage, and Support] – a slide deck from a recent Sydney Australia Oracle meetup. It talks about upcoming features of Oracle VM 3.0. If those features come to pass, Oracle VM will become more enticing to many organizations.
Honestly, I’ve got *tons* of things I want to write about with regards to Oracle VM — so much that I don’t know where to begin.
Remember that first time you went from something with a nice GUI, like Windows (Thanks
Apple Microsoft!) to something a little more “nerdy” like Linux ? The GUI, if there was one, was stripped down and clunky. Many of the things you could do with a couple of mouse clicks before now require specialized commands at a command line. All of these different steps you need to do just to get things working. Well, it’s the same type of thing going from VMware vCenter to Oracle VM Manager. It’s not that the product is bad — it isn’t. The Oracle VM interface is clunky and the product doesn’t have the richness of features of VMware vSphere. Simple as that. Are those differences worth it to you? Everyone’s needs are different. Both underlying products (Oracle VM Server, VMware vSphere ESX 4.0) run Linux and Windows VMs well enough for most enterprise-level systems.
As you can read in this Gartner report on Server Virtualization Infrastructure, VMware is the clear market leader. Oracle VM, although categorized as a niche player, is the strongest of the niche players and right on the border of being listed as a challenger to VMware.
Here are a few areas where Oracle VM has an advantage over VMware:
o Certified vs. Supported
(I hate talking about this but it needs to be addressed.) Is your VMware virtualized Oracle database supported by Oracle? YES. Is it Certified? No. I went into this in detail in this [Oracle Support on VMware] blog post so I won’t do it again. Short of running Oracle RAC, which is expressly NOT supported when virtualized under VMware, the question of whether you should care about the “certified” distinction is something each company needs to answer for themselves. To me, the whole thing smacks of FUD (Fear, Uncertainty, Doubt).
There are two parts to pricing. First is the effect virtualizing Oracle Database will have on your Oracle database licensing. I go into this in more detail in a post on Oracle licensing under VMware. One of Oracle VM’s main selling points is that Oracle considers Oracle VM (through hardcoding the CPU binding in the vm.cfg file) a type of hard partitioning and VMware vSphere a type of soft partitioning. When using hard partitioning, Oracle only requires you to license the processors (cores) in that hard partition (aka, the processors visible to the VM). When using soft partitioning, Oracle requires you to license ALL the processors (cores) in the server, even though there may be many more processors present than allocated to the VM. It should be noted that you can do the same type of CPU binding (called CPU affinity) with VMware vSphere, but that Oracle somehow still considers this soft partitioning.
This just seems like a way for Oracle to give their Oracle VM product preferential treatment. How does the joke go… Where does the 800 lb gorilla sit? Anywhere he wants to.
The second part of pricing involves the actual Oracle VM product versus the VMware vSphere product. Oracle basically has two pricing points
o Premier Limited — Up to 2 CPU sockets, regardless of the number of cores per socket in the physical server
o Premier — unlimited CPU sockets in the server
VMware, unlike Oracle, has four product feature levels (Standard, Advanced, Enterprise and Enterprise Plus) and so a head to head comparison is a complete pain to do. The short answer is that Oracle can be significantly cheaper.. The downside of this inexpensiveness is a lack of features. Yes, VMware generally costs more than Oracle, but you’re paying for additional features. Are those features worth it to your organization? That’s for you to decide. In my organization, we are willing to pay for VMware’s features, but my organization’s needs may be different than the needs of your organization.
Does your organization have a need for VM snapshots? Mine absolutely does. Oracle VM doesn’t have it and VMware does, even when you’re using the free version of each product.
Does your VM require more than 8 CPUs? VMware has a limit of 8 CPUs for a single VM. Oracle VM’s limit is 32 CPUs for a single VM. Through tuning and software improvements, my main client has managed to reduce the number of CPUs for our Production Oracle E-Business Suite database from an unvirtualized 8 cores to 2 cores virtualized, so the difference is immaterial… but maybe your organization needs 20 cores.
Does your organization have a need to do vMotions / Live Migrations? They come included with Oracle VM, but it’s not recommended to do more than one at a time. There is an additional cost to get VMware vMotion, but VMware supports a default configuration with up to 4 simultaneous moves and allows up to 8 simultaneous moves.
Does your organization need automated SAN level replication of your VMs so they can be brought up automatically in case of disaster? VMware has that functionality with Site Recovery Manager. Oracle doesn’t have anything like it.
o Oracle VM Templates
Do you want a pre-built VM you can download with the Oracle software already installed and configured? Oracle offers downloads of pre-built environments from a basic OEL 5 Linux box all the way through to a downloadable 38GB Oracle EBS R12.1.1 system. I admit, that could be pretty cool. However, it may not be right for your company. My main client never allows consultants to have console type access to our Linux servers. I don’t think my auditors would approve of a pre-built VM for production use, even if it was pre-built by Oracle. As something for quickly throwing up a demo or dev environment, I think it’s fantastic. I hope Oracle continues to do this for more and more of their products. Oracle Enterprise Manager 10gR5 took me roughly 2 weeks to install. Discoverer 11g about a week. Secure Enterprise Search about 2 weeks. It would be great to have a pre-built test system I could reference when building my production systems.
I’ve got numerous ideas for more blog posts with regards to Oracle VM. Feedback directing me to what interests others would be great.
Part 2 coming after the I take the exam later this week. Wish me luck!
Live Migration of EBS Services with Oracle VM
Installing & Configuring OEL 5 with Database 11gR1 as a Paravirtualized Machine (PVM) on an Oracle VM Server
The underground Oracle VM Manual
Official Oracle VM Wiki home page
Oracle VM for x86 Essentials Exam 1Z0-540 Exam Topics Study Guide
Oracle VM 2.2 Documentation Library
Performing Physical to Virtual (P2V) and Virtual to Virtual (V2V) (aka VMware to Oracle) conversions Note the excellent pdf linked from the article too.
Installing, Configuring and Using Oracle VM Server for x86
10 thoughts on “Oracle VM compared to VMware vSphere: Part 1”
I would surely agree the Oracle VM gui isn’t very fancy (or even well-designed) – I suspect though that it’s intended to be mainly used using Oracle Enterprise Manager. I didn’t have the option of testing that though. Maybe You find out some more about it.
Also, one should mention that Oracle VM most probably will be quite a bit faster than VMWare (at least my experience).
At least, as of today the HA / Loadbalancing stuff is very immature though, but – and that is very much worth mentioning – with Oracle VM I at least have the chance to extend the functionality 🙂
Oh!! and I just saw you also took the oracle vm essentials beta exam, would be pleased to hear your experiences. I was suprised at some questions 🙂
I wrote about my test experience on my blog http://deranfangvomende.wordpress.com/2010/06/29/took-the-oracle-vm-essentials-beta-exam/
” Does your organization need automated SAN level replication of your VMs so they can be brought up automatically in case of disaster? VMware has that functionality with Site Recovery Manager. Oracle doesn’t have anything like it ”
I would like to comment on this
See what I feel is we better use the correct software to implement the required feature. Why would some body worry about site failure feature on Oracle VM
having those features offered by Oracle DB end.
See we have Oracle ADG (active data guard and different categories of Stand by designs)
U may use any VM at server level and storage level but we better not expect them perform with the features that offered by the back end and in case of oracle they are allredy offering those features under HA technologies
See oracle List VM under there Server and Storage solutions
I’m having a hard time understanding the question, but I believe what you’re asking is in effect “Why use something like VMware SRM when I can use Oracle Data Guard, which is designed for Oracle databases?” . If I’m misunderstanding please let me know. I do want to answer your question.
Assuming I have the question right, let’s talk a little about my Oracle systems – I suspect yours will be similiar. One of the systems I run is an Oracle E-Business system. This has multiple nodes (servers) – one running my database and one running the middle tier stuff (program files, Oracle Application Server, various other executables). Yes, I could (and did, years ago) use data guard to replicate my database to a standby database server. In addition to that database on the database server, I’ve got cron jobs that run. I do NFS and SAMBA exports of various directories for integration with other systems in the company (for example, payroll). Dataguard does nothing to help with these issues – I’ve got to setup (but not schedule) those cron jobs on the standby node so I can run them if/when I ever activate the standby. I need to do the same thing with the NFS and SAMBA mounts. Then there is the whole subject of the application tier – dataguard doesn’t touch it (there’s no database on that node). Sure, I can use some utility like rsync to keep the file system of my app tier box in sync with a standby app tier box, but let’s hope I don’t miss a directory.
So then we fail over – ok, now I’ve got a new IP address and hostname for my database server and my application server. In the case of Oracle EBS, I need to run autoconfig to update all the configuration files with the new machine names / IP addresses. I’ve also got to reconfigure all my NFS/SAMBA clients to go to the new IP address. Yes, I can limit these issues by just re-naming and re-IPing the boxes but now anything that stores the ssh key of the servers will (rightly) fail, thinking there is a man in the middle attack.
What if you want to test all this? You’ve got to bring down your primary, switch to your standby, bring up your application tier, do your testing … all while suffering a (scheduled) downtime.
Now compare to SRM – the SRM recovery side when testing is in its own isolated network – I can (and do, for SOX verification) bring up my database and application nodes to verify I can bring up those systems. I can do whatever SOX audit testing they want for however long they want, without suffering downtime in my production system. Auditors love it. In the event of a real disaster, I don’t need to rename or re-IP the boxes – the DB machine comes up with the same IP address, the database listener starts automatically, the database starts automatically, and then the app tier starts automatically. Since SRM works at the VM level, it has all my setup cron jobs. I don’t have to remember to change them on multiple systems.
So like I said, Oracle has nothing like SRM.
We ran a study plus pilot with Oracle VM for one year (2009 to 2010) and we found, that Oracle VM has all basic features you expect from a HA solution for Database Servers:
– You can do Live Migration, which is useful on maintenance windows on global organization.
– You can streamline/standardize provisioning
– If a server dies and the VM is HA enabled, it is restarted on a remaining server in the pool. Actually this particular feature is something we were missing on our expensive IBM Pseries Servers for a long, long time.
– You can dynamically allocate ressources
– You can run multiple OS (solaris, linux, windows), which is good, if you want to P2V legacy systems.
Even tough the offer with Oracle VM Sounded good for us in the beginning, we at the end of the study opted to replace our IBM Pseries with Oracle Sparc Servers for the following reasons:
1. License Savings with new Sparc Servers (T3 0.25 CPU, VII 0.5 CPU)
2. Easier Migration, as all is big endian
3. Operation Experience with Oracle on Sun Solaris Zones
We use currently use Oracle Dataguard in combination with virtualization HA for best availability. This enables us stressfree system diagnosis, as we do not have RAC/Cluster problems with shared disk.
RAC makes (made) sense, if you cannot scale out anymore with hardware and you need to handle more users. Normally however people do not make more than 2 node RAC cluster these days, because of cost in many cases. Mostly you will find 2+ nodes clusters only on Linux blade systems.
Generally the combination of Virtualization and Oracle Dataguard is a safe and reliable one:
You need 2 systems with disk and network: that’s all. No complex requirements / prerequisites. For most cases manual failover of vm and a datagaurd w/o observer in Max Performance will do.
I would however rather recommend to use Oracle Solaris Containers / Zones on x86 or Sparc to do system virtualitazation, as it is more flexible (eg. you can move between Sparc T systems and M systems and between different x86 systems).
Xen / LDOM is good to “partition” the resources / workload of your server, eg. making one Domain for Database Server and one Domain for App Server to split ressources. Within these domain, you can then create containers / zones.
If you configure RMAN to backup on the standby site Dataguard, you customers will also love you, specially when they run batches at night.
This is a really nice article.
Can I recommend that the published date/time is more prominent at the top of the post. I found it after 5 mins but at the bottom of the post.
Would you be willing to update the article comparing the later versions of VMware and Oracle VM?
Thanks very much.
I;m new to vmware and oracle VM , up to now virtualization was solaris zones ( sparc / x64)
I have started with Vmware esx5 and ORACLE_VM 3.03
There is no doubt vmware beats oracle vm in the administration and management of the infrastrcture .
vmware vsphere management is logical and makes sense , it does a lot behind the scene for you and it WORKS !!
oracle_vm management is all but logical , documentation is incomplete and done for experts !! after more then a week of work , I installed my first Virtual machine. Now I’m trying to start the console of that machine for 2 days .
Tried using I.E on windows / Firefox on Windows , never got it working.
I eventually had it running using firefox on solaris !!
but it is not consistemt , sometimes it works sometime it just do no start !! no message no nothing.
I really wonder if companies are using oracle vm in a production environment ..
I have seen a lot of doc on oracle VM 2.2 but 3.xxx seems to be new and full of bugs …
Really disapointing ..
I’ve been using VMware products for a few years now, and the new Vsphere 5 licensing has made me look at alternatives like Oracle’s VM Server. I don’t have a dog in the race between Oracle and VMware, I’m not favoring either vendor.
But I will say that the OVM 3.0 is absolutely the worst piece of junk I’ve ever seen.it simply doesn’t work correctly.if you do manage to get things set up, you’ll still get
screen errors for various odd reasons ( Java?)..
the web interface OVM is garbage when compared to Vsphere..and for the $495 one-time licensing fee for Vsphere Essentials, it is WELL worth it..
with Oracle you get what you ( don’t ) pay for; it’s is free for a reason..because it is 100% pure junk…
download the 60-day trial version of Vsphere and compare it to the OVM and OVS..
there’s an old saying “if you can’t party with the Big Boys, don’t bother showing up”. Oracle needs to take that to heart..this OVS/OVM product is simply not ready for prime time..
Just as an aside to your comment, although I had concerns regarding the vSphere 5 licensing when it was first announced (and subsequently revised), I have yet to have any of the vRAM licensing restrictions actually effect my clients.