Share what you know with millions of people

Focus is the best place to turn what you know into remarkable content
×
0

Why isn't virtualization cloud computing?

Things have been way to quiet on the cloud computing topic, so I'm posting a controversial question to drive some good discussion. We all hear many cloud experts say, virtualization isn't cloud, but I never hear any good reasons why this is the case. I'm also going to add my own $.02 on this one, but join in to the fray on either side of the equation.

Attachments

1
Robert Keahey
IT, Business and Social Strategist/Commentator, SummaLogic LLC
Posted on Nov. 24, 2011

Virtualization enables several aspects of cloud computing, but in and of itself is not cloud computing. You can do the virtualization thing and not call it a cloud.

Obviously virtualization makes things like elasticity and self-service provisioning a reality, which are key characteristics of a cloud environment. But, I can also have a cloud without those things. Do I absolutely need virtualization to run a multi-tenant SaaS environment? No. Can I create a IaaS on demand environment without virtualization? Yes. Can I deliver either of those services as effectively without virtualizaiton? Probably not.

So, while the two sides of the equation are related, they are not totally dependent on each other. Net result, virtualization does not equal cloud computing.

Now, with all that said, would "cloud computing" (our beloved marketing term) be what it is today without virtualization? No... So no matter how you slice and dice your question there's always going to be an argument that can be made for either side...

You rabble rouser you... :)

0
Andrew Baker
Andrew Baker Replied on Nov. 25, 2011

Things were too quiet for JP... :)

1
Patrick Pushor
Founder/CTO, CloudChronicle.com
Posted on Nov. 25, 2011

Building on what Robert has stated - virtualization is a key enabler to cloud - driving the automation necessary to ultimately enable self service to the end user. We've been able to provision physical resources in an automation fashion for some time - but compared to software based provisioning it's slow, complex, and just plain inefficient. Just like software defined networking is exploding with potential - you will look back in a couple of years time and wonder how we ever did without it.

That being said - I've long maintained that virtualization is a just a tool (in a set of many) that speaks to how you build a solution set. If a cloud services provider could provision physical resources vs. virtual and still compete (performance, economics) - then more power to them. This is happening in some niche markets but it's getting more and more difficult to maintain. How do you compete with the agility and cost savings (through scale out potential) that virtualization buys you?

0
JP Morgenthal
JP Morgenthal Replied on Nov. 25, 2011

It's ironic that those operating a massively-scaled cloud (e.g. Facebook, Google) use designs like OpenCompute over hypervisors. Building a cloud for purposes of delivering a service is different than the infrastructure to deliver cloud as a service!

0
Patrick Pushor
Patrick Pushor Replied on Nov. 25, 2011

Good point! It definitely is different. When you control the infrastructure stack and write the application on top of it you have much more control over how you do things. Scale for one particular service means something significantly different than a system that supports scale for thousands of customers - a much more generic & agile approach is necessarily required. Interesting contrast.

1
Patrick Pushor
Founder/CTO, CloudChronicle.com
Posted on Nov. 25, 2011

Good points. But does speed and performance _require_ specialization? No doubt that is the path of least resistance, but I'm not convinced it is a requirement. If that were true - people would be abandoning hope of processing big data and/or real time high performance processing on generic platforms like EC2. Instead, new(ish) technology that is purpose built to solve these needs is emerging. (nosql, memcached-like processing aggregation, etc.). Your point of specialized vs. generic approach isn't lost on me - I'm just not sure it is that black and white. The economies of scale embodied in today's generic platforms seem to be valuable enough to spur people to begin to "think different". How is that for a call-back to your first sentence? :-D

0
JP Morgenthal
JP Morgenthal Replied on Nov. 25, 2011

If you include experience in your definition of performance, then the answer is probably yes. You are typically going to have a better experience when specialization is applied. Parallelism is a great enabler of high performance computing, but as demonstrated by Hadoop, the architecture of the infrastructure can deliver widely varying results. An infrastructure designed to support Hadoop's node design will perform way better than a generic vSphere architecture.

0
Patrick Pushor
Patrick Pushor Replied on Nov. 25, 2011

I won't argue with "better experience" - to do so would be foolish. But embodied in that statement (to me) is that it is not "required". It feels like our discussion is saddled too extensively in the theoretical. Decisions around a specialized vs. a more generic approach are always cost vs. benefit focused - and answering that question is complex. For me it harkens back to usage patterns, data criticality, organizational maturity and confidence, and ( ultimately ) value to the business.

Single purpose infrastructure and cloud (or, at the very least, IaaS) doesn't mix very well.

0
JP Morgenthal
JP Morgenthal Replied on Nov. 25, 2011

Agreed! Which is why a consultant's favorite line is "it depends!" It's all theoretical until focused on a particular design tradeoff scenario.

0
Kim Feraday
Kim Feraday Replied on Nov. 26, 2011

Agree with Patrick that you can achieve speed and performance without specialization. It just requires more discipline when building the solution - but once you're there the benefits are clear.

