The Nano Server Image Builder

nano-server-hero
This post will introduce you to the new GUI-based tool for deploying Windows Server 2016 (WS2016) Nano Server.

Nano Server Deployment Options

Before the release of the Nano Server Image Builder, there were a few ways that you could build images or deploy Nano Server, none of which were very user friendly. A PowerShell module could be imported from the installation media to create an image, a virtual hard disk (VHD). You could then manually deploy the VHD to a virtual machine, reconfigure a physical server to boot from the VHD on an existing file system, or deploy the VHD to a machine using Windows Deployment Services.
 

 
Microsoft released the Nano Server Image Builder soon after the general availability of WS2016. This GUI-based tools aims to simplify the creation of an image, and can create a once-off WinPE USB boot disk for deploying the image to a physical server.

Prerequisites

You will need a few pieces to make the tool work:

Hardware Detection USB Drive

Veterans of Windows deployment will find that deploying Nano Server to a physical server has a very old feel to it. You will have to add drivers, configure boot type (UEFI/BIOS), determine NIC interface indexes to associate IP configurations, and more.
You can use the Nano Server Image Builder to create a WinPE USB boot disk that will scan an existing physical server to report on:

  • NIC interface index
  • Boot firmware type
  • System board information
  • Disks
  • Devices that will need drivers to be added to a Nano image

Creating USB Media

The Nano Server Image Builder has two scenarios:

  • Create a new Nano Server image: A one-off image (VHD, VHDX or WIM) that is specialized to boot up as an individual machine.
  • Create bootable USB media: Create a USB stick to deploy an existing Nano Server image.

Choose how you want to use the Nano Server Image Builder [Image Source: Microsoft]
Choose how you want to use the Nano Server Image Builder [Image Source: Microsoft]
You are then asked to supply a copy of the WS2016 ISO file. The next dialog box needs you to choose whether you are deploying to a VM or a physical machine and to select an image name/path.
Choose what type of Nano Server image you want [Image Credit: Aidan Finn]
Choose what type of Nano Server image you want [Image Credit: Aidan Finn]
Next you need to accept the Windows Server license agreement, and then you select a USB device for a physical machine deployment. Every time you build a Nano Server image, you are deploying an individual machine, so there are some steps you need to do to specialize the machine:

  • Select Nano Server packages (think Windows Server roles) that you want to add.
  • Add drivers that are not included in the Nano Server core server image — hopefully identified in the hardware detection process (above).
  • Enter computer name, administrator name/password, and time zone details.
  • Optionally join a domain.
  • Preconfigure networking, including PowerShell & WinRM remote management, VLAN setup, and DHCP/static IPv4/IPv6 configuration.

Advance configuration allows you to add CAB files to apply updates the image before it is booted, embed scripts or binary files, enable Emergency Management Services (EMS) via RS-232, and to enable debugging over Serial/TCP/IP/Firewire/USB.

The wizard summarizes the configuration and shares a PowerShell cmdlet that can be reused to quickly recreate similar images.

Summarizing the build of a Nano Server image [Image Credit: Aidan Finn]
Summarizing the build of a Nano Server image [Image Credit: Aidan Finn]

Opinion

The Nano Server image generator removes some of the duct tape and baling twine (or MacGuyvering) from creating a Nano Server image. However, I am torn because this tool will be great for those that want to evaluate Nano Server, but the reality of Nano Server is made clear by the need to reinvent server deployment.

Nano Server is not intended for the occasional deployment or small-to-midsized enterprises; it is intended for large and hosting enterprises in which memory and disk footprint are critical, and where rebuilding a server is easier than troubleshooting it. In that scale of environment, System Center is what you need, and that will probably provide a better bare-metal deployment experience.