Windows Server 2016 - Nano Server and how it has changed already

One of the things that I was most excited about working with in Windows Server 2016 was Nano Server.

The ability to have super fast, super scalable servers to run infrastructure roles (to me) seemed like an awesome addition particularly given that it was the smallest server footprint we'd ever delivered and booted in record times. I consumed as much information about it as I could. I delivered a few talks on how I thought it would be one of the most adopted new features coming from our new product set and I even encouraged some of my customers to do some proof of concept trials in their Dev environments.

Then because IT is constantly evolving, and Microsoft is always listening to our customers and consumers, Nano Server changed before it even really took off. The feedback that we received from customers was that Nano Server was great but that it was primarily being used for Containers and that they wanted it to be even smaller again. So we listened and at Microsoft Build in May 2017 we announced the changes. You can read the announcement hereĀ https://blogs.technet.microsoft.com/hybridcloud/2017/05/10/windows-server-for-developers-news-from-microsoft-build-2017/.

Now I am fielding questions from my customers and students in my workshops about what the changes mean and how containers can benefit them, but more importantly "what are containers?". So let's deal with those questions (not going to deep dive though haha, just a brief overview):

1 - The changes mean that Nano Server, from the most recent update, will no longer be able to implement Server infrastructure roles. It can no longer, for example, run IIS or DNS in your environments like it could at from the earliest Technical Previews right up until the RTM version. What administrators in particular need to understand is that this update is gearing Nano Server to be more focused on applications and the Dev lifecycle, allowing your environments to be more adaptable and capable of change. Something that has been said to me over and over since I started with Microsoft is "cloud first, mobile first" and these changes to Nano are following that path. Please bear in mind though that any infrastructure capability you wanted to run on Nano you can run on Server Core and we recommend you look at that option. Server Core is much smaller in footprint than the Desktop experience version allowing you to continue to maximise your storage space amongst other great benefits.

2. What are containers and how can they benefit you? (I'll try to keep this as brief as I can) Containers are isolated instances that allow system level virtualisation and they come in two flavours, Windows Containers and Hyper-V Containers. They are independent of each other and are stateless, which means you can easily discard them as required without impacting anything else in your environment but more importantly they can run regardless of the other containers running in your environment. The difference between Windows and Hyper-V containers is essentially in the abstraction of the kernel. Hyper-V containers have their own virtualised kernel which allows for much greater isolation and performance as they don't require access to the host kernel to run. Containers allow your developers and programmers to abstract their applications within your environment which benefits administrators by reducing administrative overhead and benefits Dev teams by allowing them to have dynamic deployments without the need for infrastructure changes. Their apps can potentially deploy anywhere (on prem, in the cloud or on a laptop) as containers are completely portable due to their isolation from the OS. Gone are the days of single app to server scenarios. Containers also benefits the money managers in your organisations because they don't have to outlay for more hardware to supportĀ  their developers.

You can create customer container images or pull down Microsoft and other vendor images from Docker, there is an amazing amount of support out there for them. Additionally container images are available in both Nano and Server Core iterations but the important distinction between the two is that Nano is highly optimised and focused on born in the cloud applications while Server Core is more focused on traditional applications.

So there is my brief overview on the changes to Nano and how Containers could benefit you and your teams. I could go on for hours so please feel free to post questions.