Editor's Note: Updated to reflect changes with the Hyper-V Linux Integration Services 4.0 release.
Microsoft developers have designed components that help in improving the performance of virtual machines running on Hyper-V Server. These components are designed as part of the Hyper-V Integration Services.
While the Hyper-V Server is intelligent enough to install and activate Integration Services for Windows virtual machines on its own, for a few virtual machines running Linux distributions you'll need to manually install and activate Hyper-V Linux Integration Services. Today we'll cover the process of installing and activating Hyper-V Integration Services in Linux distribution virtual machines.
Hyper-V Linux Integration Services (LIS)
Hyper-V Linux Integration Services, sometimes referred to simply as Hyper-V LIS, provides two types of components: drivers and services. The drivers play an important role in enhancing the performance of Linux virtual machines, and services are designed to perform a specific job.
For example, the VMBUS driver acts as a communication channel to improve communication between virtual machines, and the “Time Sync” service helps in syncing time with the Hyper-V Host.
Once Linux Integration services are deployed, virtual machines running Linux distributions can use features like Live Migration, Jumbo Frames, VLAN Tagging and Trunking, support for Symmetric multiprocessing (SMP), Static IP Injection, VHDX resize, Virtual Fibre Channel, Live Virtual Machine Backup and the ability to perform hot adding and removal of memory using the Dynamic Memory feature of Hyper-V.
Hyper-V Integration Services Support on Linux Distributions
Currently, Microsoft supports a variety of Linux distributions running as a virtual machine on a Hyper-V Server. Specifically, Microsoft provides Integration Services components for the following Linux distributions:
- Red Hat Enterprise Linux 5.5 - 5.11 32-bit, 32-bit PAE and 64-bit
- Red Hat Enterprise Linux 6.0 - 6.7 32-bit and 64-bit
- Red Hat Enterprise Linux 7.0 - 7.1 64-bit
- CentOS 5.5 - 5.11 32-bit, 32-bit PAE, and 64-bit
- CentOS 6.0 - 6.7 32-bit and 64-bit
- CentOS 7.0 - 7.1 64-bit
- Oracle Linux 6.4 - 6.7 with Red Hat Compatible Kernel 32-bit and 64-bit
- Oracle Linux 7.0 - 7.1 with Red Hat Compatible Kernel 64-bit
Hyper-V Linux Integration Services Activation and Installation
Before we talk about the activation and installation processes of Hyper-V Linux Integration Services, it's important to note the following points:
- There are a few Linux distributions that require installation and activation of LIS
- There are a few Linux distributions that come with LIS already installed, including Ubuntu – Ubuntu Hyper-V Integration Services have been built into Ubuntu Linux since Ubuntu 12.04 — so there's no need for a separate download and installation. For these distributions, only activation is required to use the full features of Hyper-V
Important: LIS 4.0 ships with two scripts: Install.SH and Upgrade.SH. Whereas in earlier versions of LIS you had to switch to the appropriate Linux distribution directory before you could install/upgrade LIS on Linux virtual machine, starting with Hyper-V LIS 4.0, Microsoft changed the installation process and now you only need to execute one script to either Install (Install.SH) or upgrade (Upgrade.SH) on a Linux distribution.
This is also shown in the screenshot below illustrating the ISO file of LIS 4.0.
Activating Hyper-V Integration Services for Linux Distributions that Ship with LIS Drivers and Services Already Installed
Please use the steps below for Linux distributions that ship with LIS drivers and services already installed. For this example we have chosen Ubuntu 12.04 (i.e. Ubuntu Hyper-V Integration Services).
- The first step is to edit the "modules" file located in /etc/initramfs-tools using this command:
sudo vi /etc/initramfs-tools/modules
- In vi Editor, navigate to the last line in the file and use the insert ( I ) command to append and enter the following lines:
- Save the file by hitting the Esc key and then issuing the "
: x" command
- Next, run the following commands to re-initialize the “modules” file:
sudo update-initramfs –u
- Finally, reboot the virtual machine by executing the below command in Shell:
sudo shutdown -r now
Once the guest virtual machine is rebooted, the LIS drivers and services will be registered in the system.