Hyper-V has been around for the better part of a decade, and during that time the deployment process hasn’t changed much. To bring a new Hyper-V server online, you must install Windows, add the Hyper-V role, and then optionally bring the new server under the management of a System Center Virtual Machine Manager server. This technique has worked since the days of Windows Server 2008, and continues to work in Windows Server 2016. However, Windows Server 2016 contains a new option for deploying Hyper-V. You can run Hyper-V on Nano Server. As if that were not enough, Virtual Machine Manager can completely automate the process of deploying Hyper-V to a bare-metal host. In this article series, I will show you how to do both.
Pros and cons
Before I get into the how-to portion of this discussion, I need to take some time and discuss some of the pros and cons of running Hyper-V on Nano Server. There are two main advantages to running Hyper-V on Nano Server. The first benefit is that, as its name implies, Nano Servers are tiny. Really, really tiny. That means that all of those resources that would ordinarily have been used to run the host operating system can now be used to run more virtual machines. In other words, you may be able to increase your VM density, thereby reducing your overall hardware costs.
A second benefit to running Hyper-V on Nano Server is that by making the switch from a Server Core deployment to a Nano Server deployment, you are shrinking the host operating system’s code footprint. This means that there will be fewer patches to deploy. You will also improve security because Nano Server has a much smaller attack surface than other types of Windows Server deployments.
Needless to say, there are some rather compelling arguments in favor of running Hyper-V on Nano Server. Even so, there are some potential disadvantages that you need to be aware of. First, the transition to Nano Server may force you to rethink the way that you manage your Hyper-V hosts. Yes, you can use the Hyper-V Manager and System Center Virtual Machine Manager 2016, but there may be some components that you have to give up. For example, you may find that your current backup agents and antivirus software do not work on Nano Server.
A second disadvantage is that Nano Server deployments do not have a GUI. Granted, the same thing has been said about Server Core, but in spite of the rhetoric, Server Core does technically have a minimal GUI. Nano Server does not have a GUI at all (although there is a very minimal text interface that can be used for configuring the server’s network settings).
The lack of a GUI should not be an issue for large organizations that never log into the server console. In the case of smaller organizations, however, giving up the GUI can represent a significant learning curve. It may also mean that you have to do some things in a different way. In my own environment, for example, I periodically take VMs offline and make a copy of the virtual hard disk files. Although this sort of thing is possible to do in a Nano Server environment, it must be done in a very different way from how the task might be accomplished in a GUI environment.
Ultimately, each organization will have to decide for itself whether to run Hyper-V on top of Nano Server, or whether it makes more sense to continue using either Server Core or a full-blown GUI deployment. My opinion is that Nano Server based Hyper-V deployments are ideal for use in large organizations. For such organizations, the benefits of using Nano Server will likely far outweigh any disadvantages. For smaller organizations, using Nano Server may or may not be a good idea. It really just depends on the financial and technical resources that the organization has available.
Building a Nano Server image
If you have ever worked through the Windows Server 2016 installation wizard, then you probably noticed that there is no Nano Server installation option. The only way to install Nano Server is to build your own deployment image. This image can be used for manually provisioning new Hyper-V hosts, or you can use the image to perform automated bare-metal deployments. I will show you both techniques, but first we have to build an image that we can use.
There are a few different techniques for creating Nano Server images, but the easiest method involves using Microsoft’s Nano Server Image Builder tool. This is a graphical tool that walks you through the image creation process so that you do not have to resort to using PowerShell. You can download the tool here.
Installing the tool is a really simple process. It uses a typical Microsoft installation wizard that merely requires you to click Next a few times. I recommend installing the Nano Server Image Builder onto a machine that is running Windows 10.
The first time that you attempt to run this tool, you will see a message indicating that there are two additional components that you will need to install, as shown in the screenshot below. You must install the Windows Assessment and Deployment Kit’s deployment tools and its Windows Preinstallation Environment (Windows PE).
You will have to download and install a couple of components from the Windows Assessment and Deployment Kit. Be sure to download the Windows 10 version of the kit.
The Windows Assessment and Deployment Kit is large and consists of a lot of different components, so be sure to install only those that are required by the Nano Server Image Builder, as shown below.
You will need to install the Windows Preinstallation Environment and the Deployment Tools.
In Part 2 of this series, I will show you how to build a Nano Server image using the tool that you just installed.