FAQ: Windows Server 2016 and Hyper-V Integration Services

I’m frequently receiving questions about what’s wrong with Windows Server 2016 and how to manage Hyper-V IS. I’d like to discuss it in a FAQ manner. If your question is not answered, just feel free to leave a comment

Where is the integration services setup disk (VmGuest.iso)?

All of us remember times when we had to insert ISO which was available on Hyper-V host , run it on each VMs and check it’s version from time to time for keeping them up-to-date (yes, vmguest.iso was updated via Windows Update).

The process of Hyper-V IS upgrading has been changed since Windows Server 2016. Now VMs get IS updates directly from Windows Update (WU). ISO is not included and it’s not needed anymore.

It’s completely true if you have new OS inside VMs (Windows 2012 R2/Windows 8.1 and later). Hyper-V IS automatically get updates from WU in these OSes. No actions required.

We have another picture for older OSes (Windows Server 2012/Windows 8 and older). For such OSes, you need to verify that Data Exchange Service (DES) is turned on and running.

DES provides shared registry values (HostSystemOSMajor and HostSystemOSMinor under the hive HKLM\SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters) between host and VMs for determining IS applicability. These values should be existed in VM in order to get IS updates from WU. If DES has never been enabled on VMs – IS won’t be provided.

hypervregs

Hack: you can edit/add these parameters and set values manually (of course, it’s unsupported)

Example of outdated IS in VM with WS2012R2 on WS2016 host (DES provided values from VM, compared them with host’s and they are not the same):

image

Linux Guests? Built-In or  Linux Integration Services are required

Unsupported Windows Server 2003? Integration services setup disk is required. Can be copied from WS2012R2 (download link is below). Better option: plan migration to newer OS

How to install IS manually?

Use this KB if DES can’t be enabled or WU is unavailable:

Hyper-V integration components update for Windows virtual machines that are running on a Windows 10 or Windows Server 2016-based host (IS  ver. 6.3.9600.17903) + IS update for Windows Server Guest OSes (IS ver. 6.3.9600.18080).

Note: To install this update, you must have April 2014, update rollup for Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2 (2919355) installed in Windows 8.1. Or, install Service Pack 1 for Windows 7.

To install IS (CAB-file) use PowerShell:

Add-WindowsPackage -PackagePath pathtocab -Online

If you want to do offline VM servicing : read guide from Sarah Cooley

TIP: IS with later version is available from uploaded VMGuest.iso below (use it to simplify overall process)

Where can I find ISO if I haven’t got Windows Server 2012 R2 installed?

I’ve uploaded Hyper-V Integrations Services ISO for you. It was taken from Windows Server 2012 R2 (up-to-date, 02/20/17 . IS version: 6.3.9600.18398). You can use this ISO to install Integration Services in “prehistoric” guest OSes (but again..migration to newer OS is better option for such VMs) on Windows Server 2016 or with hosts running on Windows 2012 R2/Windows 8.0/8.1 Download link for VMGuest.ISO

I’m querying Integration Services version from PowerShell but it shows me 0 for all VMs. What’s wrong?

I’ve provided example of outdated IS in a VM SQL01 above. Cluster validation report generates a warning. PowerShell shows 0 in IntegrationServicesVersion

By default, PowerShell loads Hyper-V module with version 2. I tried to remove that module, import one with 1.1 version and query again IS versions. In that case, I received actual IS versions and  “Update required”  in IntegrationServicesState. It seems like something wrong with Hyper-V 2.0 module. Waiting for official fixes or confirmations.

hyperv

Update: this behavior is normal. VM support is based on the having critical updates and reporting IS version is no longer needed.

Linux Integration Services Version 4.0 for Hyper-V

Here is the new version of Linux IS for Hyper-V

http://www.microsoft.com/en-us/download/details.aspx?id=46842

Current version: 4.0.11 Please refer to the Linux Virtual Machines on Hyper-V topics for up to date information on the LIS feature set, all supported Linux distributions, availability and download locations.

When installed in a supported Linux virtual machine running on Hyper-V, the Linux Integration Services provide:

 Name  Description
Driver support Linux Integration Services supports the network controller and the IDE and SCSI storage controllers that were developed specifically for Hyper-V.
Fastpath Boot Support for Hyper-V  Boot devices now take advantage of the block Virtualization Service Client (VSC) to provide enhanced performance.
Time Keeping The clock inside the virtual machine will remain accurate by synchronizing to the clock on the virtualization server via Timesync service, and with the help of the pluggable time source device.
Integrated Shutdown Integrated Shutdown: Virtual machines running Linux can be shut down from either Hyper-V Manager or System Center Virtual Machine Manager by using the “Shut down” command.
Heartbeat This feature allows the virtualization server to detect whether the virtual machine is running and responsive.
Symmetric Multi-Processing (SMP) Support Supported Linux distributions can use multiple virtual processors per virtual machine. The actual number of virtual processors that can be allocated to a virtual machine is only limited by the underlying hypervisor.
KVP (Key Value Pair) Exchange Information about the running Linux virtual machine can be obtained by using the Key Value Pair exchange functionality on the Windows Server 2008 virtualization server.
Integrated Mouse Support Linux Integration Services provides full mouse support for Linux guest virtual machines.
Live Migration Linux virtual machines can undergo live migration for load balancing purposes.
Jumbo Frames Linux virtual machines can be configured to use Ethernet frames with more than 1500 bytes of payload.
VLAN tagging and trunking Administrators can attach single or multiple VLAN ids to synthetic network adapters.
Static IP Injection Allows migration of Linux virtual machines with static IP addresses.
Linux VHDX resize Allows dynamic resizing of VHDX storage attached to a Linux virtual machine.
Synthetic Fibre Channel Support Linux virtual machines can natively access high performance SAN networks.
Live Linux virtual machine backup support Facilitates zero downtime backup of running Linux virtual machines.
Dynamic memory ballooning support Improves Linux virtual machine density for a given Hyper-V host.
Synthetic video device support Provides improved graphics performance for Linux virtual machines.
PAE kernel support Provides drivers that are compatible with PAE enabled Linux virtual machines.