In the first post of this series I highlighted that with Windows Server 2016 there are some feature differences between the Standard and the Enterprise Editions that might get lost in some of the messaging, so in this series of posts I’m going to be highlighting the feature set of Windows Server 2016, and will include information from a few different resources, but the primary one is the Windows Server 2016 Technical Preview 5 Feature Comparison. As mentioned in the first post of the series, these will focus on what’s new from a Windows Server 2012 R2 perspective, rather than Windows Server 2008 R2 or Windows Server 2012 perspective. I will focus on those later if needed.
Following on from the previous post in the series, which was on Security, today’s topic is Compute, and following you will find the information from the Feature Comparison Guide. It's important to note that Nano Server requires Software Assurance on the server, so make sure you talk to your Microsoft distributor about applying that to your OEM server license purchase.
Please note that these are subject to change and are based on Windows Server 2016 Technical Preview 5. If any adjustments need to be made, please leave a comment.
In this section, the various aspects of server computing are discussed, such as Nano Server and Linux capabilities.
Nano Server is a new headless, 64-bit only installation option that installs “just enough OS,” resulting in a dramatically smaller footprint that results in more uptime and a smaller attack surface. Users can choose to add server roles as needed, including Hyper-V, Scale out File Server, DNS Server and IIS server roles. User can also choose to install features, including Container support, Defender, Clustering, and Desired State Configuration (DSC),. Nano Server can be remotely managed via PowerShell, Microsoft Management Console (MMC) snap-ins, or the new Server management tools cloud service.
Nano Server in Windows Server 2016 is for two key scenarios:
- Cloud OS Infrastructure
- Application platform for born-in-the-cloud applications running in a Guest VM or container
Nano Server Overview
As customers have adopted modern applications and next-generation cloud technologies, they’ve experienced an increasing need for an OS that delivers speed, agility, and lower resource consumption. Nano Server inherently provides these benefits with its smaller footprint.
Nano Server is a deep rethink of server architecture. The result is a new lean cloud host and application development platform that’s a fraction of the size of Server Core. Its small size helps to reduce security attack risks, achieves quicker and fewer reboots, and significantly reduces deployment time and resource consumption. Nano Server is Informed directly by our learnings from building and managing some of the world’s largest hyperscale cloud environments.
Nano Server is focused on two scenarios that demand a smaller footprint OS:
- Born-in-the-cloud applications: support for multiple programming languages and runtimes (e.g. C#, Java, .NET Core, Node.js, Python, etc.) running in containers, virtual machines, or on physical servers.
- Microsoft Cloud Platform infrastructure: support for compute clusters running Hyper-V and storage clusters running Scale-out File Server. Nano Server is ideal for scenarios such as:
- A “compute” host for Hyper-V virtual machines, Windows Server containers, and Hyper-V containers either in clusters or as standalone servers.
- A storage host for Scale-Out File Server.
- A DNS server
- A web server running Internet Information Services (IIS)
- A host for applications that are developed using cloud application patterns and run in a container or virtual machine guest operating system
Nano Server must be managed remotely – there is no local shell, nor is there any ability to connect with remote desktop services. Remote management consoles, PowerShell remoting, and management tools like System Center Virtual Machine Manager as well as the new web-based Server management tools can all be used to manage a Nano Server environment
Nano Server OS Capabilities
Nano Server is available in Windows Server 2016 for:
- Physical Machines
- Virtual machines
- Hyper-V Containers
- Windows Server Containers
And supports the following inbox optional roles and features:
- Hyper-V, including container and shielded VM support
- Datacenter Bridging
- DNS Server
- Desired State Configuration
- Network Performance Diagnostics Service (NPDS)
- System Center Virtual Machine Manager
- Secure Startup
- Scale out File Server, including Storage Replica, MPIO, iSCSI initiator, Data Deduplication
All supported optional roles and features can be installed either offline, by injecting it into a Nano Server image, or online, when Nano Server is running. To enable the fastest possible time from instantiating a new Nano Server instance to the point where a role or feature is up and running, the recommended approach is to inject the role or feature into the offline Nano Server image. The Nano Server roles and features are not included in the image, instead they are separate packages in order to minimize the footprint when Nano Server is deployed – any roles and feature not used are not in the image or consuming disk space.
Nano Server is not listed in Setup. Instead, there is a Nano Server folder on the media with a Nano Server WIM file and a packages folder. Included with Nano Server is a PowerShell module that can be used to create and configure a Nano Server image, including adding drivers, roles, and features to a Nano Server image.
Nano Server can join an Active Directory domain, but does not support Group Policy. To apply policy at scale, Nano Server supports DSC.
Nano Server does not have a local user interface, all management of Nano Server must be done remotely using PowerShell, MMC snap-ins, the new web-based Server management tools, or other remote management tools. Nano Server include PowerShell Core and set of cmdlets as well as WMIv1 and WMIv2 providers for remote management and automation. The exception to local user interface is the Nano Server Recovery Console. If keyboard and video access (locally, vmconnect, or BMC) is available there is a text mode logon that provides a simple menu to repair the network configuration. This is provided in case the network is misconfigured remotely and the remote management tools can no longer connect, the network can be repaired instead of redeploying.
Nano Server Hyper-V
The Windows Server 2016 Hyper-V role can be installed on a Nano Server; this is a key Nano Server role, shrinking the OS footprint and minimizing reboots required when Hyper-V is used to run virtualization hosts. Nano server can be clustered, including Hyper-V failover clusters.
Hyper-V works the same on Nano Server as it does in Windows Server 2016, aside from a few caveats:
- All management must be performed remotely, using another Windows Server 2016 computer. The Hyper-V Manager or PowerShell can be used from the remote server.
- RemoteFX is not available.
- Hyper-V Replica is not supported in the current preview releases.
Nano Server Storage Server
Nano Server can run the Windows file server role, which works the same as it does on a full deployment of Windows Server 2016. The same management restrictions apply – all management must be performed remotely through PowerShell or management consoles.
Nano Server can also use Multi-Path IO for disk throughput and redundancy, and the file server role can also be joined to a failover cluster in Nano Server. In addition, there is full iSCSI support and Windows Server 2016 data deduplication can be used to conserve disk space. The combination of these features make Nano Server an excellent candidate for use as a Scale-Out File Server cluster, which can back a Hyper-V private cloud using a low-footprint, lower-maintenance OS.
Nano Server also supports the new Storage Server capabilities introduced in Windows Server 2016, such as Storage Replica. For more details on these, see the Storage Server section below.
IIS on Nano Server
IIS 10.0 is supported on Nano Server in Windows Server 2016 with support for ASP.NET Core.
- Individual IIS features can be added to a Nano Server installation of IIS 10 using the PowerShell IISAdministration module commands (remotely), the AppCmd.exe utility (remotely) or editing the IIS configuration store directly.
- Web sites and related configuration tasks like binding HTTPS certificates can be performed using PowerShell or remote command-line tools.
Nano Server DNS Server
You can deploy the DNS server role in Windows Server 2016 on a Nano Server image. Because the Domain Controller role is not supported on Nano Server, the DNS server cannot host AD-integrated DNS zones; the DNS server will therefore use file-based DNS zones only.
Administration of DNS, like all Nano features, must be performed remotely through management consoles, PowerShell scripting, or utilities.
|With Hyper-V as your hypervisor, you can run a variety of guest operating systems – Windows, Linux FreeBSD – in a single virtualization infrastructure. This capability works for Hyper-V and Azure Stack in your datacenter, and also underlies the Linux and FreeBSD capabilities in the Microsoft Azure public cloud. Microsoft works with the Linux and FreeBSD vendors and communities to ensure that these guests achieve production level performance and can take advantage of Hyper-V’s sophisticated features such as online backup, dynamic memory, and generation 2 VMs.
Linux and FreeBSD virtual machines for Hyper-V
Hyper-V supports a wide variety of Linux distributions and FreeBSD running in guest virtual machines. While these operating systems can run in emulated mode, the best results are achieved when using the drivers that take advantage of Hyper-V's virtual devices. These drivers are known as the Linux Integration Services (LIS) or FreeBSD Integration Services (BIS). With these integration services, Linux and FreeBSD guests achieve production level performance, integrated management, and use the sophisticated features provided by Hyper-V. For more information, visit Linux and FreeBSD virtual machines for Hyper-V.
- Microsoft works with Red Hat to ensure that the LIS drivers are built-in to Red Hat Enterprise Linux (RHEL) releases, and that RHEL is certified by Red Hat for running on Hyper-V. For more information, visit Red Hat Enterprise Linux virtual machines on Hyper-V.
- Microsoft works with the CentOS community to ensure that the LIS drivers are built into CentOS releases. For more information, visit CentOS virtual machines on Hyper-V.
- Microsoft works with the Debian community to ensure that the LIS drivers are built into Debian GNU/Linux releases. For more information, visit Debian virtual machines on Hyper-V.
- Microsoft works with Oracle to ensure that the LIS drivers are built into Oracle Linux releases with both the Unbreakable Enterprise Kernel and the Red Hat Compatible Kernel. For more information, visit Oracle Linux virtual machines on Hyper-V.
- Microsoft works with SUSE to ensure that the LIS drivers are built into SUSE Linux Enterprise Server (SLES) releases, and that SLES is certified by SUSE for running on Hyper-V. For more information, visit SUSE virtual machines on Hyper-V.
- Microsoft works with Canonical to ensure that the LIS drivers are built into Ubuntu releases. For more information, visit Ubuntu virtual machines on Hyper-V.
- Microsoft works with the FreeBSD community to ensure that the BIS drivers are built into FreeBSD releases. For more information, visit FreeBSD virtual machines on Hyper-V.
Linux Secure Boot
Linux operating systems running on generation 2 virtual machines can now boot with the Secure Boot option enabled.
Ubuntu 14.04 and later, SUSE Linux Enterprise Server 12 and later, Red Hat Enterprise Linux 7.0 and later, and CentOS 7.0 and later are enabled for Secure Boot on hosts that run Windows Server 2016. Before you boot the virtual machine for the first time, you must configure the virtual machine to use the Microsoft UEFI Certificate Authority. You can do this from Hyper-V Manager, Virtual Machine Manager, or an elevated Windows PowerShell session.
PowerShell Desired State Configuration (DSC) for Linux
PowerShell Desired State Configuration (DSC) enables you to declaratively specify the configuration of your server, and PowerShell DSC will “make it so.” Originally released for Windows, PowerShell DSC is now available for your Linux servers, using the same declarative syntax.
Hot add and remove for network adapters
You can now add or remove a network adapter while the virtual machine is running, without incurring downtime. This works for generation 2 virtual machines that run either Windows or Linux operating systems.
Hyper-V Socket support for Linux
Hyper-V Sockets provides a secure, general purpose communication channel between Hyper-V host and guest operating systems. Hyper-V Sockets communicates over the VMBus and therefore doesn’t require network connectivity and uses Linux sockets to communicate. Within Linux operating systems this appears as a new socket type in Linux (identified as new socket address family). More information on Hyper-V Sockets can be found within the Make your own integration services documentation.