What's New in Windows Server 1709 Hyper-V
In this article, I will describe the new features and changes to Hyper-V in the recent 1709 semi-annual channel release of Windows Server.
The Semi-Annual Channel
1709 is the first semi-annual channel release of Windows Server by Microsoft, so it’s probably a good idea to have a quick reminder of what this means. Microsoft split the timing of releases for Windows Server. The year-themed releases, such as Windows Server 2012 and Windows Server 2016 will continue to occur; these are known as the long-term servicing channel or LTSC. But twice a year, Microsoft will also distribute a semi-annual channel (SAC) release. The SAC is available to customers that:
- Acquired Software Assurance with Windows Server
- Opted into the SAC via a clean installation of 1709
Microsoft will gradually improve Windows Server features in SAC releases. “Most” of these features will be bundled into later LTSC releases. From time to time, you might see a feature not included (at all) in a SAC release, so you’ll have to use an older build. For example, in 1709, Storage Spaces Direct (S2D) is missing; you have to deploy S2D clusters using Windows Server 2016 LTSC media, and 1803 will include an updated version of S2D.
Note that SAC is intended for customers that want/need the latest releases, such as those working with containers or using Windows Server for infrastructure roles (S2D and/or virtualization). Microsoft provides 18 months of support for each released build.
1709 is our first SAC release and it has a number of improvements for Hyper-V customers that are worth highlighting.
1709 was when Microsoft admitted that they were wrong about Nano Server. Containerization customers wanted a smaller Nano Server and infrastructure customers wanted a bigger Nano Server (or just Windows Server). Microsoft decided to abandon plans to use Nano Server for normal workloads and to focus on providing a micro-OS for containerization.
As a result, the images for containers were made much smaller:
- Server Core is 60 percent smaller.
- Nano Server is 80 percetn smaller, coming in at a tiny 195MB (minus PowerShell).
This will make containers smaller, but more importantly, Hyper-V (secured) containers will be faster to deploy.
Speaking of Hyper-V Containers, 1709 also added support for running Linux as the OS in Hyper-V containers.
Some improvements were made to container storage too:
- Cluster Shared Volume (CSV) Access: A container running inside a virtual machine on an S2D cluster can store/access persistent data on that cluster’s CSVs.
- SMB Global Mapping: You can map a share to a drive letter inside of a container.
Also, Docker added a whole bunch of support for 1709.
Enough with the containers, already! 1709 is very container-centric and there’s not all that much to report with virtual machines. I guess we’re reaching a point where Microsoft is happy with Hyper-V’s progress.
Failover Clustering allows you to load balance virtual machines across the nodes of the cluster, based on resource utilization. This has been improved with OS and application awareness.
Microsoft has been working on storage-class memory for virtual machines, using high-speed flash storage devices, called Persistent Memory or PMEM, for ultra-low latency volumes. NTFS-formatted volumes (non-volatile DIMMs) can be direct-attached to virtual machines. Virtualization Persistent Memory (vPMEM) can be deployed in the form of a .vhdpmem file on this storage for extreme IOPS and low latency, making even NVME storage look slow. This new file is attached to the virtual machine via a vPMEM controller and this is only possible via PowerShell today.
Another new file format has been added for virtual machines. A .vmgs file is used for version 8.2 or higher Hyper-V virtual machines and is used to store the virtual machine guest state.
One might consider Windows Server 2016 as the “Security Release” for Hyper-V. Shielded virtual machines, Host Guardian Service (HGS) and virtual TPM (vTPM) prevented tampering with virtual machines by people with physical host/storage access and gave peace of mind to tenants. This continues with 1709.
- The HGS can run as a shielded virtual machine, meaning that you don’t need to use the previously required cluster of 3 physical servers.
- Linux is supported as a shielded virtual machine.
- You can encrypt software-defined virtual networks to secure data in transit between virtual machines.
The role of Nano Server as a physical or virtual machine installation has ended. All the bits to enable this have been removed. From now on, Nano Server is a micro-OS for containers. If you wanted a stripped-down server or virtual machine, then you should now use Server Core.
On the theme of being wrong about Nano Server, there was a big “about face” when it came to management via the GUI. After nearly a decade of MMC.EXE (the platform that powers most of Windows Server administration) being deprecated, Microsoft has finally started work on a new administrative experience … and it looks good!
Project Honolulu is not Server Manager or any of the other old/slow tools that auto-started with each release of Windows Server since 2000. It’s a whole new effort, built on HTML 5, based on customer feedback. Instead, Honolulu is a single platform with lots of tools that provide us with the tools and information that we need to run a server/application infrastructure.
Honolulu is not finished; it’s work in progress. I said that this tool is based on feedback. Microsoft is starving for your feedback, so they want you to try Honolulu out and to supply feedback to shape its future.
Storage Spaces Direct (S2D)
This is a good news and a bad news story. Yes, S2D is definitely still alive and will appear with much more functionality in the 1803 release. Microsoft “storage and clustering” have been very busy responding to feedback and improving S2D clusters. Unfortunately, the bits weren’t of high enough quality for the 1709 release, so you cannot deploy S2D in a 1709 deployment. If you want to use S2D before 1803, then you must use the WS2016 media. Furthermore, the cluster cannot include any 1709 nodes/hosts. But at least Microsoft has done the right thing, and you will get something better next Spring!