Friday, September 22, 2006

Is paravirtualization a viable approach?

Virtual Iron expressed its skepticism about paravirtualization. I already said that I don’t see much benefit in this approach, and let me explain why.

Hardware virtualization. - Hardware virtualization will probably catch up with software virtualization in 2-3 years. Yes, I know, VMware published a report that says that software virtualization is still ahead. But for how long? Intel is investing so much in its virtualization technology, I bet the results will come out sooner than later.

No standard hypervisor. -  This problem is more serious. As of now, we have Xen, Microsoft Hypervisor and VMware – all incompatible with each other. To me, it means that each and every OS has to be modified (para-virtualized) for each hypervisor separately.

Who’s going to do the work? OS vendors? Hypervisor vendors? Are you sure MSFT will make a genuine effort to para-virtualize Windows for VMware unless forced by antitrust authorities?

So far, VMware has been para-virtualizing different OSes on the fly using binary rewriting. When you make such changes static to the OS, you instantly have a multitude OS versions to service. Patches may actually be different for different hypervisors. Do we want “patch sprawl” in addition to “server sprawl” and “OS sprawl”?

What do you think?

Gartner wants Virtual OS After Vista

In this article, Information Week magazine tells us that Gartner wants the next (after Vista) version of Windows to be componentized using virtualization. They’re talking about coarse-grained componentization targeted to simplify deployment of OS components and applications.

In my opinion, hypervisors will (as Virtual Machines do now) provide a solution for compatibility problems, but software management will be solved by combination of OS virtualization (specifically, Virtuozzo templates) and perhaps  application virtualization (e.g. Softricity recently purchased by Microsoft). Once virtualization technologies mature, there will emerge a “hybrid” approach that will be able to solve a wider spectrum of problems more efficiently than any individual technology alone.

Bottom line, one way or another, all virtualization technologies will find their place and all of them will play a significant role in changing the way operating systems and applications are deployed and managed. However, it seems that no one should think there is even a slightest chance of getting virtually componentized Windows before 2010, and, realistically, more like 2012.

Server Virtualization seminar – Tuesday, September 26 in New York City

The publishers of SearchServerVirtualization are sponsoring a seminar on server virtualization. This seminar is free for attendees and you’ll hear directly from experts and users, including Lukas Loesche from Arvato mobile, who will talk about his experience with Virtuozzo and why they chose OS virtualization.

It’s not going to be a huge event, so you’ll get an opportunity to talk face-to-face with some very experienced people. The seminar is intended for IT managers who want to use server virtualization to increase server utilization and manageability while reducing server glut - highly recommended.

Mandriva Corporate Server 4.0 includes OpenVZ

On the chance you haven’t seen this, Mandriva has just released its Corporate Server 4.0, which comes with OpenVZ software. Mandriva is the first Linux vendor to include OpenVZ server virtualization software and we hope others will follow soon.

Tuesday, September 12, 2006

Reinventing the wheel

Reading this article about Xen and Virtual Iron made me think again how hard it is to develop a high-quality Virtual Machine Monitor or hypervisor and how that technology approach is so different from Virtuozzo.

Essentially, the hypervisor is a lot like an operating system. It shares CPU, memory and I/O between Virtual Machines – it includes an SMP scheduler, memory manager, I/O subsystems, plus its own driver. In addition, the hypervisor needs to efficiently support PAE, NUMA, thread libraries and other low-level mechanisms.

In short, the hypervisor needs to re-implement all the things that are already implemented in operating systems. Besides countless man-hours, I see few other issues:

·         It took OS vendors years and years to optimize drivers, schedulers, memory managers, PAE and NUMA support to the point of working really well with wide range of applications and under different conditions. Granted, repeating is easier than doing for the first time, but still it takes lots of effort that the OS vendors have spent years building that expertise.

·         Virtual hardware behaves differently than physical, which means that the OS is not really optimized to work on it. That means in the process of para-virtualizing an OS, someone needs to perform all these optimizations again.

·         When an OS gets more optimizations that it didn’t have before, chances are the equilibrium between OS and hypervisor will be lost and a lot of effort will need to be spent restoring it.

Frankly, it’s not like I’m going to lose sleep over VMware, Microsoft and Xen spending a lot of money and time of their best people on re-implementing what is essentially an OS kernel just below the actual kernel. Needless to say, Virtuozzo does not re-implement anything. It uses the OS and drivers directly and automatically takes advantage of all improvements made to the OS kernel.

Thursday, September 7, 2006

Re-distributing OS with trial software

Microsoft has just allowed re-distribution of their Virtualization products - http://www.virtualization.info/2006/08/microsoft-allows-free-redistribution.html. This is great news. Even greater news would be something else – if I could re-distribute an entire virtual environment or my application packaged as a virtual environment.

Right now, it is impossible to re-distribute your Windows application as a virtual appliance. Theoretically, you could either “resell” Windows and pay Microsoft for the license or you could include a trial version, which the customer can later upgrade to a full one by paying Microsoft directly. Unfortunately, Windows license prohibits re-distribution of Windows in any form.

On one hand, Virtuozzo is free from this problem – you can package you application as a template and distribute it – it’d be just like any other virtual appliance, only OS files (and licensing restrictions) don’t come with it.

On the other hand, the best way to distribute Virtuozzo trial version would be a VM with Virtuozzo already installed in it. All we need to be able to do that is an ability to include a trial version of Windows 2003 Server, which is freely available for download on Microsoft web site. Unfortunately, we cannot do it.

What do you think? Should OS vendors allow re-distribution of their trials, if only to make it easy for customers to evaluate applications?

 

Subscribe to: Posts (RSS)