Introduction and patch heaven
The most important thing in Windows Server 2016 might just be the smallest – Nano Server. Distinguished Engineer Jeffrey Snover, who has been driving a lot of the architectural changes in Windows Server, calls it "by far the most important, most significant change we've made to Windows Server since Windows NT 3.5."
It's not a new version of Windows Server; it's a new way of using it (based on a lot of internal changes to the code). Snover calls it a "major refactoring" and says the correct way to refer to it is a "headless 64-bit only deployment option. It's not an SKU, it's a deployment option. Nano Server is a subset of Windows Server that is API compatible. It is not a new server, it is Windows Server; it is fully compatible with all the components included – there just aren't as many of them."
Snover has a long string of statistics about Nano Server. "It is incredibly small – 20 times smaller than Sever Core. Size on disk goes down to 410MB from 8.3GB for a VHD; that's much smaller. When you want to have lots of instances or you want to move things across the network, that [footprint] goes right down. Setup time was 300 seconds, that goes down to 40 seconds." That's with the preview and he warns "we have not done a performance pass so some of the numbers might go down, but we're not done refactoring so some of the numbers might go up."
But Microsoft didn't slim down Nano Server just for the sake of it, and it didn't strip out the native GUI just to be fashionable. Snover admits that switching to the minimal Nano Server and remote management will take some effort, even if you're already using PowerShell and automation.
"We require people to make changes to adopt this – why do we do that? The results speak for themselves. We analysed a full year of bugs – we found out what code needed to be changed in each case and we found out where that code was in Nano Server.
"Nano Server would have had only one tenth the number of critical patches; we had 23 but with Nano Server, that goes down to two. Full Server had 11 patches that required reboots; with Nano Server we would have had just three. Plus the number of ports open goes down from 34 to just 12."
The improvement here isn't just that Nano Server needs fewer server resources or fewer reboots – it's that it's far more secure. "Remember, a critical patch is a vulnerability we discovered and fixed. Prior to the patch we had the vulnerability and we didn't know it. So this is not just fewer patches, this is increased security – because you did not have that problem."
Today, Microsoft is focused on two scenarios for Nano Server. "Nano Server allows us to be clear about who needs to do what," says Snover. "This is for cloud OS infrastructure and for 'born in the cloud' applications; apps that are built for the cloud. You're going to have lots of them – when you have lots of them, you want maximum efficiency and you want to manage them with a cloud mind-set. You never want to walk up to them; that's antithetical to the cloud mind-set."
If you never get close enough to touch a server, it doesn't need to have a GUI – you can still have graphical tools to manage the server and the apps running on it. "It's still a GUI," he points out, "it's just not on the server. We want to shift the focus on to web GUIs, using the new Azure portal framework, so admins can manage a server from any device they want."
Clearly, Nano Server is ideal for what Microsoft does with Windows Server – running Azure on it. But Snover is convinced it's relevant for Microsoft customers as well. "We're taking the cloud-first innovation model and we're incorporating it into Windows Server." And it will grow beyond the two scenarios to support far more of what you do on servers today as more server applications become capable of full remote management.
"Over time, Nano Server will be the foundation of Windows Server," Snover promises. "We expect all things will run on this, with a few exceptions. Fax Server is never going to run on this by definition, because it's a client stack. But Nano Server is not meant for small things; it's meant for everything."
But don't expect Nano Server to gradually regain all the features of full Server. Responsive as Microsoft wants to be to feedback from customers, the team also has a direction. "To do something of this scale requires both courage and a point of view – if you didn't' have a point of view, all these 'what about this, what about that?' questions would blow the project out of proportion."
Approaching the future
It's not just development models and application styles that are changing either, Snover points out – server hardware isn't the same any more. "There's just dramatic revolution at every stage of the stack whether it's SoCs, memory architecture, non-volatile memory technology where sometimes you view it as a disk, sometimes it's persistent memory…
"In the data centre it's getting even more radical. Instead of the rack-style architecture, instead of a bunch of pizza boxes attached with top of rack routes, you're going to have a bunch of components attached to a network. There's so much change happening at every single layer of the stack."
That's why Microsoft isn't just dipping its toe into the water with containers but supporting them fully, because they're just one of the changes that matter. "With containers, we surprised everyone," he claims. "The number of times I've heard people say 'I expected container-washing from Microsoft but you guys went all in and more.' It's the same with Nano Server; doing it requires courage. We're in the game. We're participating in all those conversations.
"How it will ultimately play out, well, we'll see, but we have to be in the hardware conversations, the silicon conversations. We have FPGAs in our stack, the HoloLens has custom chips in it. We're designing the solutions, we have those muscles – zig or zag, we're going to be a player."
He isn't making any predictions about which changes will be most significant, saying only that "radical things will emerge." What matters more, Snover believes, is the new Microsoft approach of "being very fresh, very open; involved in difficult conversations, not staying in the past and having the courage to do these big bold advances we've made."