Late last month, Microsoft released the first technical preview of Azure Stack, its private and hybrid cloud platform built on the forthcoming Windows Server 2016. Unlike the existing Windows Azure pack, which gives you a small selection of Azure-compatible features, Azure Stack is (for the most part) the same code as Microsoft’s own Azure cloud, for both running a cloud and delivering cloud services.
And unlike other private and hybrid cloud offerings, what you get is ready to use, says Azure CTO Mark Russinovich, because it includes both IaaS and PaaS services. “This is a hybrid cloud platform; a platform you can deploy on premises that has the power of a hyperscale public cloud. You can run the services and use the services that are available in a public cloud in your own data center.”
That’s something only Microsoft is offering, he says. “When it comes to businesses’ needs, they have inadequate alternatives. Look at the hyperscale public cloud; none of them offer on premise. With AWS it’s ‘have a nice day on premise!’ None of them are focused on how to get to on premises.”
Other hybrid cloud systems focus only on the application model, which Russinovich views as only addressing developers. “Some people look at Cloud Foundry and they consider that their app flexibility model, but that's just the top edge of the platform.” They’re missing PaaS services, they’re missing role-based access control, network management, creating the virtual machines, managing VMs, the storage behind the VMs, and all the rest of the management that get with Azure Stack. This is not just the top edge [of a cloud model]; it gets very deep.
Hybrid cloud competitors like OpenStack that focus at the lower end of the cloud model are also problematic, believes Microsoft’s chief architect for enterprise cloud, Jeffrey Snover. He suggests that few deployments are successful. “Those that are have taken one of two paths. Either they’ve taken a large proportion of their IT staff and turned them into open source developers who are contributing at lowest level of the software, farthest removed from business differentiation. Or they write a very large check to system integrators. You get the most expensive free software in the history of mankind, because of the system integration it takes to get it going.”
The cloud model
Mike Neil, the vice president of Microsoft’s Enterprise Cloud Group, points out that the term hybrid cloud isn’t always clear. “In my mind and, I hope, the customers’ mind, hybrid means you can run in an on premises and a public environment. We want to set that expectation for customers that hybrid really does mean flexibility of workloads in either location. Cloud is not a location, it's a mind-set; we want to make location an option for customers.”
As a cloud platform, Azure Stack represents a different approach to the enterprise data center, and to enterprise apps from Windows Server. And many of the new features in Windows Server 2016 – like nested virtualization, containers and Nano Server – are meant to run both Azure and Azure Stack.
It used to be that you focused on building reliable, redundant, fault-tolerant, highly available infrastructure to make sure your application was always up and running. You can treat cloud as a way to get that infrastructure for traditional apps, with IaaS. Azure and Azure Stack have options like availability sets, templates and image galleries that simplify creating pre-configured VMs (including Ubuntu images from Canonical, not just Microsoft workloads) and extensions that inject management agents into VMs, which make virtualization more efficient.
But as we’ve learned how expensive it is to buy and manage that infrastructure, the cloud has given rise to an alternative approach: using cheap, commodity hardware managed by automation and building applications in ways that let us ignore infrastructure problems – because the workload can automatically move onto other hardware in the cloud. That means PaaS and microservices; and in the case of Azure and Azure Stack, tools like Azure Service Fabric and Resource Manager for building cloud-style applications, using Azure Blob and table storage.
The real value of the cloud comes from the combination of scale, automation and app development that takes advantage of that scale and automation, and that’s what Microsoft is trying to bring to the enterprise with Azure Stack.
The topology and the configuration of both hardware and software is a huge part of what makes a cloud service efficient, points out Vijay Tewari of Microsoft’s Enterprise Cloud team. Infrastructure management, storage, network and compute configuration; “all of these things are not trivial when it comes to designing a cloud. We’re taking all the learning we have from running Azure and packaging it for our customers.”
With traditional servers and applications you have a lot of options; that’s the opposite of cloud standardization. “You end up with a situation where every deployment looks different; from a support standpoint, root cause analysis becomes difficult and performance tuning becomes a challenge,” says Tewari. “With Azure, a tremendous amount of automation replicates the same topology – and that’s what we bring to Azure Stack.”
Azure but not all of Azure
When Microsoft builds an Azure data center, it deliberately reduces the choice of which servers and storage and network infrastructure it buys, both to get economies of scale by buying a huge amount of the same hardware, and to allow automation. Failing hardware will be automatically removed from service and workloads moved onto identical hardware that’s identically configured through automation; replacing the hardware is simpler and again, it will automatically be configured by the automated management systems. The human pushing the cart of replacement parts will be a lone and occasional visitor to an Azure data center.
For Azure Stack, you might want to take a similar approach and order the Azure Stack certified versions of the hyper-converged Cloud Platform Systems that hardware partners like HP and Dell offer, which will come already set up with Azure Stack. Currently they have versions for private cloud based on Windows Azure Pack, but Azure Stack hardware is sure to follow. Dell even lets you pay for a CPS in a flexible way that looks more like buying cloud services than buying hardware.
Another approach is to choose hardware certified through Microsoft’s Fast Track program and build a DIY system. “We’re not prescriptive about what processor you use, but we are prescriptive about how you lay out the servers and the software on the servers,” notes Tewari. However, Microsoft doesn’t expect most enterprises to want to do that level of system-building, except for creating a proof of concept – which you can do on as little as a single server (four servers will be the minimum for a production deployment, and that won’t run all the Azure Stack services).
But even with a significant amount of the same code in Azure Stack running on standardized hardware, it’s important to remember that running Azure Stack won’t get you all of the features and advantages of public Azure.