VMware Tools is an optional, free set of drivers and utilities that enhances both the performance of a virtual machine’s guest operating system and interaction between the guest and the host.
The VMware Tools Control Panel, which is organized in a set of tabs, provides a graphical environment in which VMware Tools settings can be configured. VMware Tools is comprised of the following components:
VMware Device Drivers – replaces many of the guest operating system drivers for physical hardware to ensure network connectivity and prevent drive compatibility issues. VMware Device Drivers smooth mouse operations, make folder sharing available and improve sound, graphics and networking performance.
VMware Services – handles communication between the guest and host operating systems. This program, which runs in the background, is called vmtoolsd.exe in Windows guest operating systems, vmware-tools-daemon in Mac OS X guest operating systems, and vmtoolsd in Linux, FreeBSD and Solaris guest operating systems.
VMware User Process – provides the administrator with the ability to cut and paste text between the VMware Remote Console and the host operating system. Also improves mouse pointer and screen resolution functionality. The program file for VMware User Process is called vmtoolsd.exe on Windows guest operating systems and vmware-user on Linux, Solaris, and FreeBSD guest operating systems.
VMware Inc makes VMware Tools available for Microsoft Windows, Linux, Sun Solaris, FreeBSD, and Novell NetWare guest systems. VMWare strongly recommends that administrators install the VMware Tools in all virtual machines (VMs).
VMware Tools is a suite of utilities that enhances the performance of the virtual machines guest operating system and improves management of the virtual machine. Without VMware Tools installed in your guest operating system, guest performance lacks important functionality. Installing VMware Tools eliminates or improves these issues:
Low video resolution
Inadequate color depth
Incorrect display of network speed
Restricted movement of the mouse
Inability to copy and paste and drag-and-drop files
Provides the ability to take quiescence snapshots of the guest OS
Synchronizes the time in the guest operating system with the time on the host
Provides support for guest-bound calls created with the VMware VIX API
We as VMWare Admins might be busy now with upgrading our vSphere environment to the latest vSphere version “vSphere 6.5“. As we aware that vSphere upgrades can be performed seamlessly without disturbing the production workloads running inside the virtual machines. We can make use VMWare vMotion to migrate the virtual machines to another host in cluster to upgrade the ESXi host. Where the real downtime does starts during the vSphere Upgrades? Yes, you are right! When we start upgrading VM Hardware and VMware Tools upgrade on the virtual machines.
VMWare Admins are most often asked by this question “Do we need to upgrade to the latest version of VM Tools following an upgrade to the latest vSphere release ?” by the application owners or support teams, when we approach them for getting downtime of virtual machines for VMware Tools upgrade.
Why VMWare Tools Upgrade/Install is Important?
VMware tools is very important for VMware virtual Machine. VM Tools provides:
- Improves Video Resolution
- Improves Color Depth
- Improved Network adapter performance
- Smooth Mouse Experience
- Allow Copy and Paste and drag-and -drop files
- Improves Sound
- Provides the ability to take quiesced snapshots of Guest OS.
VMware Tools includes the below components:
- VMware Device Drivers – Which provides the drivers for many virtual hardware’s including Network adapters. Drivers provides smooth mouse operations, Improve sound, Graphic and performance of the virtual machine.
- VMware User Process – Provides the ability to copy and paste text between VMware Remote console and Host Operating system. Improves Screen resolution.
- VMware Services – Handles communication between the guest and host operating system.
Does the VMware Tools upgrade require Reboot of the virtual Machines?
In vSphere 5.1, you might have heard something called Zero-down time VMware Tools upgrade where an operating system reboot will no longer be required for upgrading to future versions of VMware Tools. However, this statement is partially accurate and has caused some confusion with customers. There is a VMware Article, Which clarifies the statement about reboot of VM during VM tools installation and upgrade.
VMware Tools upgrades has always required an operating system reboot as new device drivers and kernel modules will not go into effect until the next reboot. For Windows operating systems, you could “suppress” a reboot by specifying an advanced installer option. For UNIX/Linux operating systems, the new device drivers and kernel modules will be staged when you upgrade VMware Tools, but will only be activated upon the next reboot. In both case, you can continue to run your virtual machine in a partially upgraded state for a limited amount of time until your next maintenance window, but it is recommended that you reboot as soon as possible.
It depends. If one or more components have been updated since the last VMware Tools upgrade or one of the VMware Tools components requests a system reboot, then a reboot will be required. A reboot would not be require if only the base components of VMware Tools have been upgraded (e.g. no PVSCSI, VMXNET3).
Is VMware Tools upgrade is mandatory after the vSphere Upgrade?
It is always recommended that you run the latest version of VM Tools for better performance and manageability of virtual machine. Even though it is recommended, It is not mandatory to upgrade to the latest version of tools after the vSphere Upgrade.
VMware Understands that performing VM Tools upgrade across a large number of virtual machines is difficult for the large vSphere environments. Getting downtime for business critical application for VMware tools upgrade is also a painful tasks. Fortunately, VMware recognizes this and has done a lot to help make upgrades easy by extending the tools support matrix. The extended VMware Tools support does two things:
- It allows virtual machines running older versions of VMware Tools to run in a supported configuration on newer versions of ESXi.
- It allows virtual machines running newer versions of VMware Tools to run in a supported configuration on older versions of ESX/ESXi.
This forward and backward VMware Tools compatibility ensures that you can upgrade your vCenter Server and vSphere hosts without having to worrying about virtual machines falling out of compliance for VM Tools version. You no need to be concerned immediately follow the upgrade with a large number of virtual machine reboots in order to upgrade VMware Tools.
The benefit of the extended support forward and backward VMware tools compatibility eliminates the need to upgrade of VMware tools immediately after the vSphere upgrade, but that it makes upgrades easier by allowing you to schedule the VM Tools upgrades along with patch cycles reboot or other activities to better accommodate the needs of the business.
How to Check VMware Tools Compatibility with ESXi Host?
As mentioned, VMware allows the forward and backward compatibility of VMware tools by allowing VM’s with older VMware Tools version to run on newer ESXi version and also by vice-versa (allows VM’s with newer VMware tools version to older ESXi versions). Let’s me explain how to find the compatibility. VMware provides the excellent compatibility tool called VMware Product Interoperability Matrices
Click on Interoperability -> Select VMware vSphere Hypervisor (ESXi), I have selected the latest version of ESXi host (ESXi 6.5 Update-1.
Select “VMware Tools from VMware ESX/ESXi” as the second solution and leave it as All Version to see all compatible VMware tools version from ESXi host. It displays all the compatible version of VMware Tools from VMware ESX/ESXi to run on the latest ESXi host (ESXi 6.5 Update 1). Since we have selected the latest version of ESXi host, it displays the backward compatibility.
Let’s see some other example to display forward and backward compatibility of VM Tools. In the below example, VMware ESXi 6.0 provides forward compatibility with the virtual machines running newer version of VMware Tools such as VM tools from ESXi 6.5 U1 and also it support backward compatibility with virtual machines running older version of VM Tools from ESXi up to ESXi 5.0.
This extended VM Tools support matrix facilitates vSphere upgrades by allowing older versions of VM Tools to run in a supported configuration on newer vSphere hosts. At the same time this extended support also allows newer versions of VM Tools to run in a supported configuration on older vSphere hosts. With this extended support you are able to transparently upgrade your vSphere infrastructure with no impact to the hosted virtual machines by clubbing the VM tools upgrade activity with other activities such as OS patching reboot or software upgrades ,etc.
VMware interoperability matrix shows support based on the ESX/ESXi version that is providing the VM Tools but Virtual machine in Web Client or vSphere Client reports the VMware Tools versions which is different than what we see in compatibility guide. The virtual machines lists their tools version as a four-digit number which has no correlation with the corresponding ESX/ESXi host version.
- Column 1 – VMware Tools Version as per vSphere Client and vSphere Web Client.
- Column 2 – ESXi server version. ’ESXi/0.0′ indicates that the tools version is not yet bundled with ESXi.
- Column 3 – Tools version on guest Setup/about page
- Column 4 – ESXi server build number
Let’s see some other example to display forward and backward compatibility of VM Tools. In the below example, VMware ESXi 6.0 provides forward compatibility with the virtual machines running newer version of VMware Tools such as VM tools from ESXi 6.5 U1 and also it support backward compatibility with virtual machines running older version of VM Tools from ESXi up to ESXi 6.7.
|VMware Tools Version on VI or Web Client||ESXi server version. ‘esx/0.0’ indicates that the tools version is not yet bundled with ESXi||Tools version on guest Setup/About page||ESXi Server build number|