Hyper-V is one of the most stable and performance-driven virtual environments. Microsoft has left no stones unturned in making it a robust platform that can boost up the speed of your virtual server compared to its rivals. However Hyper-V’s default configuration may or may not work well for a particular environment. One has to fine tune the VM configuration to extract the best out of any Hyper-V set-up.
So if you are not getting the desired performance from your Hyper-V virtual machine, then in all likelihood your VM’s default configuration is the one to be blamed. Tweaking the VM management settings to suit your requirement can be of great help in such a situation. So what are the recommended settings to improve Hyper-V VM performance? In this tutorial we are going to list down 5 performance optimization tweaks that can give the desired thrust to make your virtual server blazing fast.
1. Use Supported Operating Systems on Guest Machines (VM)
Although you can run almost any OS on your Hyper-V virtual server, it is highly recommended to use only the supported operating systems so that you can take the benefit of Integration Components. Integration Components provide you with optimized VMBUS design which plays an important role in the performance of your VM. You won’t be able to install integration components on a non-supported OS, thus compromising the performance and security of your virtual server.
2. Install Integration Components on a Hyper-V VM
Integration Components bring you VMBUS and VSP/VSC design to improve the performance of a Hyper-V virtual machine. Always ensure that you are including compatible integration components while installing operating system on your virtual server. If you are using a managed VPS service, then simply ask your hosting partner to install the supported integration components applicable to your operating system. For Linux distributions, Microsoft provides a different set of integration components that can be downloaded from its official website.
3. Use Second Generation (Gen Type-2 VM) Virtual Machines
Second Generation VM feature was introduced by Microsoft with its Windows Server 2012 R2 edition. While the default VMs uses IDE controller for booting, Gen Type-2 VMs can boot from a SCSI controller. Being the more sophisticated of the two types of disk controllers, SCSI performs better than its IDE counterpart. Gen Type-2 not only speeds up the booting process, but also improves the overall VM performance.
4. Install Guest OS on Seperate VHD
For better I/O operations, do not install guest operating system on the same virtual drive where you are storing VM files. Drive on which the system files are stored, is continuously accessed by different running processes as soon as you boot your server. It can hamper I/O performance if you operate programs from the same drive. So have a second VHD to store the VM files, while the first VHD can be a fixed drive used for the OS boot up process.
5. Use Individual Volumes for Each VM
If you are using multiple VMs, then do not keep them all on a single volume. As each Hyper-V VM is controlled by its own VMWP.exe process, it will cause more disk I/O operations on a single volume. Hence it is recommended to use seperate volumes for storing individual virtual machine files.
Once you implement the above mentioned best practices on your Hyper-V virtual server, then you can definitely notice the improvement in its performance. Experiment with different configurations until you are satisfied with the performance. You can anyway restore back to the default configuration in case you observe any performance drop.