Virtual Machine VMTools

The Virtual Machine VMTools is a collection of drivers and tools that enrich virtual machine functionality and enhance performance.

VMTools Components

VMTools primarily includes the following tools and drivers, which may vary depending on the operating system.
OS VMTools Components Description
Linux Advanced Monitoring Agent An agent installed on virtual machines for collecting VM advanced monitoring data, including CPU, memory, and disk capacity data.
QEMU Guest Agent (QGA) An application for interaction between virtual machines and hosts, without relying on network. It can read and deliver VM configurations, and push monitoring data.
Note: Linux OS usually comes with built-in virtio drivers and cloud-init, so the VMTools for Linux does not include these two tools. If your Linux OS lacks them, you can install them manually through other methods.
Windows Advanced Monitoring Agent An agent installed on virtual machines for collecting VM advanced monitoring data, including CPU, memory, and disk capacity data.
QGA An application for interaction between virtual machines and hosts, without relying on network. It can read and deliver VM configurations, and push monitoring data.
Virtio Driver A collection of drivers to improve the VM performance.
  • SCSI controller driver: Used to improve the VM disk performance in a virtualization environment.
  • PCI simple communications controller driver: Used to realize the communications between a Windows virtual machine and the underlying KVM virtualization.
  • PCI device driver: Used to realize the balloon memory scaling.
  • Ethernet adapter driver: Used to improve the network performance of a Windows virtual machine in a virtualization environment.
Cloudbase-init A component helps realize the User Data import and other customized functions.
FreeBSD Advanced Monitoring Agent An agent installed on virtual machines for collecting VM advanced monitoring data, including CPU, memory, and disk capacity data.

Using VMTools

After installing VMTools on a virtual machine, you can achieve advanced monitoring, configuration issuance, and configuration reading.
  • Advanced Monitoring: Advanced monitoring is the monitoring data obtained from the virtual machine by the advanced monitoring agent, which is periodically pushed to the host via DHCP service or QGA. You can use line charts to monitor real-time trends in virtual machine performance, including CPU, memory, and disk capacity.
  • Configuration Issuance: Through QGA in VMTools, parameters set on the platform are actually issued to take effect inside the virtual machine, including the virtual machine hostname and network configurations.
    • Hostname: After installing the latest version of VMTools, users can modify the hostname of a running virtual machine, and the new hostname will be issued directly via QGA without needing to restart the virtual machine.
      Note: If you need to issue the hostname via QGA, please install VMTools before modifying the hostname.
    • Network Configuration: When distributed port groups do not have DHCP services enabled, IP addresses, DNS, MTU, and other parameters set on the platform need to be issued via QGA to take effect on the NIC. After installing VMTools, the specified IP addresses and other parameters will automatically take effect.
  • Configuration Reading: Through QGA in VMTools, the IP address configured on the virtual machine's NIC is automatically read, and the successfully read IP address can be displayed and managed on the platform.
    Note:
    • If the distributed port group to which the virtual machine's NIC belongs does not have DHCP enabled, and the virtual machine has VMTools installed and is in a running state, it supports automatically reading the virtual machine's NIC configuration information.
    • If an IP address is already configured inside the virtual machine, it will be read and overwrite the IP address configured on the platform.
    • If there is a duplicate IP address between the virtual machine's NIC IP address and the IP addresses in its port group, an alert will be triggered.

Install VMTools on Linux VMs

During the installation, you will be guided to first attach the VMTools ISO, then enter the VM console to manually execute the installation commands.

Before you begin

  • Make sure the virtual machine is in the running state.
  • Make sure the virtual machine has installed Linux command tools, such as tar, wget, and curl.

Procedure

  1. On the target VM page, click Actions > VMTools > Install VMTools.
  2. In the Install VMTools dialog, click Next: Install on VM Console.
    When attaching the VMTools ISO, the system automatically chooses a CD/DVD drive based on the following rules:
    • When a CD/DVD drive is available, the system automatically selects the first one and attaches the VMTools ISO.
    • When no CD/DVD drive is available, the system automatically detaches the original image on CD/DVD drive 1 and attach the VMTools ISO.
  3. Click Copy Commands and Launch Console.
    Click the button copies the following commands and enters the VM console:
    # Create a mount point.
    mkdir /mnt/cdrom
    # Mount the CD-ROM image.
    mount /dev/cdrom /mnt/cdrom
    # Install VMTools.
    cd /mnt/cdrom/
    bash ./zs-tools-install.sh
    # Unmount the CD-ROM image (Optional)
    cd ~
    umount /mnt/cdrom
  4. Enter the VM console. In the left toolbar, click Local Command Paster.
  5. In the Paste Command dialog, paste the copied commands from the last step and click OK to run the commands.

What to do next

To update your VMTools version, click Actions > VMTools > Reinstall VMTools on the target VM page.

Install VMTools on Windows VMs

During the installation, you will be guided to first attach the VMTools ISO, then enter the VM console to install VMTools following the prompted steps.

Before you begin

Make sure the virtual machine is in the running state.

