So Microsoft are playing catch up with VMware with their Hyper-V platform. But why? Are they missing a trick here? The vast majority of the virtual machines in production are based on various versions of Windows Server, so with Hyper-V as your platform you’re running Windows Server on Windows Server. The Hyper-V (or vSphere) system then spends effort trying to manage resources such as RAM, CPU, Network etc. For example grabbing back RAM from the virtual machines by collecting blocks of “unused” RAM or finding common blocks to share amongst multiple VMs, or trying to timeshare CPU cycles across multiple VMs, each containing it’s own CPU cycle management.
Unlike other virtualization vendors, Microsoft should have an advantage at looking at a better solution. They own the API’s that the applications use, so they could virtualize at this level – so the Hyper-V layer would be one instance of Windows, with one resource manager etc, the virtualized applications would then sit on top, still gaining the benefits of fault tolerance, high availablity etc that the virtualization world already offers complete OSes. Obviously one of the applications would need to be a platform to support other OSes (Linux, old Windows platforms, and VMs for Test or development).
Microsoft have in essence done this in part – with clusters. In practice these tend to be single application clusters, in much the same way as there’s a tendency to only install one server application on a single windows server. Applications for this environment need also be specifically designed to cluster. Piling loads of different applications on a single cluster just doesn’t happen.
So shouldn’t Microsoft push to have clustering a more general tool and having it supporting virtualised applications? Of course this isn’t actually a new idea, push it too it’s natural conclusion and you get ye oldee stylee mainframe composed of a number of closely coupled physical servers (blades etc) with some shared storage. All the funnier, because Windows NT came from the designer of DEC mini computers and HP EVA storage is a development of Compaq storageworks, which again came again from DEC!
Linux should be able to do the same sort of thing, but of course would be heading back towards it’s roots to – Linux came from Unix and Unix came from Multics! It all has a similar ring to the idea of electronically joining cars together on a motorway beging driven by a single driver in the front vehicle – which is also known as a TRAIN!