My 2nd article about new Windows Server 2016 installation option “Nano Server” is now available @StarWind Blog. In my previous article, I covered general concepts around Nano Server, in this one I talk about more practical aspects: installation and management. At the end of the day, you would agree that the best way to learn new technology it is try to use it – this way you will be exposed to its strengths and weaknesses directly, and can get real understanding of whether it works for you or not. Though at this point even Microsoft admits that despite all its greatness, at the moment, Nano Server has quite limited utility as it supports only a small subset of roles and features out of those which you can find in full GUI version of Windows Server.
I’ve recently spent some time exploring Windows Nano Server installation option and wrote detailed blog post for StarWind blog entitled “Windows Server 2016 Nano Server – Just enough OS model” you can read it here. Article covers Nano Server basic concepts and compares this installation type with conventional Full Server and Server Core installation options – if you find this topic interesting please read on @ StarWinds Blog.
Just a quick how to post. When you do more and more remote management with PowerShell it may be necessary for you to quickly check if you run Full Server or Core or Nano. And unless you never logon locally to the box you and you only managing it via PowerShell then you may be not very sure if it is running Full Server, Minimal Management Interface, Core or Nano. There is a ServerLevel registry key available starting from Windows Server 2012, and quick look up for its value will answer this question:
dir 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Server\'
Sample output you may see in case of Nano Server:
Another use case for this key is when you writing a script and need to adjust its behavior depending on whether it is being executed on Full Server, Core or Nano.
I was somewhat busy with all things K2 recently and there are a lot of interesting stuff about to be released in version 4.7 soon. Because of that I didn’t have enough time to follow new developments on MSFT side but find some time to read up on Windows Server 2016 new features the other day, as well as watch recording of CBT Nuggets webinar “What to Expect in Microsoft Server 2016” by their new instructor Michael Watkins. This blog post is largely based on info from this webinar plus some info from MVA Course: What’s new in Windows Server 2016 Preview.
First I would take some feedback Michael Watkins who just recently joined CBT Nuggets team. As he has a wealth of prior experience in teaching relevant topics his way of structuring and explaining material, as well as vocabulary range and usage are just brilliant (sorry can’t help but notice this as an amateur linguist 🙂 ), but his voice is a bit of a problem – not everybody will find it pleasant to listen and sometimes it is a bit too silent even when you set your volume to max (and it seems not to be recording quality but just the way he speaks, i.e. he is not consistently loud). In that respect his type of voice is similar to Greg Shields who did “Microsoft System Center 2012 70-246” training for CBT.
So at the moment there is Windows Server Technical Preview 4 is readily available for you to download and try and RTM is expected to arrive at some later point this spring. So it is high time to have at least a brief look at new features we are going to get there. MSFT explains their investment choices as a response to the following trends/problems in IT:
Image source: MVA Course: What’s new in Windows Server 2016 Preview
Essentially there are five major new features/improvements areas:
- Nano Server. This one is a little bit different than core and a lot different than GUI.
- Containers. Technology known as Docker in Linux world and especially important thing for web-based apps. Basically a great way to isolate apps from the OS.
- Virtualization Enhancements. These are mainly focused on security and identification improvements.
- Storage Direct and Storage QoS. Allow you to control storage bandwidth, capability and flexibility allocation.
- Software-defined Network. New paradigm for building and managing networks is here, and MSFT created technology which allow you to implement SDN with Windows Server 2016.
We are going to get the following flavors/editions of Windows Server 2016:
- Nano Server (similar to core)
- Server Core
- Server with a Desktop Experience
(1) Nano Server is a headless (aka GUI-less), x64 only version of Windows server. As opposed to Core, Nano Server is a purpose-built version of OS and not an installation option like core where you getting all the binaries and then select between Core & GUI.
It has no GUI at all. At the time of deployment you have to decide how to use Nano Server. It is purpose built OS based on packages. See details in “Getting Started with Nano Server” on MSDN. So packages architecture introduced to keep it lean. At the moment the following packages are available:
- Reverse Forwarders
As MSFT documentation puts it Nano Server “is similar to Windows Server in Server Core mode, but significantly smaller, has no local logon capability, and only supports 64-bit applications, tools, and agents. It takes up far less disk space, sets up significantly faster, and requires far fewer updates and restarts than Windows Server. When it does restart, it restarts much faster.”
In terms of remote administration it is almost the same as Server Core (but keep in mind the fact highlighted above – it has no local logon capability). So as Michael Watkins puts it, Server Core introduced brave new GUI-free world, Nano Server kicks that up a notch. In a dry language there is no local logon capability (true headless or headless-only, if you please) + x64 only workloads, admin tools and binaries.
To administer Nano Server remotely you can use PowerShell, WMI and different x64 remote management consoles (Hyper-V Manager etc.)
(2) Containers. This is a DevOps thing which is allows you to package & run apps withing containers (physical/virtual) which are fully self-contained with no footprint on base OS at all (all dependencies are inside of container). Containers architecture comprise of the following layers Layers:
- App A (Bins/Libraries) | App B (Bins/Libraries) | Containers Layer
- Container Management Stack
- Host OS with Container Support
Image source: Windows IT Pro
There are two types of containers as you can see from the picture above:
- Windows Server Container (first available in TP3) – shared base OS, very scalable & resource efficient. Good for trusted multi-tenant environment/private cloud type of environment.
- Hyper-V Container. Higher/extra level of isolation alternative to Windows Server Container. Good for shared hosting/highly regulated environment. Multiple applications for multiple tenants/public multi-tenant environment. More resources required but isolation is better.
Both types of containers can use the same image.
And after reading till this point you may get a feeling that this just terminology update + use case refinement (with some technical improvements) similar to one which we see when Terminal Services evolved into Remote Desktop Services (we got Remote Desktop and Remote Apps later) and further down the road MSFT technology mix evolved into idea that you have Desktop, Presentation and Application virtualization set of use cases/technologies. If you followed their predecessors for you it was probably sort of like evolution of existing things – use cases clarified and delineated and slew of new terminology introduced. So for newbies it was something absolutely new for veterans logical evolution with some renaming of parts.
Dockerized App (supports Windows Server Container, Linux Container) and can run anywhere Customer Datacenter, Microsoft Azure, Service Provider:
Image source: azure.microsoft.com
Docker introduced/popularized containers. Server 2016 offers integration with Docker. Docker is just an open-source engine which automates deployment of apps as containers. MSFT partnered with Docker so you can run “dockerized” apps in your MSFT environment and vice versa.
Docker Hub is a huge collection of open and curated applications available for download.
(3) Virtualization Enchancements
MSFT recognized Hyper-V problems and become more serious about security/legitimacy.
Host Guardian Service. If attacker seizes control of host OS it used to be too easy to access guest VMs next. Now better isolation provided to protect VMs in such scenario. Host Guardian service allows to create Guardian Fabric to mitigate against previously mentioned attack and also to define legitimate hosts and created shielded-tenant VMs. It leverages BitLocker which was introduced for Windows Client long time ago and now made its way into Server OS. So in a way we again see old technology leveraged for new use case and hiding behind new shiny name.
Shielded VMs are protected from tampering so that they only can be run within fabric designated to this VM and cannot be moved and run elsewhere.
Image source: rlevchenko.com
Existing VMs can be converted into shielded VMs.
(4) Storage Direct and Storage QoS
Here we also entering in the era of Software Defined Storage, as Microsoft further improves Storage Spaces technology by adding tight integration with System Center and reinventing it as Storage Spaces Direct.
Image source: technet.microsoft.com
Storage Spaces Direct offers two deployment options:
- Compute and Storage Resources joined/managed together -for small deployments
- Compute and Storage resources are separate and managed separately – for larger deployments
Image source: blogs.technet.microsoft.com
Storage QoS. Name is somewhat self-explanatory and now we have things like Rate Limiters (on Hyper-V Cluster) and Policy Manager + I/O scheduler (on Scale Out FS cluster) – I can’t help thinking that architectural pattern here is the same as in infamous NAP. Picture gives you a good top-level idea what we have here:
Image source: blogs.technet.microsoft.com
(5) Software Defined Network
I first heard about SDN concept back in 2012 when visiting lecture of Nick McKeown and Scott Shenker which they gave at Moscow Polytechnic Museum. Lecture was entitled “Internet of tomorrow: How SDN will change the rules” (recording in English is available on YouTube) and it gives best possible explanations of why and what of SDN by pioneers and leading researchers in this field. These guys not only were involved into initial research but also launched SDN and network virtualization start up Nicira which was focused on bringing related technologies to market, it was launched in 2007 and in 2012 acquired by VMware for $1.26 billion.
Now you can find SDN concepts implementation in Cisco (9K solution) and VMware products. SDN is all about introducing abstraction of higher-level functionality for better management of networks by means of decoupling network data plane and control plane. Or in other words it is Network Function Virtualization. And now Microsoft offers you their own implementation of this concept which includes the following components:
- Network Controllers (Standardized Rest API & PowerShell)
- Service Managers (Software load balancer, Virtual network Firewall, HNV L2/L3GW, S2S GW, VPN GW, SC for 3rd party VNF)
- Hyper-V Host
Image source: technet.microsoft.com
Network Controller is a foundation for SDN and it is Highly Available & Highly Scalable brand new server role for WS2016 which includes:South-bound API – communication with your physical networkNorth-bound API – communication with network controller
To conclude 5 major change areas seem to be very interesting to learn more about and open up new possibilities to design your it infrastructure and deliver your IT services.
Also after looking at the investments area in this version of Windows Server you can see that role of Windows admin profession evolves in a direction of a “fabric admin“, as essentially you now can use Windows server to manage compute, storage and network resources, i.e. fabric on top of which other services are running. So in a way it an end of an era when Windows admin could say “I manage Windows, storage questions handled by storage guy and for networking things there is a networking admin” now Windows administrator supposed to manage entire fabric of compute, storage and network resources – entire fabric (or at least this is Microsoft vision for Windows admin and Windows Server 🙂 ).
More resources for those who are in a mood for learning more about Windows Server 2016:
For those who worrying about system requirements for this OS – those are traditionally super humble/match those of previous version (but everybody knows what those minimum requirements mean anyway 😉 ), you can look through the relevant info at System Requirements and Installation section of Windows Server 2016 Technical Preview documentation on TechNet.
I recently find a tiny bit of time to build a VM with the latest version of Windows Server 2016 Technical Preview which is TP3. Earlier builds were available under name Windows Server 10 Technical Preview. For details on what’s new in this release you may refer here.
So insall UI looks very familiar if you ever installed Windows 10 and the very first window is something well familiar to all, nothing has been changed here. But second one demonstrates couple of major changes:
So default installation option entitled Windows Server 2016 does not contain “Core” in its name but this is actually what used to be known as “Core” installation option. Second option – “Windows Server 2016 (Server with Desktop Experience)” is our beloved full-fledged GUI version. And what is crucial here is that with Server 2016 this install type decision not reversible without re-installation. So once again: Unlike some previous releases of Windows Server, your choice of Server Core (which is new normal/default) vs. Server with Desktop Experience at the time of installation is not convertible to the other mode. And as you can clearly see from screenshot above the “Minimal Server Interface” and “Server with a GUI” modes present in Windows Server 2012 R2 are not available in this release.
Server 2016 also includes 3rd installation option which is not exposed in Setup Wizard – Nano Server, and you install it by configuring a VHD (details here).
To give you an idea of how new installation options compare against each other following picture can be useful (source):
And once installed with GUI your Server 2016 TP3 will look (no surprises here) very similar to Windows 10: