WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Resources
    • Nested Virtualization
  • VMware Nostalgia
  • Apple
You are here: Home / Automation / Quick Tip - Using ESXCLI to upgrade ESXi 8.x throws MemoryError or Got no data from process

Quick Tip - Using ESXCLI to upgrade ESXi 8.x throws MemoryError or Got no data from process

03.04.2024 by William Lam // 28 Comments

Several users in the community have reported running into a memory error issue when attempting to upgrade their standalone ESXi hosts using this ESXCLI trick, which has been possible since ESXi 5.1 back in 2012.

[MemoryError]
Please refer to the log file for more details.


Initially, I was not able to reproduce in my lab environment at work, which was running ESXi 8.0 Update 2, but I still got an error message but it was different:

Got no data from process.
Command "LANG=en_US.UTF-8 /usr/lib/vmware/esxcli-software sources.profile.list -d "https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml" "
еxited with error code: 1


After checking my homelab environment which was also running ESXi 8.0 Update 2, I did see the same MemoryError message as reported by the community when using ESXCLI to list the available ESXi Image Profiles from VMware's online patch repository.

I was about to report this ESXCLI issue when I saw that an internal PR had already been filed and Engineering is currently investigating the problem, which I have also asked for a KB to be published for awareness and resolution tracking purposes.

From the preliminary assessment, the issue is due to the fixed amount of memory (300MB) that is assigned to the ESXCLI process when it runs and because the VMware's online patch repository has gotten bigger with each release, additional memory is required to parse the current repository, which exceeds the fixed limit. You can see this limi by running: grep 'mem=' /usr/lib/vmware/esxcli-software


The fixed memory limit for ESXCLI was only introduced in ESXi 8.x and is not observed in ESXi 7.x, which would also explain why I was not seeing this problem when using the latest ESXi 7.0 Update 3 host.

The current guidance for this problem is to either update/upgrade using vCenter Server OR if you have a standalone ESXi host, point ESXCLI to a local ESXi offline bundle ZIP file rather than using the online VMware patch repository which would avoid parsing the repo's metadata. The other nice benefit of using the local patch method is that you only have to download the update once rather than pulling it down multiple times if you have more than a single ESXi host to update.

Alternatively, if this is just your homelab and you only have a single ESXi host like myself, there is a workaround that I was able to figure out that would allow you to still use online VMware patch repository but this is is definitely not officially supported.

Login to the ESXi Shell via SSH and run the following command, which will update the configured ESXCLI memory limit from 300MB to 500MB, which should be sufficient to now use ESXCLI to update/upgrade your ESXi host:

esxcli system settings advanced set -o /VisorFS/VisorFSPristineTardisk -i 0
cp /usr/lib/vmware/esxcli-software /usr/lib/vmware/esxcli-software.bak
sed -i 's/mem=300/mem=500/g' /usr/lib/vmware/esxcli-software.bak
mv /usr/lib/vmware/esxcli-software.bak /usr/lib/vmware/esxcli-software -f
esxcli system settings advanced set -o /VisorFS/VisorFSPristineTardisk -i 1

More from my site

  • Minimum vSphere privileges to install or remove patch from ESXi
  • Quick Tip - New method to mark HDD to SSD in ESXi 7.x and 8.x using ESXCLI
  • Quick Tip - New remote version of ESXCLI 8.x
  • Extending ESXCLI commands
  • Applying additional security hardening enhancements in ESXi 8.0

Categories // Automation, ESXi Tags // esxcli

