So what is the difference between virtualization and cloud computing, and why should you care. If you have virtualization, do you have cloud computing? If you have virtualization do you need cloud computing? How is the ROI for cloud computing different or better than the ROI for cloud computing? Does cloud computing help me compete with Amazon EC2? Does Cloud Computing help me virtualization business critical applications? How does cloud computing fit into VMware’s automated IT Operations vision? These important questions, and the answers to them will determine how Cloud Management does as a category in 2012 and beyond.
So are Virtualization and Cloud Computing the Same Thing?
No they are not. You can be 100% virtualized and not have a cloud. Similarly you can be only 20% virtualized and have a cloud. The key differences are:
- Virtualization comes from running a virtualization platform like VMware vSphere, Microsoft Hyper-V or Red Hat KVM. Virtualization is about consolidation of physical servers into virtual machines where it is now possible to run N instances of a server on one physical box. The historical ROI from virtualization is all about hardware consolidation. The future ROI from virtualization will come from automated IT Operations.
- Clouds are about a couple of key concepts. The first is self-service. This is where the ROI from a private cloud is most obvious. If your IT staff is spending time responding to requests for new servers and these workloads are transitory (temporary) in nature, a private cloud can completely automate this process. Private clouds are also very good at scaling work up and down. If you have applications that need elasticity (10 web servers in the morning 100 a mid-day, and 10 in the evening), then private clouds can automate this process for you. Clouds can also help you move work between your internal data center and a hosted data center (known as a hybrid cloud). Some private clouds can even help you automate setting up an entirely new user for your organization, or automate moving a user’s environment from one continent to the other when they travel from one of your locations to the other.
So What are Private Clouds Really Good For?
The bottom line is that private clouds are really good at automating change. If someone needs a new server or 100 new servers, private clouds are a great way to automate that on self-service basis. If you have an application that needs to scale up and down, private clouds are are a great way to automate that scaling (and the provisioning and de-provisioning of all of the required resources along the way). Adding users and moving users can be automated with a private cloud. Moving workloads (even automatically based upon demand) between your datacenter and one owned by a public cloud provider can be automated with private cloud management solutions as well.
An example of a private cloud management solution, vCloud Director 1.5 from VMware is shown below.
However, VMware is far from the only vendor offering first class private cloud solutions. Other leaders in this space include Abiquo, DynamicOps, Gale Technologies, and Platform Computing. These vendors typically support more than one hypervisor, and in most cases also do a better job of integrating into existing enterprise processes and tools.
But, no matter which private cloud management solution you choose, you will be left with one fundamental question. That question is, “Is this now how I will provision and manage everything in my environment, or is this just for those self-service, scaling, and cross-location use cases”. Herein lies the Private Cloud Management Challenge for 2012 and beyond.
The 2012 (and beyond) Private Cloud Management Challenge
If we look at what has been virtualized to date and what has not been virtualized to date a very clear picture emerges. A lot of what is “easy” to virtualize has been virtualized, but not a lot of what is hard to virtualize has been virtualized. This is illustrated in the graphic below which depicts that progress that VMware has made virtualizing workloads in its customer base.
Noticeably missing from the graph is any mention of custom developed business critical and performance critical applications. These applications are probably tied to the 65%+ of the database servers that are not virtualized yet. Which leads to the question. Do private clouds have a role to play in virtualizing this next set of applications? This depends upon the following:
- It is clear that VMware believes that it has already built a platform that is largely capable of virtualizing everything but the most latency sensitive of these applications.
- It is clear that VMware intends to use the OPEX based ROI that derives from automated service assurance to drive the virtualization of these applications
- For the most part, these line of business applications are not self service (you just don’t go order an instance of SAP from a service catalog), nor do most of them need dramatic scaling up or down of compute resources during the day or the month.
- Adding a user for a line of business system, or ensuring that a user is fully productive when they travel from one continent to another is a relevant use case for private clouds when it comes to this class of applications.
So on the face if it, it seems that VMware must succeed with vCenter Operations Manager (where the automated service assurance features reside) in order for business critical applications to get virtualized (and for VMware to continue to grow in 2012), but that not every application needs the benefits of private clouds in order for virtualization to continue to grow in 2012.
So Does the Private Cloud Business Have to Change?
To understand the answer to this question, it is most instructive to go look at the cousin of the private cloud, the public. What kinds of applications and workloads run in true shared multi-tentant public clouds? The answer is either not ones that you really care about, or ones that have been re-built from the ground up to withstand the vagaries of public clouds. If you want to understand the ramifications of insulating your applications from the vagaries of running in a public cloud go read the Netflix blog on surviving the Amazon outage.
Therefore if what a private cloud does is create a version of a public cloud in your own data center, then as things currently stand, the people who own your business critical applications are going to have the same reluctance to putting their applications on your private cloud that they would have putting their business critical applications on Amazon EC2 after reading the Netflix blog. After all, how many of your internal business applications owners are willing to write a Chaos Monkey and then turn it loose on their applications.
Additionally, clouds need to become much more applications aware than they are today. Pretty much any cloud management vendor can give you a way to put up in IaaS cloud. But how many of your business constituents want just an OS in an image? The reality is that business users want services, and services are delivered by applications. This means going way beyond the existing concept of a vApp into the notion of a container that understands the behaviors of potentially the multiple sets of multi-tier applications that constitute a business service.
To address this situation, vendors of cloud management solutions have to make their products a part of the solution to virtualizing business critical applications, not something that creates an environment that is an impediment to their virtualization. This means that private cloud solutions must become joined at the hip with performance and availability management solutions that together deliver automated service assurance for any and every application based upon the priority of those applications. It also means that integration with the new set of Image Provisioning vendors as Abiquo has recently done with Opscode Chef will increasingly become necessary. Partnering with vendors who have adjacent functionality in the stack diagram shown below will likely become the order of the day.
The good news is that some of the real innovators in the Cloud Management business are already going down this path. Platform Computing has a cornerstone feature of its solution, the ability to guarantee resource reservations for workloads in its system. Similar features are available from DynamicOPS, Abiquo and Gale Technologies. What no one has yet, is any real understanding of applications performance, and the integration of that information into how a cloud management solution works. This would require taking something like the prioritization features unique to VMTurbo, combining them with the ability of a BlueStripe or an ExtraHop Networks to understand the response time of every application, and combining these capabilities with how a private cloud management solution provisions and manages a business critical application.
Private cloud management offerings are today very well suited to create and manage self-service scenarios for workloads that are either transient, or that require significant scaling of resources during the daily or weekly cycle of business activity. Private cloud management offerings are today not well suited to be the management solution through which all future workloads get provisioned an managed – but must become so, so as to participate in the further progress of virtualization. The best way for private cloud solutions to leverage the further progress of virtualization, is to help drive it- by helping to drive the concept of automated service assurance for business critical applications.