Tuesday Nov 10, 2009

Virtualization for 'Cloud' vs. "Traditional" Virtualization

My, my...I just looked back and it has been almost exactly 6 months since my last post to this blog. The time has gone fast as we've been working hard on a number of things here ranging from the Virtual Iron acquisition integration (going nicely, thanks...) to a number of other projects that I'll talk about over the next few posts. I plan to get back into blogging much more regularly as I did all during the Spring.

I want to talk about implementing virtualization for 'Cloud' architectures vs. implementing it for "traditional" virtualization. Last week, several of us from Oracle presented at the Cloud Computing Expo as to our perspectives on what's important for Clouds and, in particular, private clouds with just a little bit on how Oracle products do- or will fit into that including our ability to provide a lot of capabilities at basically every layer of the stack, whether we're talking software as a service, platform-as-a-service, or infrastructure-as-a-service.

My session was about thoughts on the infrastructure layer and specifically, what should you consider when planning to implement virtualization to support Cloud capabilities vs. what you may have already done to support more "traditional" virtualization goals.

There's a link to my presentation farther below (PDF download), but before I send you there, I want to mention an interesting Technical Report from UC Berkeley's Reliable Adaptive Distributed Systems Lab or "RAD Lab". I quoted the report a couple of times in my preso and I found it to be a thoughtful and accessible discussion of the technical, operational, and economic aspects of cloud computing and, in particular, public clouds. You can find that report here (but if you click this link, don't forget to come back!...)

Funny story: so about 30mins before I presented, I ran into a colleague and asked him how the show was going because I had not yet attended any sessions and he said "Pretty good but the irritating thing is that everyone starts out with 'What is the Cloud?". Hmm. Well. Uh...Glad I didn't do that!..heh... I said nervously while quickly trying to decide if I could sneak away to quickly change my intro. Well, it was too late to change so I just plowed ahead to a standing-room only crowd. Take a look and let me know what you think:


UPDATE:  Barton George, the Cloud Computing Evangelist at Dell posted a video interview he did with me at the conference.  You can see it on YouTube or on his blog

Wednesday May 13, 2009

Oracle VM Blog: Oracle Buys Virtual Iron. Excellent.

As you can imagine this is a very busy, very exciting day for me, but I just wanted to take a second between meetings to mention that today we announced Oracle's acquisition of Virtual Iron. Since the acquisition has not yet closed, there is frankly not much at all I can say beyond the information already made public, except to say that we are very excited about this as yet another indication of our commitment to top-notch server virtualization and management products for the enterprise with Oracle VM and Oracle Enterprise Manager. For all the information, see our Virtual Iron page here

Thursday May 07, 2009

Oracle VM: A Peek Into the Future

I haven't been blogging the last couple of weeks as I've had some internal deadlines, but luckily you've seen some good content from others on the Oracle VM team, including Honglin's entries below.

This time, I want to call your attention to a couple more blog entries from the team that are on another blog - this time the blog of my boss Wim Coekaerts, VP of Linux and Virtualization Engineering where he talks about some Oracle VM (or closely related...) projects that are particularly cool, namely our up-coming management CLI and webservices API, but also the OCFS2 "Reflink" project. Reflink is generically extremely useful for about any application, but is also intended to benefit Oracle VM in particular in expected up-coming releases.

These projects are expected to really increase the ability of users, integrators and other 3rd parties to automate processes around Oracle VM (API/CLI) as well as do things like radically improve performance and efficiency for things like cloning, provisioning, and snapshotting (Reflink).

Take a look.

Friday Apr 03, 2009

Oracle VM: Part 3 - Where Does Guest VM HA Fit-in Versus Other HA Software: HA Cluster Software and Guest VM HA

This is part 3 of my series on HA techniques up-and-down the stack and how they relate to use of Oracle VM’s Guest VM HA features. This installment talks about HA cluster software or “clusterware”. For databases, of course, Oracle RAC is the ultimate, but what about HA for database or other workloads where you might be using clusterware? Even with databases, you may not require continuous availability or you may not require the ability to support a workload that is greater than the capacity of a single physical server. In that case, having a fail-over based model where there may be some very short outage before automatic resumption of service is probably acceptable - clusterware is probably a good solution. But, wait, doesn’t it seem like HA implemented at the guest VM level would work in this situation as well? The answer is yes, but they are not totally identical in capabilities to let’s examine those a bit.

HA clusterware software runs inside the guest itself while guest VM HA solutions from the major vendors, including Oracle, execute outside the VM itself. In other words, the HA clusterware is generally application- or application-service aware: it knows what is running, maybe even down to the process level and can monitor each individual registered service. As a result, it has the advantage that it can do things like selectively restart specific services without requiring a restart of the node. It is a better position to do hang detection more quickly and to potentially resolve issues at a finer-grained level: why reboot the whole machine if, say, the OS is healthy, but the web server is hung for some reason? Much better to just restart the web server. From the outside, it is very hard to detect even an OS hang consistently (a node may appear to be “running” when, in reality, it has ceased performing productive work and would need to be restarted). And it is essentially impossible to detect the hang of one individual service or application without some specific, intrusive integration. But clusterware like Oracle’s generally has sophisticated hang detection capability to permit a rapid restoration of service(s). It is this finer-grained “application/service awareness” that is a key strength of clusterware above what guest VM HA restarts from the virtualization layer can provide.

At this point in these series of blog entries, you may be wondering about the value of implementing HA at the virtualization layer if I’m saying that it does not provide continuous availability (like RAC) and it is not explicitly application aware (like clusterware), but the case for guest VM HA is actually quite strong. The reality is that today anyway, the products available up the stack (from any vendor) typically provide their benefits at the cost of configuration complexity and likely licensing fees* (*not always...see below) beyond the cost of the virtualization layer and thus those benefits need to be weighed against the costs.

Many scenarios absolutely justify the cost and effort for implementing these powerful HA solutions for mission-critical applications, but, equally, there are likely a large number of server instances of all types where it is definitely desirable to automatically restart the server/VM instance should it fail (especially at 3am Sunday morning after a night out!), but where you do not want to incur the costs of implementing HA software up the stack (costs of all types…learning/training, configuration/maintenance complexity, support costs, licensing costs, etc). For these scenarios, HA implemented in the virtualization layer is ideal because it will automatically restart failed nodes but has absolutely minimal complexity for the admin creating the virtual machine: typically just checking a box to enable the HA functionality for that VM and you are done. No adding HA agents or setting up HA services or registering applications. It just works.

*One final note on the more commercial aspects of this for Oracle customers: licensing expense. Oracle is unique amongst virtualization vendors in that we offer enterprise class software not only at the virtualization layer but also a portfolio of software that runs inside the VMs, including key infrastructure like Clusterware. Oracle VM, including Oracle VM Manager is free: no license expense so you only pay for annual support. Similarly, Oracle Clusterware is also included in the support fee when purchase an Unbreakable Support subscription for Enterprise Linux or if you are using the Clusterware to support an Oracle database. This is powerful, enterprise class HA at a bargain price. Not only no license fee, but even comparing Oracle’s support pricing for these products with the support pricing for equivalent products from other vendors, you would find this to be incredibly affordable.

The conclusion in this series is that all of these techniques have a vital role to play and that no one of them eliminates the need for the other despite what other vendors would try to have you believe. In fact, these are solidly complementary techniques that can work very well together to further improve the availability of your stack from top-to-bottom. And an advantage of working with Oracle is that we can work with you across all these options to tailor the best solution for you.

Thursday Mar 26, 2009

Part 2: Where Does Guest VM HA Fit-in Versus Other HA Software: RAC and Guest VM HA

As part 2 in this series of blog entries about HA techniques in a virtualized environment, I’m going to focus on considerations when thinking about using Oracle Real Application Clusters (RAC) with- (or without) Oracle VM HA. For databases, Oracle RAC is the ultimate: Continuous availability and ability to handle workloads that are larger than what a single physical server can handle. If you need continuous uptime for your database applications, then you need RAC. Others are claiming that a single instance database with their flavor of clusterware or with their flavor of virtualization is equivalent to RAC. Ummm…No. Sorry: That is a terrible blurring of lines to force-fit the wrong solution. Again, the question is, do you need continuous availability? No one’s guest VM HA or clusterware solution provides continuous availability in a way that is practical for production databases today except RAC. Period*. (I’ll get a comment or two for that statement but let me get to that in a minute). Even if you don’t need continuous availability, do you need to support database workloads greater than a single physical (or virtual) machine could support? If so, again, you need RAC. No one’s clusterware or virtualization-based HA can do that today. So, if faced with these claims just ask two very simple questions:
1. Will that give me continuous availability?
2. Will that allow workloads that will scale larger than a single physical node?
If the answer to either one is “no”, then it is not equivalent to RAC and they are trying to fool you.

*On that continuous availability thing…OK…so there are some projects and some vendors starting to claim they have a “fault tolerant” or “continuous availability” mode for their virtualization product here or coming soon, but these are no where near ready for production use. These appear to be uniprocessor-only, very slow, and unproven in the reliability of their methodology for assuring there will be no corruption…these are simply not ready to host things like databases and not yet even worth talking about for use in the “real world”. Someday, the technology may get there but when that changes, then I’ll blog about that. Also, no flames/comments from the proprietary hardware crowd on how they’ve been doing fault tolerant stuff since before I was born and before wood was invented or whatever. That stuff was/is great, but this blog is about virtualization on industry standard components that are about the only stuff mere mortals can afford these days.

Now let’s get back to positioning HA techniques in the stack. What about using RAC and HA at the virtualization layer, i.e. with guest VM HA / auto-restart enabled? There is definitely some value here. Virtualization, by definition, abstracts you from many of the constraints of the underlying hardware meaning it allows you to do things like automatically restarting a node on different, healthy hardware when the original hardware fails. In this scenario, if you have a physical server failure that takes down a node, the RAC database will continue service based on the surviving nodes, while, in parallel, Oracle VM Guest HA will restart the VM (RAC node) hosted on the failed physical server on another, healthy server in the pool. The node can then quickly and automatically rejoin the RAC cluster, bringing it to full capacity faster than any manual process. One thing to keep in mind is that you should specify what is known as “Preferred Server Policies” for your RAC nodes (VMs) in such a way as to prevent two RAC VMs from the same instance being hosted on a single physical server at any time to assure the best performance and service levels.

So that’s Oracle VM Guest HA and Oracle RAC. In the next installment in this series on HA, we’ll discuss the more general (i.e. non-database specific) case of HA cluster software and how it compares and complements Oracle VM Guest HA.

And, by the way, if you want to read a whitepaper on RAC and Oracle VM, go here and find it in the "Whitepapers" section.

Top-Down Application...and Virtualization...Management

Was just reading an article over at Virtual Strategy Magazine entitled "Taking the Server Out of Application Management" by Jasmine Noel.

She makes some good points that align with what we're seeing and hearing as well -- that virtualization management can make life harder for App Admins if you don't have the right tools or processes for dealing with the fact that you no longer know where your app might be physically.

I agree with this. Oracle's particular approach to virtualization is all about how we can be the absolute best at solving this particular problem: how can we do virtualization / management specifically for the purpose of making applications (and their middleware, databases, OSes, etc.) actually easier to deploy, manage, and support? Because, the good news is, virtualization can actually make things much easier for apps admins when you use things like Oracle VM Templates (pre-built virtual machines) to deploy your golden images rapidly. By the way, the Oracle VM Management Pack for Enteprise Manager that just came out is a huge step in this direction to manage the entire stack together. I'll try to blog about that separately soon, but you can check that out here...http://www.oracle.com/us/corporate/press/017955_EN

You can find the article at the link below. Let us know what you think: how can we make virtualization so that it actually makes your life as an apps admin or DBA better?


Friday Mar 20, 2009

Where Does Guest VM HA Fit-in Versus Other HA Software? Part 1: About Guest VM HA

Customers ask us about Oracle VM and its guest HA / auto-restart functionality in the context of how it is best used in relation to other HA technologies available “up the stack” and I thought that it might be useful to share the discussion here over a couple of blog entries. This is the first entry in that series. This installment is about providing some context and then a summary of how the Guest VM HA / auto-restart feature works in Oracle VM.

Oracle Real Application Clusters (if you are using a database), Oracle Clusterware, and Oracle VM Guest HA are all available choices for users in implementing a highly available environment so how should they think about the best way to leverage these in their production enterprise? This is an especially important topic because some vendors like VMware or others that have only one part of this…say, only the guest VM restart features, or only the HA clusterware…are anxious to position their solution as THE complete solution when that is just not the case. As with many things in IT, it depends on what you are doing.

For context, and for those of you not familiar with the details on these products/features and Oracle VM’s Guest HA features, there are some whitepapers to look at on the Oracle Technology Network (OTN) page for Oracle VM (look for the Guest VM HA paper but also the paper on using Oracle RAC on Oracle VM and on using Oracle Clusterware to make Oracle VM Manager highly available…). I won’t go into all the details here except to summarize that Oracle VM has embedded portions of the OCFS2 clusterware stack into Oracle VM Manager to basically make the server pools into HA clusters and automatically restart VMs after a server or VM failure. Since this is sophisticated clusterware and not just the ICMP-based “pingware” that many other virtualization products offer, Oracle VM does an excellent, very deterministic job of detecting true failures and restarting accurately and cleanly without a lot of guessing as to the status of the VM.

For example, we perform not only network heartbeating but also disk-based heartbeating to enable more robust failure detection. And then we do distributed lock management on the storage to make sure there is no chance of data corruption in restarting a VM after declaring it failed. So aside from the fact that this is more sophisticated than the vast majority of guest VM HA solutions out there that don’t run a heartbeat on the disk, and that maybe only perform basic reserve release on the storage, the nice thing about the implementation is that it is super easy to make a VM highly available: just check a box. Truly. Yes, the clusterware is there under the covers, but the user creating the VM is not exposed to that so no agents to install, no services to register…just check the Enable HA box when you create the VM and you are done.

Over the course of a couple additional blog entries, we’ll walk through some considerations to help you decide which techniques provide the best total solution in your environment. Luckily, the considerations are pretty clear, with each product having a distinct set of considerations. Yes, we are Oracle, so of course we’ll speak to some considerations that are specific to the database, but most of this applies generically to any workload. The next blog entry in this HA series will be about RAC and Guest VM HA and should come out in the next few days so keep an eye out for that.

Allow Me to Introduce Myself: Adam Hawley, Director of Product Management, Oracle VM

First, I join Monica in welcoming you to our new Virtualization Blog and I look forward to maintaining a dialog with you on topics relating to virtualization in the industry, at Oracle, and with Oracle VM in particular. We'll be doing our best to post new entries frequently...at least weekly if not more often, so please check back often.

For my first entry, I wanted to introduce myself so you can understand my perspective. I'm the Director of Product Management for Oracle VM in Oracle's Corporate Architecture Group and while I've been working on Oracle VM only for about the last 15 months, I have been working on virtualization and large-scale system management in the industry for quite some time: since about 2000. Prior to this, I worked on the core framework for Oracle's premier system management product Enterprise Manager Grid Control for a couple of years, but I also spent about 8 years at Sun Microsystems with half of that time devoted to virtualization in the Solaris organization. My product management group at Sun introduced Solaris Containers and I went on to eventually be responsible for all product management and marketing for Sun's so-called N1 initiative that was on the cutting-edge of the "dynamic data center" initiatives that swept through the industry several years ago. Those initiatives were far from perfect, but they were about data center level virtualization and, in many ways, were a pre-cursor to current thinking around cloud computing.

So I've been working in this area a bit and always focused on enterprise server workloads and that makes Oracle, and Oracle VM, a great place for me. But enough about me! I've got a number of blogs planned starting today with the HA discussion below and other topics down the road including virtual appliances with Oracle VM Templates, some thoughts on Xen and KVM, and a host of other things so stay tuned!


Get the latest scoop on products, strategy, events, news, and more, from Oracle's virtualization experts




« July 2016