The importance of hypervisor independence
One of the key features of CloudStack over many of it’s competitors is that it is hypervisor agnostic. I love this feature and am excited about what it offers service providers in particular.
However, I recently read a post which asked the question: “you can use multiple hypervisors, so what ? what is the likely hood of somebody ACTUALLY wanting to use two different virtualization technologies within the same cloud?” This did make me stop to think for a few minutes, then I felt obliged to write this article………
One of the fundamental concepts of a cloud model is “commodity”. It is the commodity nature of our compute power that then gives us the elasticity that we seek from our cloud . This isn’t quite as easy with storage, but technologies such as Swift are quickly giving a commodity element to that also. If our compute power is tied heavily to a particular vendor or architecture, we will find it more difficult to achieve this elasticity as our cloud scales over time. I see the virtualization layer as also needing to be commodity. I may need to greatly scale that layer at any time, I may need to contract that layer at any time. It needs to be commodity.
So, lets get this clear. In an enterprise environment, with a single hypervisor technology in play it is unlikely that somebody will be rushing to implement other hypervisors just because they’re moving to a cloud model that allows it. But, and this is an important but, should that enterprise be restricted to that single technology for the next few years, just because the orchestration layer they implement will only support that single hypervisor? I think not. Who knows what the demands of the business will be during that timeframe? There may be a massive demand for low-cost compute, there may be demand for a new technology stack, driven by a particular application.
There is a reason that VMWare are giving away V-Cloud Director for free (whether it is actually “free” is a debate for another day) ….they are doing it to tie organisations to their hypervisor technology. It is currently a very good hypervisor technology, we all know that . It’s the gold standard, but will that always be the case? And will we always need that gold standard ?
In the service provider space, the need for multiple hypervisors becomes even more apparent. This is a margins driven business and the service providers need the flexibility to give the market what it wants, and quickly. These guys need to be able to offer a range of services and, at the moment, that often means offering different hypervisor options. Unless our orchestration layer supports multiple hypervisors, this cannot be done.