Microsoft Attempts Software Appliances
Microsoft has been slowly revealing the roles that will be available as Server Core installation options for the upcoming Windows Server 2008. These Server Core installations are effectively Microsoft's attempt to provide a software appliance packaging option for customers in order to address the nightmare of administration and stability issues created by the general purpose OS approach (i.e. “one size fits all”). So how are they doing?
In a recent blog post, Scott Fulton replays some of the messaging that Microsoft product manager Andrew Mason delivered at TechEd 2007. According to Scott's post, Microsoft has achieved the following:
- a reduction in the attack surface of the OS from 5GB to about 1.5GB
- a corresponding reduction in the patching burden of 60%
- command line administration (although without “Powershell” - whatever that is)
- 9 server roles available sometime in 2008 or 2009, including a hypervisor role
Well, I suppose this is progress. However, if the goal is simplicity and a reduction in the burden of administration for security and patching, Microsoft still has a very long road to travel. Let's do a quick comparison with rPath's rBuilder capability:
- attack surface for “group core” is about 50MB (no, that is not a typo)
- by proxy, a reduction in the patching burden of 85% vs. the classic Windows approach (this figure does not consider at all the lesser patch requirement for Linux overall, just a straight ratio)
- command line plus graphical, Internet enabled rPath Appliance Agent administration
- infinite roles available based upon the applications generally available for Linux
As the world adopts server virtualization for X86 en masse, these critical packaging differences are going to become a huge challenge for all of the general purpose OS vendors. When hypervisor virtualization such as that offered by VMware and XenSource replaces the general purpose OS as the mechanism for managing infrastructure and attaching applications to the infrastructure (via virtual appliances), the critical packaging requirements for the OS that hosts applications will be:
- tight dependency management for the smallest possible attack surface
- configuration flexibility to optimize the system software to the application workload
- flexible kernel tooling to optimize performance across the various hypervisor management systems
- user friendly interfaces for creating and maintaining the software appliance definition
Given the technology, business, and cultural hurdles that the incumbent general purpose operating system vendors face in implementing these capabilities, it is unclear to me that they will commit to this new approach in a timely fashion. Although Microsoft acknowledges the need for these “slimmer” server core roles, they only plan to achieve a surface area reduction to 1.5GB, with limited roles, and virtually no user enabled packaging options for further optimization for the variety of applications and hypervisors. If that is all that Microsoft can achieve in the face of this obvious demand in the market for hypervisors with virtual appliances, the relevance of the incumbent players in the OS space may be diminished more quickly than anyone currently imagines.
Labels: hypervisor, Microsoft, rPath, software appliance, virtual appliance, Windows