1
Andrew Baker
Director, Service Operations, SWN Communications Inc.
Posted on Nov. 25, 2011

Virtualization isn't cloud computing because for the same reason that CPU != Computer

In this context, I'm using the term "virtualization" to mean "server virtualization"

It is a key component in cloud computing, certainly, but as several folks have aptly pointed out, SaaS is a legitimate segment of cloud computing that need not rely on server virtualization.

Even when one relies on server virtualization within an organization, the result might be some flexibility and better capacity management within the technology arm of that organization, without any corresponding ability of the direct end user community to self-provision services within that organization.

Virtualization is primarily a technology. Cloud computing encompasses not only technolgy, but ideologies and policies which move the control of the activities involved in the enabling and disabling of services closer to the user of those services. It also facilitates an every-access model that is not inherent in virtualization.

Virtualization is only a part of the overall scope of cloud computing.

-ASB: http://XeeMe.com/AndrewBaker

0
JP Morgenthal
JP Morgenthal Replied on Nov. 25, 2011

First, thanks for bringing the "definition" issue into the game. Virtualization is a big honkin' area. Next, while cloud can be defined by many things, there are those quick to say, virtualization that offers self-service and elasticity can't also be cloud. In your final sentence you say, "virtualization is only a part of the overall scope of cloud computing." Okay, but that begs the question, what then is the entire scope of cloud computing? Also, do people use the terms "cloud manager" and "virtualization" interchangeably due to software like VMWare?

0
Andrew Baker
Andrew Baker Replied on Nov. 25, 2011

Always welcome, JP.

I don't have a problem with self-service, elastic virtualization being called "cloud" in the same way that IaaS, PaaS and SaaS are all called cloud even when we know that they don't encompass the full scope of cloud computing by themselves.

As for the use of terms like "cloud manager" being synonymous with virtualization, that's a marketing issue. :) VMWare is most certainly interested in their name and brand being synonymous with cloud computing, even if that's only a part of what they offer (today).

1
Damir Lukic
Owner, Virtual People Ltd.
Posted on Nov. 25, 2011

Simple and easy analogy (at least for public cloud):

your application or your OS = passenger
server virtualization = bus full of passengers
cloud = public transport service
cloud provider = public transport service company

Hope this helps a bit in understanding differences between terms. If we want to expand the cloud types (private, hybrid), we can talk about private/company car pool, or rental car pool or Taxi service.

The main idea behind cloud computing is - take what you need, for how long your need it and pay for what you've used. And of course, access it from anywhere and from any device.

1
John McCoy
Solutions Architect, Perceptive Software
Posted on Dec. 15, 2011

As far as I'm concerned, virtualization is in fact a type of cloud computing. A VMware ESX cluster deployed in an enterprise environment easily meets all of the criteria currently proposed to define cloud computing.

Until we can agree on a definition of cloud computing that is more exclusive and definitive, Facebook, Amazon, Google, Oracle Exalogic, Salesforce.com, and everything else marketers can stamp "cloud" on cannot be legitimately excluded.

0
JP Morgenthal
JP Morgenthal Replied on Dec. 16, 2011

Amen! You clearly understand why I posed the question the way I did.

0
JP Morgenthal
Principal, Ranger | Cloud & VDC Services, EMC Consulting
Posted on Nov. 25, 2011
  • Recommended by:

Patrick,

Your last point is a key theme in Steve Jobs' biography. The balance between openness with it's sacrifices to meet lowest common denominator to gain agility, and closed where the entire experience can be controlled. The business community has been driving openness since the days of Unix because the competition benefits them and because "good enough" software is an acceptable mantra when IT is not your business' focus.

I've never been a big fan of abstraction across tiers. It's great when developing software libraries, but abstraction across the tiers introduces to many anomalies. However, you cannot argue that it limits your agility to flatten the tiers. If you code your business logic directly into SQL Server stored procedures, you cannot easily move to Oracle or MySQL. Speed and performance requires specialization. Genericism is the host of mediocrity.

0
  • Recommended by:

Virtualization is the key enabler of Infrastructure as a service, one important aspect of Cloud based deployment. Platform as a service enables rapid application development and deployment in cloud, and a proper IaaS framework would be important for PaaS. The thurd component, SaaS can take advantages of PaaS and IaaS infrastructures. The current SaaS based application is a hosted model and have some characteristics of Cloud..

0
Mark Moeller
Vice President Business Development, ICC Global Hosting
Posted on Dec. 15, 2011
  • Recommended by:

Cloud computing should be defined as where and not how you compute. Cloud computing is essentially outsourcing in a shared data center and has the features of scalablity, on-demand resources, and a Opex cost model. Cloud computing may and usually does include virtualization but can also include dedicated or physical servers, but again, it's where the computing is located is what matters. Centralized, shared data center resources managed by a third party makes up Cloud computing. If you use servers you own in a facility you own it's not Cloud computing.

Answer This Question