Ubiquitous underpinnings and idyllic interfaces - The virtualization ecosystem of the (very near) future
(Sorry “by the end of the day” turned into four days. I was in rural Pennsylvania with no Internet!)
In 2006 I was taking a look at the then unreleased XenSource XenServer 3.0. The server was running on a Dell laptop on a filing cabinet next to my desk where the XenServer management interface was open on my desktop. My wife walked into our office, looked over my shoulder, and while pointing to the monitor on my desk asked, “Is that the Xen thing you said you were going to be reviewing?” I responded that the laptop next to me was running Xen, and that she was just looking at the management software.
The fact of the matter is that to most people, the software that manages virtualization *is* virtualization — a fact that may save companies like VMware. See, the virtualization management interface is the most public facing component of the virtualization ecosystem, and two crucial parts of this ecosystem are quickly becoming commoditized: the hypervisor and the virtual machine (VM). The entire virtualization ecosystem is being redefined, and in a few years the companies that wish thrive in this market will need to focus on an entirely different set of technologies than they like to tout now.
This blog briefly discusses the commoditization of the different parts of the virtualization ecosystem and what areas companies like VMware will need to pay attention to in order to survive software giants like Microsoft and open source alternatives such as Xen and KVM.
The Virtualization Ecosystem
The virtualization ecosystem is several different pieces of software working together in order to deliver a virtual machine (VM) to an end-user and allow administrators to easily manage the separate components.

The public facing components of the virtualization ecosystem are the management interfaces. There may be many instances of these management interfaces running at once as several IT administrators may be effecting some change simultaneously. In fact, the management interfaces need not even be the same piece of software.
All management interfaces connect to the next component in the ecosystem, the management server (although some can interface directly with the hypervisor, it is generally not recommended). Well known management servers include VMware VirtualCenter, lib-virtd, and the xend process when the XenApi is enabled. Like management interfaces, there may be several running instances of management servers, but not for the same reason. A single management server can only orchestrate X number of hypervisors and VMs before it becomes bogged down, so sometimes it is necessary to create multiple management servers. Additionally, if a company has several geographically separate locates, they may deploy a management server per site.
Peeling back another layer in the virtualization ecosystem reveals the hypervisor: if the management server is the grand conductor of this train, then the hypervisor is the engine working non-stop to ensure that everything keeps steaming along. In a single data center there may be dozens of hypervisors, and again, the deployment does not need to be homogeneous.
Finally, the last remaining part of the ecosystem is the VM itself. VMs may run any supported OS, and they are largely the reason that companies like VMware is going to have a hard time competing with any OS vendor (especially Microsoft) that decides to get into virtualization (but more on that later).
The Changing Ecosystem
The virtualization ecosystem is changing; a division is occurring that is separating the ecosystem into two areas: specialized and commoditized software.

Hypervisors are becoming commoditized such that they no longer need to be purchased from a specific vendor. A few years ago when virtualization was starting to heat up, playgrounds across the nation were quickly subject to the VMware-kids and Xen-kids cliques. Either you were down with ESX or you were hip to Xen; there was no middle-ground. However, today we find ourselves in an entirely different predicament. In addition to VMware and Citrix (bye, bye XenSource, we hardly knew ya), we have the soon-to-be released Hyper-V, VirtualIron, KVM, Sun xVM, and even Oracle is getting into the game. The number of available hypervisors on the market has grown drastically in a relatively short period of time. Compare that to when you had only two choices; now there is a plethora of virtualization solutions to answer the demand for reducing physical servers in the data center and consolidating resources. Now that hypervisors are a dime-a-dozen it only makes sense that a virtual machine (VM) should be able to run on any of them.
It is no surprise then that even virtual machines (VMs) are facing commoditization. Look at what occurred at last year’s VMworld with the Open Virtual Machine Format (OVF). Already it is possible to convert a VM from VMware to Microsoft to Xen with little hassle and OVF will soon make running one company’s VM on another hypervisor platform as seamless as opening a plain-text file (new-line characters aside).
Never Has Been
Here is one of the most poorly kept secrets in the virtualization community: virtualization has never been about the hypervisor or VM formats anyway. Most people do not buy VI3 or use Xen because they are partial to one hypervisor over the other. I say “most people”, because there are occasionally reasons that you may want to use a specific hypervisor (paravirtualization and x64 support were two reasons for a while). Generally though, customers are purchasing a “name” and a set of features. For example, customers who buy VMware products do so for two reasons: they trust VMware when it comes to virtualization and VMware has features like High Availability (HA), the Distributed Resource Scheduler (DRS), and VMotion.
However, VMware’s name has been intrinsically linked with their product, ESX, in the enterprise space for a long time, so they always lead with ESX announcements. This needs to change. Any vendor that wants to stay in the virtualization space needs to start leading not with hypervisors, but with management interfaces and servers. And said vendors need to make their software embarrassingly interoperable, otherwise they will quickly get snuffed out by Microsoft, and here is why.
The Management Cloud
My entire house is Apple-oriented. I have an iPhone, AppleTV, a Mac Mini to serve iTunes from my file server, and my wife and I both have a MacBookPro and MacBook. And everything just works. Seamlessly. I actually prefer Linux, but the ability to have a completely vertical environment is just too nice to trade in for something that I would constantly be tinkering with. Microsoft owns enterprise computing for the very same reason: they have created a management cloud that enables a completely vertical environment for IT administrators to control all of their software. And with Hyper-V and Systems Center, Microsoft is extending this vertical, management cloud to cover the virtualization ecosystem as well.