Comments

  1. *protectedSemoTech says

    03/04/2024 at 4:02 pm

    Brilliant, thanks William. While I did not run into that issue it should help everyone else that did.

    Reply
    • *protectedmarco patterson says

      02/17/2025 at 11:37 am

      WORKED GREAT!!! I have a HOME lab with one ESX node and THANK YOU!!

      Reply
    • *protectedSoeren says

      03/06/2025 at 12:09 am

      NICE!!! Thank you!

      Reply
  2. *protectedWill says

    03/04/2024 at 5:09 pm

    Much appreciated.

    Success at long last 🙂

    Reply
  3. *protectedMarki says

    03/04/2024 at 5:10 pm

    Hmm what license are u using in your homelab? 😉

    Reply
    • *protectedPin Pin Poola says

      03/05/2024 at 5:47 am

      Dude, he works for VMware, so I guess he is using whatever licensing he wants to generate for himself. I know Broadcom are tight, but I doubt they made him sign up to a VMUG Advantage sub!

      Reply
  4. *protectedCarlos says

    03/07/2024 at 6:09 pm

    Works fine, thanks man!

    Reply
  5. *protectedArne says

    03/10/2024 at 3:20 am

    thanks, works fine 🙂

    Reply
  6. *protectedSteve says

    03/10/2024 at 11:48 am

    Thanks, worked perfectly!

    Reply
  7. *protectedmicrokid says

    03/10/2024 at 12:42 pm

    Thanks 🙂

    Reply
  8. *protected_M_P says

    03/16/2024 at 9:44 am

    Hi William, very useful article, as usual...
    Working on a DELL PE R440 with a Dell-customised ESXi 8.0 U2b, trying to update the Dell Addon component to A05, I had to increase that limit to 700 MB...

    Reply
  9. *protectedRamen says

    03/28/2024 at 4:45 am

    Thanks!

    Reply
  10. *protectedJoe Mattilini says

    04/19/2024 at 2:29 pm

    Hi,

    What are the steps to increate mem allocation form vcenter?

    Thanks,

    Reply
  11. *protectedCésar says

    04/26/2024 at 11:30 am

    Save my day. Thank you very mutch

    Reply
  12. *protectedMatze says

    04/28/2024 at 7:55 am

    GREAT!!! Thx!!!!

    Reply
  13. *protectedJoakim Hellström says

    06/28/2024 at 2:11 am

    What does line 1 and 4 do?

    Reply
  14. *protectedRobert Peterson says

    09/15/2024 at 11:13 am

    Thank you! Worked for me too.

    Reply
  15. *protectedTone says

    09/19/2024 at 5:12 am

    Much appreciated! I have saved this into an executable script file because it seems that the value gets reset with every reboot of the ESXi host. Many thanks!

    Reply
  16. *protectedTheExpert says

    09/21/2024 at 12:04 am

    Thank you very much for this great article. I ran into this error and didn't know why. You helped me to solve the issue.

    Reply
  17. *protectedDavid Irwin says

    09/22/2024 at 6:48 am

    Thanks this have saved me lots of work.

    Reply
  18. *protectedTaKeN says

    09/28/2024 at 8:17 pm

    Thanks William got exacly this same problem with Memory error when i try update my esx 8.0 to Build 24280767

    Reply
  19. *protectedJayV says

    12/01/2024 at 1:59 pm

    William, you are the boss. Guys like you save us tons of time and effort. Great respect. Jay

    Reply
    • William Lam says

      12/01/2024 at 3:12 pm

      Apperciate the comment Jay, just helping our users, especially as I'm still an active user myself on a regular basis 🙂

      Reply
  20. *protectedMegaman says

    02/16/2025 at 12:50 pm

    Doesn't modifying the backup for the esxcli-software and then overwriting the original defeat the purpose of making a backup?

    i just made the backup and modified the original, if something broke i could restore the original from the backup.

    Reply
  21. *protectedyoshi0808 says

    03/07/2025 at 10:52 pm

    Thank you! I have successfully updated to ESXi 8.0 Update 3d.

    Reply
  22. *protectedBoris B. says

    03/10/2025 at 1:38 pm

    Thanks a lot. Now Update 3d is installed

    Reply
  23. *protectedYOLO says

    03/19/2025 at 1:01 am

    Is the Broadcom depot disliking access by proxy intermediated ESXCLI access?

    Doing

    esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml --proxy=http://example.com:80

    works but

    esxcli software sources profile list -d https://hostupdate.broadcom.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml --proxy=http://example.com:80

    throws a 403 error, but running a browser through the same depot URL and proxy comes back fine with the correct xml file and no cert errors. Running the ESXCLI command proxyless also works fine too, but usually this host has no direct internet access so I can't depend on that.

    Reply
    • William Lam says

      03/19/2025 at 6:24 am

      afaik, the endpoint is hostupdate.vmware.com NOT hostupdate.broadcom.com

      Reply

Leave a Reply to Robert PetersonCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Programmatically accessing the Broadcom Compatibility Guide (BCG) 05/06/2025
  • Quick Tip - Validating Broadcom Download Token  05/01/2025
  • Supported chipsets for the USB Network Native Driver for ESXi Fling 04/23/2025
  • vCenter Identity Federation with Authelia 04/16/2025
  • vCenter Server Identity Federation with Kanidm 04/10/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...