Close Menu
DPC Virtual Tips
    Read More

    How to Investigate TCP Retransmissions on Linux

    August 11, 2026

    Slurm Node Is DRAINED: How to Find the Exact Reason

    August 10, 2026

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    August 9, 2026
    • Home
    • About Us
    • Contact
    • Cookie Policy
    • Comment Policy
    • Privacy Policy
    • Terms of Use
    • Disclaimer
    Tuesday, August 11
    DPC Virtual Tips
    • Home
    • Operating Systems
    • PowerFlex
    • HPC
    • Virtualization
    • About the Author
    • About Us
    • Contact
    DPC Virtual Tips
    Home » Upgrading VMware Tools on ESXi Hosts
    Virtualization

    Upgrading VMware Tools on ESXi Hosts

    DaniloBy DaniloMay 13, 2025Updated:August 5, 2026No Comments3 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    upgrade VMware Tools on ESXi
    Share
    Facebook Twitter LinkedIn Pinterest Email

    Upgrading VMware Tools on ESXi hosts is an article that shows an automated approach to upgrading the VMware Tools version on an ESXi host, using a Python script.

    The idea is to use a Linux CentOS 9 as a script server. We’ll execute a Python script from this server to connect to each ESXi host and upgrade the VMware Tools.

    Upgrade VMware Tools on Standalone or Manually Specified Hosts

    If you want to upgrade the VMware Tools version on Standalone hosts or want to specify the hosts to be upgraded manually, let’s get started:

    1- Install CentOS 9 (without GUI) – We have tested it with CentOS 9, but feel free to install a different Linux flavor and adjust the script to run on it.

    2- Access it by SSH with root rights and install Python:

    curl -O https://raw.githubusercontent.com/danchiacchio/scripts/refs/heads/main/sh_PythonInstall/install-python.sh
    
    chmod +x install-python.sh
    
    ./install-python.sh

    Grab a coffee and wait for a while. The automated Python install takes a while to complete!

    3- Download the VMware Tools Offline VIB Bundle (.zip) and copy it to the CentOS machine (using WinSCP, Powershell, or your preferred method for copying).

    4- Download the Python script to check the VMware Tools version and upgrade it:

    curl -O https://raw.githubusercontent.com/danchiacchio/scripts/refs/heads/main/py_vESXiTools/py_vESXiTools.py
    
    pip install paramiko prettytable
    
    chmod 700 py_vESXiTools.py

    5- Create a file named “esxi_hosts.txt” in the same directory and place the ESXi management IPs of all target ESXi hosts, one IP per line.
    Example:

    [root@infra-tools-2 ~]# cat esxi_hosts.txt
    172.16.90.11
    172.16.90.12
    172.16.90.13

    6- Run the Python script:

    python3 py_vESXiTools.py

    When choosing option 2, the script will copy and install the VMware Tools Offline VIB Bundle (.zip). Afterward, a cleaning task will be executed to remove this file. In the following example, I previously executed ii and upgraded it:

    Executing the script in a different cluster, we can see the upgrading process happening:

    Look, we can see details of the removed VIB and the installed VIB:

    Installation Result
       Message: Operation finished successfully.
       VIBs Installed: VMware_locker_tools-light_12.5.2.24697584-24705409
       VIBs Removed: VMware_locker_tools-light_12.4.5.23787635-24262298
       VIBs Skipped:
       Reboot Required: false
       DPU Results:
    🧹 Cleaning up temporary files on 192.168.255.11...

    Upgrade VMware Tools on Cluster-Based Hosts

    If you have one or more vSphere clusters and want to upgrade the VMware Tools version on these hosts, follow the instructions below:

    1- Ensure that you have Python installed correctly.

    2- Download the VMware Tools Offline VIB Bundle (.zip) and copy it to the CentOS machine (using WinSCP, Powershell, or your preferred method for copying).

    3- Download the Python script to check the VMware Tools version and upgrade it:

    curl -O https://raw.githubusercontent.com/danchiacchio/scripts/refs/heads/main/py_vESXiTools/py_vESXiTools-auto.py
    
    pip install paramiko prettytable
    
    chmod 700 py_vESXiTools-auto.py

    4- Run the Python script:

    python3 py_vESXiTools-auto.py

    This is a menu-based script. Just explore the options to learn how to use the script. Feel free to contact me in case of doubts or improvements 😉

    To Wrap This Up

    So, I tested it several times in a lab environment, and it worked as expected. However, be careful when executing it in a production environment. We’ll not be responsible for downtime or weird behavior in your environment.

    By default, it will not upgrade the VMware Tools inside the GuestOS VMs. So, you need to upgrade the VMware Tools version on each GuestOS VM!

    An additional warning, if you are using a cluster image, after upgrading the VMware Tools on all ESXi hosts, they will not be compliant with the image configuration (it is expected to happen):

    If you’d like to fix this image error:

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Previous ArticlevCenter Reduced Downtime Upgrade
    Next Article Changing NTP Settings on ESXi Hosts
    Danilo

    Infrastructure Engineer with experience in Virtualization, Linux, Windows Server and learning automation using Python. DPC Virtual Tips was created to share practical tutorials, lab experiences and troubleshooting guides focused on enterprise infrastructure technologies.

    Related Posts

    VM Replication with vSphere Replication and Site Recovery Manager

    June 16, 2025

    Changing DNS Settings on ESXi Hosts

    May 20, 2025

    Changing NTP Settings on ESXi Hosts

    May 19, 2025

    Comments are closed.

    Search
    Categories
    • HPC (10)
    • Operating Systems (83)
    • PowerFlex (22)
    • Virtualization (129)
    Read More
    Operating Systems

    How to Investigate TCP Retransmissions on Linux

    By DaniloAugust 11, 20260
    HPC

    Slurm Node Is DRAINED: How to Find the Exact Reason

    By DaniloAugust 10, 20260
    HPC

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    By DaniloAugust 9, 20260
    Operating Systems

    Linux Process Resource Usage: How to Find Heavy Processes

    By DaniloAugust 6, 20260
    HPC

    Lustre Filesystem Commands: A Practical Admin Guide

    By DaniloAugust 5, 20260
    Latest Posts

    How to Investigate TCP Retransmissions on Linux

    August 11, 2026

    Slurm Node Is DRAINED: How to Find the Exact Reason

    August 10, 2026

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    August 9, 2026
    Images from Gallery
    hpc main commands
    linux commands
    install rock linux
    lustre fs
    shell scripting
    vSAN Trace Files
    Categories
    • HPC
    • Operating Systems
    • PowerFlex
    • Virtualization
    • Home
    • About Us
    • Contact
    • Cookie Policy
    • Comment Policy
    • Privacy Policy
    • Terms of Use
    • Disclaimer
    Copyright © 2026, DPC Virtual Tips. All rights reserved.

    Type above and press Enter to search. Press Esc to cancel.

    We use cookies to ensure your best experience on our website. If you continue using our website, we'll assume you agree to our cookie policy