Immediately after finalizing the installation of my RHEL 6.5 guest domain, I found that the adapter reported its status as “Degraded (Integration services upgrade required).” At first, I came to believe that, while RHEL 6.5 ships with the integration components installed, the shipped kernel modules are version 3.1 of the Hyper-V integration components:
[root@RHEL6]# modinfo hv_vmbus filename: /lib/modules/2.6.32-431.e16.x86_64/kernel/drivers/hv/hv_vmbus.ko version: 3.1 license: GPL srcversion: 3E7D7FE31577CC7E47EA89E alias: acpi*:VMBus:* alias: acpi*:VMBus:* depends: vermagic: 2.6.32-431.e16.x86_64 SMP mod_unload modversions
Sidenote: You can list that same information for all the Hyper-V integration components kernel modules if you like (hv_vmbus, hv_netvsc, hv_storvsc, hv_blkvsc, and hv_utils). The modules are defined thusly by the Linux Integration Services v35 PDF downloadable from Microsoft at the download site linked in the below paragraph (after the bullet points):
- “hv_balloon” provides Dynamic Memory support for virtual machines.
- “hv_netvsc” provides support for a Hyper-V-specific (or “synthetic”) network adapter.
- “hv_utils” provides integrated shutdown, key-value pair data exchange, heartbeat, mouse and live backup.
- “hv_timesource” is the pluggable time source module to assist in accurate timekeeping in the virtual machine.
- “hv_storvsc” provides support for all storage devices attached to a virtual machine.
- “hv_vmbus” is the fast communication channel between the server running Hyper-V and the virtual machine.
So, I downloaded the latest version of Linux Integration Services (3.5) from Microsoft’s download site. You can read about the most recent release of LIC at their Virtualization Blog, as well. One thing you might notice is that official support seems to extend only to RHEL/CentOS 6.3, and I’m running the latest minor update for RHEL 6: 6.5.
After inserting the ISO file in the virtual machine’s DVD Drive, I mounted the virtual disc using “mount /dev/cd-rom /media”. Because RHEL 6.5 already has Linux Integration Services 3.1 installed, I execute the “upgrade.sh” script (be sure to cd into the /media/RHEL63 location first, or you’ll get some wonky errors about files not found). If all goes well, you should see something like:
I obliged the request and upon rebooting found that the module info had not changed. In addition, the Networking information for the virtual machine still indicates that the Integration Components need to be upgraded. I confirm that the RPM packages have been installed:
[root@RHEL6]# rpm -qa | grep Microsoft microsoft-hyper-v-rhel63.3.5-20131212.x86_64 kmod-microsoft-hyper-v-rhel63.3.5-20131212.x86_64
So I do some research. Apparently, the module info version value is not identical with the Linux Integration Services version value (though they are identical in the example output from a RHEL 6.0 system’s modinfo command as given in the Linux Integration Services 3.5 PDF) and therefore should not be compared, according to Michael Kelley of Microsoft.
So, I erased the RPM packages I had installed since they seemed superfluous. I have yet to detect any functional problems with the system, and the consensus on the Interwebs (others are experiencing the same issue) seems to be that this can be safely left alone. I’ll report back if I notice any further issues, but hopefully this helps if this matter concerns you as well.