As you can see, the management cloud includes systems (OS) and application management, user management, and patch management just to name a few areas. Microsoft already offers all of these tools in a tightly integrated package with their expansive portfolio.
So if the hypervisor is no longer the primary reason to select a vendor, how will companies like VMware, Citrix, or open source hypervisors compete with Microsoft when the latter offers a complete management cloud that encompasses virtualization?
Work Smarter
Any piece of software or company that hopes to be a major player in the changing virtualization ecosystem will need to do four things:
1. Concentrate on producing software in the specialized category, i.e. management software. Hypervisors and VMs are ubiquitous, it is the interface that matters today and more to the point, tomorrow.
2. Build management software the is completely open so that it can be integrated with Microsoft’s management cloud. There is simply no way that a company like Citrix or VMware can compete with Microsoft when it comes to the management cloud. The fact of the matter is that the lion’s share of the servers being virtualized run some version of Microsoft Windows — and when you can go to one vendor, Microsoft, and get everything you need to virtualize your data center, the competition better have two things to stand out: 1) the ability to fit neatly into the Microsoft management ecosystem and 2)…
3. Besides interoperating with Microsoft management tools, management software needs to be pretty and powerful. One of the reasons I love Ubuntu is because it is a practice in minimalism — it gives me what I need to get my job done and not much more. That said, powerful features are lurking under the covers. Management interfaces produced for virtualization ecosystems need to have dazzling looks and the management servers should have powerful features (such as HA, DRS, etc.) that make them stand out from the pack.
4. All of this should be delivered via the web. There is simply NO excuse to develop virtualization management applications that are tied to a particular desktop. Companies like VMware, Citrix, Microsoft, CA, BMC, etc., all need to hire some web developers that also have virtualization experience and make the two work together in order to produce a management client as power as VI but as pretty as WordPress’ new management interface.
Final Thoughts
The virtualization ecosystem is changing. Only a few years ago having the best hypervisor on the block was enough to maintain market dominance, but these days it is all about producing the best management interfaces. Software vendors that wish to play in the game need to produce idyllic interfaces that are fun, functional, interoperable, are delivered via the web, and can manage any of the ubiquitous hypervisors on the market.

Do we need CIM model to get this done?
The CIM model is not required, and I am not sure that it would help all that much anyway.
Awesome article. You had me hooked up until the last point, #4 about everything must be delivered by web. I have to disagree with you on that. I cannot tell you how much I loath the sacrifice of the rich and NATIVE client applications to the Web App Gods. And I love Gmail and Wordpress, and use them along with tons of other web apps--for my PERSONAL affairs.
Hmm, I'm having difficulty putting into words why I feel so strongly about this topic. But I really do, and many colleagues I have spoken to feel the same. For example, Altiris' management software previously (prior to their acquisition by Symantec) had native clients. Today their products use a web front-end. I've heard on more than one occasion that being cited as a reason to move away from the products.
You could argue that my bias against web clients for enterprise software is due to the fact that nobody has gotten it right yet, whereas Google and so forth very much know how to make the web interface work for consumer end-users.
Maybe I just don't like the thought of right-clicking on a virtual machine to see a "Search Google for EXCHATA01.COMPANY.COM" popup. Yes, using javascript you can catch those right-clicks, but that introduces its own problems.
I strongly support VMware continuing to progress their VI Client, which is available for Linux and Windows as a native appliaction. Sure, they have web interfaces for ESX, VC, and even the free VMware Server products. But the native clients (which /do/ use a web service to talk to the mgmt server) are just BETTER.
Hal, we just love to disagree, don't we : ) The fact that companies cannot seem to produce web management applications is not a mark against web applications, it is a sign that these companies need to hire better developers. It is perfectly possible to produce a web application that could manage, let's say VI3, that has all the functionality of the VI client.
> But the native clients (which /do/ use a web service to talk to the mgmt server) are just BETTER.
Only because software developers take the easy route and use the IDEs that produce native apps. We need an IDE that produces web applications. For example, Eclipse or NetBeans integrated with GWT.