Virtualization and Clouds

Virtualization - Who Needs It?

 

 

 

Many would say, and few would disagree, that machine virtualization was a key enabling technology that spawned clouds. Virtualization of machines is actually old. Really old. 1960s old (of course if you were born then you aren’t old, just perfect) - and often used when the machine capacities, in some way, exceeded the software capacity to make use of it efficiently (memory, disk, CPU time, etc. - most often CPU time). So you can totally see - without even thinking too much, that the aims of cloud computing are very similar to what virtualization has to offer in terms of making use of the physical machinery.

However, if you look at what are arguably the biggest clouds in use today - and certainly the ones that have been available for some time:

  • Amazon EC2
  • Rackspace
  • Google (App Engine - notably - but even their internal usage)
  • Salesforce (force.com - and more)

Only one of those actually used virtualization as a core part of its offering (AWS). Rackspace does as well now (cloud servers), but traditionally was managed hosting (hardware - hence the name!). Google and Salesforce did just fine with plain old operating systems and hardware - they simply built a platform on top of it.

You could argue that for infrastructure clouds virtualization is mandatory - but even this would not be true - just very convenient.

The thing is, the higher up you go in a platform the less you care about the layers underneath. For example, a platform as a service (PaaS) doesn’t require a VM based infrastructure for it to do its job (you don’t care). However, for the implementers of that platform - sure - virtualization may be convenient, but not necessary.

PaaS in particular can turn the lower layers into a commodity - surprisingly, even Cloud Foundry from VMware themselves shows this! There is no dependency on any particular virtualization technology at ALL in it. In fact, it doesn’t even require virtualization. It does, however, require some way to provide pools of machines - virtual or otherwise, to host application agents.

Now virtualization is here to stay - for a while at least - and most organisations that have IT are making use of it. However, expect the focus, as always, to drift ever higher in the level of abstraction - PaaS being the next layer up - and this will drive down both the cost and visibility of the virtualization software. Expect also to see it increasingly baked into the OS - it is just one technique available to slide up machines (LXC, linux containers, on Linux eventually could provide a lot of the benefits in a hyper-efficient way, for example).

— Michael Neale, Elite Developer and Architect

 

Add new comment