Microsoft has started to renew its reputation as an innovator. For instance, when you look at the latest beta release of Windows Server 2016, you might mistake it for one of the thin and light Linux distributions that are tailored to run containers and microservices. In fact, the release left me asking: Windows Server 2016, what are you, and what did you do with the Windows Server that kept me glued to the keyboard in the data center all night?
Containers and microservices
Most data center managers would not associate containers and microservices — two new terms in buzzword bingo — with Windows Server. In the rawest form, containers may not be of much interest to Windows Server environments; containers initially solved challenges that didn’t exist in Windows Server environments. One main advantage of containers has been application portability. Microsoft’s .NET platform has enabled portability across supported versions of Windows. However, containers have also supercharged the microservices architecture.
A LEGO brick is a good example of a microservice. Individual LEGO bricks are not interesting, but take several LEGO bricks and add some skill, and you can create extremely complex machines. In the same manner, take several single purpose services that run in individual containers, and you can build a very complex and scalable application.
Virtual machines (VMs) are too big to make sense for microservices. Also, VMs take too long to spin up; microservices running in containers can be spun up extremely quickly and have a density that’s difficult to replicate with a VM. Microsoft is adapting Windows Server 2016 for a world that can support containers and traditional .NET applications.
Windows Server Nano
At Microsoft’s developer-focused conference Build 2015, Microsoft PM Manager Andrew Mason and Distinguished Engineer Jeffrey Snover provided an an introduction to Windows Nano Server. Windows Server Nano is a headless 64-bit distribution of Windows server. Unlike Windows Server 2012 R2 or Windows Server 2012 R2 Core, there is no console interface — it’s designed to run microservices.
Windows Nano Server will be extremely light. Remember needing to have a Windows installation CD handy to install an additional Windows feature such as IIS? Microsoft has now pre-loaded all Windows features, which makes it convenient to add services though it bulks up the installation.
Windows Server 2012 R2 Core has a 4 GB footprint; in comparison, you can find many Linux distributions that take less than 1 GB to install. Windows Nano Server has a 0.4 GB footprint.
A container or a server?
Windows Server Nano is a distribution of Windows Server. Developers will create a Server application or a microservice designed to run on Windows Server. Nano images can run within a VM, a Hyper-V container, or even a bare metal server. It’s a very different concept of a Windows Server.
One of the primary challenges with headless Windows is server management. Microsoft has relied heavily on console access to manage Windows Server. One of the largest knocks against Windows Server 2012 Core was the lack of remote manageability. Microsoft is working to build tools that leverage PowerShell and native Windows Management Interface (WMI) calls. There should never be a use case were an administrator needs to interact with a console of a Nano server.
What do you think about this refactoring of Windows Server and microservices? Can you imagine use cases for Nano Server within your environment or projects? I’d love to hear your thoughts in the comments section.
Note: TechRepublic, ZDNet, and Tech Pro Research are CBS Interactive properties.