Procedure

  1. On the target VM page, click Actions > VMTools > Install VMTools.
  2. In the Install VMTools dialog, click Next: Install on VM Console.
    When attaching the VMTools ISO, the system automatically chooses a CD/DVD drive based on the following rules:
    • When a CD/DVD drive is available, the system automatically selects the first one and attaches the VMTools ISO.
    • When no CD/DVD drive is available, the system automatically detaches the original image on CD/DVD drive 1 and attach the VMTools ISO.
  3. Click Launch Console.
  4. Enter the VM console and install VMTools following the prompted steps.
    1. Load the VMTools image: Click install VMTools in the VMTools installation prompt to load the image to the virtual CD Drive.
    2. Install VMTools: Run the VMTools installation program and install VMTools, commonly-used tools, and virtio driver.
    3. Confirm the installation and reboot the virtual machine: Reboot the virtual machine to make the modification take effect after the installation.

What to do next

To update your VMTools version, click Actions > VMTools > Reinstall VMTools on the target VM page.

VMTools Compatibility with OS

Different operating systems have varying levels of compatibility with VMTools. The following tables show the compatibility status between each operating system and VMTools.
Note: In the table, Yes indicates that the component can be installed on the VM through VMTools, and its related functions can be used normally. No only means that the component cannot be installed on the VM through VMTools, or that dependent features may not work after installation. It does not imply that the component is unsupported—you can still install it through other methods.

Linux OS

OS OS Release Advanced Monitoring Agent QGA
CentOS CentOS 6.5 64-bit No Yes
CentOS 6.8 64-bit Yes Yes
CentOS 6.9 64-bit Yes Yes
CentOS 6.10 64-bit Yes No
CentOS 7.2 64-bit Yes Yes
CentOS 7.3 64-bit Yes Yes
CentOS 7.4 64-bit Yes Yes
CentOS 7.5 64-bit Yes Yes
CentOS 7.6 64-bit Yes Yes
CentOS 7.9 64-bit Yes Yes
CentOS 8.0 64-bit Yes Yes
RHEL Redhat Enterprise Linux Server 6.9 64-bit Yes No
Redhat Enterprise Linux Server 7.0 64-bit Yes No
Redhat Enterprise Linux Server 7.1 64-bit Yes No
Redhat Enterprise Linux Server 7.2 64-bit Yes No
Redhat Enterprise Linux Server 7.3 64-bit Yes No
Redhat Enterprise Linux Server 7.4 64-bit Yes Yes
Redhat Enterprise Linux Server 7.5 64-bit Yes Yes
Redhat Enterprise Linux Server 7.6 64-bit Yes Yes
Fedora Fedora 30 64-bit Yes Yes
Fedora 31 64-bit Yes Yes
Debian Debian 9.9 64-bit Yes Yes
Debian 10.13 64-bit Yes Yes
Debian 11.9 64-bit Yes Yes
Debian 12.5 64-bit Yes Yes
Ubuntu Ubuntu 14.04 64-bit Yes Yes
Ubuntu 16.04 64-bit Yes Yes
Ubuntu 16.10 64-bit Yes Yes
Ubuntu 18.04 64-bit Yes Yes
Ubuntu 20.04 64-bit Yes Yes
Ubuntu 22.04 64-bit Yes Yes
Ubuntu 24.04 64-bit Yes Yes
Kylin Kylin V4.0.2 64-bit Yes No
Kylin V10 SP1(0518) 64-bit Yes Yes
Kylin V10 SP2 64-bit Yes Yes
Kylin V10 SP3 64-bit Yes Yes
NeoKylin NeoKylin V7.0 64-bit Yes Yes
NeoKylin V7update6 64-bit Yes Yes
OpenSUSE OpenSUSE Leap 15.0 64-bit Yes Yes
SLES SUSE Linux Enterprise Server 11 64-bit Yes Yes
SUSE Linux Enterprise Server 12 64-bit Yes Yes
SUSE Linux Enterprise Server 15 64-bit Yes Yes
SUSE Linux Enterprise Desktop 12 64-bit Yes Yes
SUSE Linux Enterprise Desktop 15 64-bit Yes Yes
UOS UOS V20 1050e Yes Yes
Oracle Linux Oracle Linux 7.9 Yes Yes
OpenEuler OpenEuler 20 64-bit Yes Yes
OpenEuler 22 64-bit Yes Yes
Alma Linux Alma Linux 9.3 64-bit Yes Yes

Windows OS

OS OS Release Advanced Monitoring Agent QGA Virtio Driver Cloudbase-init
Windows Windows Server 2008 R2 64-bit Yes Yes Yes No
Windows Server 2012 64-bit Yes Yes Yes Yes
Windows Server 2016 64-bit Yes Yes Yes Yes
Windows Server 2019 64-bit Yes Yes Yes Yes
Windows Server 2022 64-bit Yes Yes Yes Yes
Windows Server 2025 64-bit Yes Yes Yes Yes

FreeBSD OS

OS OS Release Advanced Monitoring Agent
FreeBSD FreeBSD 11 64-bit Yes
FreeBSD 12 64-bit Yes
FreeBSD 13 64-bit Yes