If Microsoft was serious before about becoming a private- and hybrid-cloud player, it's twice as serious now. The newly unveiled Azure Stack provides enterprises with the ability to create private clouds with the same bits Microsoft uses to build Azure itself.
But architecture alone doesn't make a cloud useful, and a private cloud isn't an end in itself. It's simply a way to get work done.
To that end, Microsoft wants Azure Stack to do more than fill a niche labeled "Private Cloud" and provide a way for enterprises to get real work done -- and that means deploying and managing apps, not only VMs.
A new containment strategy
In fact, most of Microsoft's pitch for Azure Stack has been about apps -- and, by that token, apps in containers, rather than VMs.
In the first major blog post from Microsoft about "the next generation of hybrid cloud," discussion of Azure Stack opened with how it "extends the agile Azure model of application development and deployment to your data center," and how easy it would be to mix enterprise applications like SQL Server, SharePoint, and Exchange with "modern distributed applications and services."
Those last few words refer to containerization, another area Microsoft has been emphasizing as the way forward for this kind of workload management. In fact, Microsoft has prepped not one, but two Docker-esque containerization technologies for enterprises: Windows Server Containers and Hyper-V containers.
Mike Neil, a general manager at Microsoft, described in a phone discussion how the two differ. Windows Server Containers, he said, are like the isolation systems used in Docker, where resource isolation is done by way of technologies in the kernel. This makes it more suited for running applications at scale and high density.
Hyper-V Containers provide isolation by way of the Hyper-V hypervisor. This means less application density, but a far more bulletproof degree of isolation and would be better in multitenanted situations. Hyper-V's virtualization also allows for more decoupling between the container and the underlying OS, so the container's lifecycle can be managed apart from the system it's running on.
"Both of these environments," Neil said, "can be directly managed, and work exactly the same, through the Docker API. It's just a configuration option for deployment."
This stack ain't OpenStack
This applications-first strategy is not the only way Azure Stack is meant to stand apart.
By and large, that competition is OpenStack, around which much of the talk about enterprise private clouds as of late has revolved. But OpenStack is the product of a committee effort rather than a single designer, with all the inconsistencies, tug-of-war between parties, and conflicting agendas that implies.
By contrast, Azure Stack's top-down design provides more immediate benefit to an enterprise than an open source solution. That goes double so if that open source solution requires a heavy investment of time and expertise to yield results, as Walmart found out. (Azure Stack is proprietary, but with Microsoft banking far harder toward open source than ever before, it would be tough to say that will always remain the case.)
The use cases for OpenStack -- creating one's own private cloud -- also haven't proven to be as pervasive as originally imagined, in big part because creating a private cloud has only been a stepping stone toward a larger goal: running one's own applications at scale, with minimal fuss. Technologies like containers may deliver more of what an enterprise needs in that respect. Again, Azure Stack has design points with those specific goals in mind.
Finally, while OpenStack has been adding more container-related functionality, it still had trouble making the package easy to consume. One provider of such solutions went belly-up when it tried to deliver an appliance-based solution. If Microsoft can package Azure Stack for easy consumption and delivery, that's a leg up over the competition.
How Microsoft will (and won't) stack up
Azure Stack's single big advantage is also its single big disadvantage: It is built, unapologetically, on top of and with Microsoft's existing solutions.
For enterprises that are already strongly Microsoft-centric, this is good news, since it means Microsoft is living up to its promise of making on-prem Windows Server installations a hybrid extension of Azure. Plus, Microsoft states it'll add management within Azure Stack for its own, noncontainerized enterprise apps: SQL Server, Exchange, and so on.
But for enterprises that have built their custom application stacks on top of non-Microsoft solutions, Microsoft has to prove those workloads can migrate seamlessly into Azure Stack and get results as good as or better than whatever they left behind.
More companies are starting with their infrastructure already in the cloud, rather than migrating an existing one to it. Microsoft has plans on the table to capture both classes of customers, whether by way of Azure Stack or other offerings (such as Office 365). It's a good idea, since a major portion of Microsoft's future is riding on it.