Kicking the Deployment Tires with Microsoft Nano Server

I finally started playing around with Microsoft Nano Server this past week and am quite amazed at the implementation of this new Windows Server deployment option. The potential is incredible and I am sure there are going to be many hosting providers and enterprises looking at this new option very closely. There is much to […]


I finally started playing around with Microsoft Nano Server this past week and am quite amazed at the implementation of this new Windows Server deployment option. The potential is incredible and I am sure there are going to be many hosting providers and enterprises looking at this new option very closely.

There is much to learn listening to the Virtual Academy A Deep Dive into Nano Server training but in short a few of the main points:

  • 64-bit only
  • Deployment speed and footprint
  • Headless and managed via PowerShell or other remote tools (Eg. Server Manager, Cluster Manager, Hyper-V Manager)
  • Support for only the necessary core OS services
  • Use cases
    • Scale-Out File Servers
    • Hyper-V (Physical only)
    • Containers
    • Physical or virtualized deployment

With Microsoft Windows Server 2016 (Technical Preview 4) a new module is provided to automate the Nano Server image creation. Nano Server comes as part of the Windows Server preview ISO image. Once you have Technical Preview 4 download, all that needs to be done is to mount the ISO and you will see the NanoServer folder such as below.

Microsoft

This second screenshot shows the new NanoServerImageGenerator Module (.psm1). This can be loaded directly from the ISO (which is the method I used) or can be copied locally. The Convert-WindowsImage.ps1 file is used by the new module to assist with the creation of the Nano Server virtual machine.

Microsoft

The 16 node cluster I created has the Storage (File Services, Storage Spaces), Compute (Hyper-V, Clustering (Failover), -GuestDrivers (used for virtualization) and Containers packages. Even though I included Compute in this example I cannot use it because I’m implementing Nano Server as a virtualized instance, as you probably noticed above the Compute (Hyper-V) can only be used on physical hosts but I just included as part of my general deployment testing.

My initial focus is just on scaling a deployment of a 16 node virtual cluster. The 16 nodes are spread across 2 physical hosts that are connected to a Pure Storage FA-405 running Purity 4.6. The 2 hosts are running Windows Server 2012 R2 Update with Failover Clustering. There is one 200GB Clustered Shared Volume (CSV) that was used to deploy the Nano virtual instances, 8 to each node.

Microsoft

All 16 nodes take up just 360.57 MB of space, this is one of the main points I listed above for deployment size. Each of the nodes (virtual machines) were created from scratch vs using any snapshot techniques.

CSV View

All 16 virtual machines deployed in 30 minutes fully configured. This hits another point about speed of deployment. Each of the virtual instances was set with the following:

  • Joined to a domain
  • Assigned IPv4 address
  • Set the administrator password
  • Added Nano Server packages

Here is a view of the Nano10 virtual machine with the emergency mode login screen. Remember that training I mentioned, be sure to check that out.

Microsoft

Over the next few weeks I’ll be spending more time discussing the remote management and setup of the Storage component to test some basic file server services.

Below is the script and sample output. Once the NewNanoServerImageGenerator module has been imported use the New-NanoServerImage cmdlet. Take notice of the [ ] (tick-marks) in the example script. The new cmdlet can be quite lengthy on one single line so for easier reading I used the [ ] to structure the line.

Windows PowerShell

Below is the output from the above Windows PowerShell. I only included the Nano0 and Nano15 output examples. Notice the Start Time = 9:11 and the End Time = 9:41.

In this blog I have just started scratching the surface with Nano Server and the different packages and capabilities. Exciting times! Thank you Jeffrey Snover for your continued innovation of the Microsoft Windows platform.

References

Thanks,
Barkz