WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Resources
    • Nested Virtualization
  • VMware Nostalgia
  • Apple

ESXi Advanced & Kernel Settings Reference

12.13.2022 by William Lam // 3 Comments

Every time I need to recall or reference a specific ESXi Advanced or Kernel Setting for a customer or field inquiry, I typically need to look at a live ESXi host to see whether a given setting is defined for that version of ESXi and also how to access and/or update the settings. Depending on the interface (vSphere API, vSphere UI, ESXCLI, etc.) that you are using, you may only be able to see a subset of these properties.

For example, some ESXi Advanced Settings are only available using the vSphere API/UI while others are available in both the vSphere API/UI and ESXCLI, with the latter being a common utility for customers to view or update these settings. Similarly, for ESXi Kernel Settings, not only are there new options that are introduced with each ESXi release, but being able to easily check the default values and minimums and maximums can also be useful. I should also mention using the vSphere API/UI, you can also accessed the ESXi Kernel Settings which are prefixed with VMkernel.

As a huge VMware Automation person, I was surprised that I had not thought about creating a reference for the ESXi Advanced and Kernel Settings for recent ESXi releases? I figure this would benefit more than just myself and I have put together the following Github repo: https://github.com/lamw/esxi-advanced-and-kernel-settings where you can see all the default ESXi Advanced and Kernel Settings for ESXi releases across 6.0, 6.5, 7.0 and 8.0.


For those interested, this was generated using some PowerCLI automation and below are the two snippets for pulling the ESXi Advanced Settings (supported and runtime values) using the vSphere API and the ESXi Kernel Settings, which I used the ESXCLI interface that is exposed through the PowerCLI Get-EsxCli cmdlet.

UPDATE (08/13/24) - vCenter Server Advanced Settings Reference is now available.

[Read more...]

Categories // Automation, ESXCLI, ESXi Tags // esxcli, ESXi, ESXi 6.0, ESXi 6.5, ESXi 7.0, ESXi 8.0

Important - NVMe SSD not found after upgrading to ESXi 7.0

04.16.2020 by William Lam // 17 Comments

Several folks in the community had reported issues that after upgrading from ESXi 6.7 to 7.0, their Samsung NVMe PCIe SSDs were no longer showing up. The first report of this was from Ivo Beerens and eventually found that reinstalling ESXi from scratch works but certainly that was not ideal. Just yesterday, I saw that Jeffrey Kusters also shared a similiar issue and used a different workaround which allowed him to upgrade. I also reached out to VMware Engineering as they thought this was a strange behavior but needed to see the logs to understand what was actually going on. Since Jeffrey's setup was an upgrade, I was able to get a copy of his vm-support bundle to provide to Engineering.

Within minutes of looking at the support bundle, they quickly identified the issue and this was caused by using the incorrect ESXCLI command to upgrade a standalone ESXi host from 6.7 to 7.0. Instead of using "esxcli software vib update" command, folks should be using "esxcli software profile update" which has always been the correct command to use when upgrading an ESXi image. In fact, this has been in the vSphere documentation for quite some time and here is the ESXi 7.0 version of that documentation. More importantly, the incorrect command only upgrades the ESXi 6.7 VIBs that exists and does not install any of the ESXi 7.0 VIBs, which means after the upgrade, you are not only missing the nvme-pcie VIB but many other ESXi 7.0 VIBs!

tl;dr - If you are going to use ESXCLI to upgrade your standalone ESXi host, please make sure to use the correct command or you will have issues. Below are the two commands you will need to determine which ESXi Image Profiles are available given an offline bundle and then updating to a specific image profile.

List Image Profiles from ESXi 7.0 Offline Bundle:

[root@e200-8d:~] esxcli software sources profile list -d /vmfs/volumes/e200-8d-local-datastore/VMware-ESXi-7.0.0-15843807-depot.zip
Name Vendor Acceptance Level Creation Time Modification Time
---------------------------- ------------ ---------------- ------------------- -------------------
ESXi-7.0.0-15843807-standard VMware, Inc. PartnerSupported 2020-03-16T10:48:54 2020-03-16T10:48:54
ESXi-7.0.0-15843807-no-tools VMware, Inc. PartnerSupported 2020-03-16T10:48:54 2020-03-16T10:48:54

Upgrade to a specific Image Profile from ESXi 7.0 Offline Bundle:

esxcli software profile update -d /vmfs/volumes/e200-8d-local-datastore/VMware-ESXi-7.0.0-15843807-depot.zip -p ESXi-7.0.0-15843807-standard

Categories // ESXCLI, ESXi, vSphere 7.0 Tags // esxcli, ESXi 7.0

SMART drive data now available using vSAN Management 6.6 API

04.19.2017 by William Lam // 1 Comment

One of the major storage enhancements that was introduced in vSphere 5.1 as part of the new I/O Device Management (IODM) framework was the addition of SMART (Self Monitoring, Analysis And Reporting Technology) data for monitoring FC, FCoE, iSCSI, SAS protocol statistics, this is especially useful for monitoring the health of an SSD device. Historically, there was not a public vSphere API to consume this information and customers had to rely on ESXCLI which is not very friendly from a programmatic standpoint.


One of the nice enhancements that was introduced in vSAN 6.6 from an API standpoint is that you can now access SMART data using the vSAN Management 6.6 API. The other really cool thing about this enhancement is that although this API was added under the vSAN Management API, you do not actually have to be using vSAN to be able to use this new API!

There are two methods in which you can access the SMART data:

  • vCenter Server - When connecting to a vCenter Server, you can access the VsanQueryVcClusterSmartStatsSummary() method which is available as part of the VsanVcClusterHealthSystem and you simply just provide it the name of a vSphere Cluster.
  • ESXi Host - When connecting directly to an ESXi host, you can access the VsanHostQuerySmartStats() method which is available as part of the HostVsanHealthSystem.

To demonstrate how these two new APIs work, I have create two sample scripts: vsan-smarts-data-sample.py using vSAN Management SDK for Python and VSANSmartsData.ps1 using the new PowerCLI Get-VsanView cmdlet.

Here is an example of running the python sample:

python vsan-smarts-data-sample.py -s 192.168.1.200 -u '*protected email*' -p 'VMware1!' -c VSAN-Cluster


Here is an example of running the PowerCLI sample:

Get-VSANSmartsData -Cluster VSAN-Cluster

Categories // Automation, ESXi, PowerCLI, VSAN, vSphere 6.5 Tags // esxcli, PowerCLI, pyVmomi, SMART, ssd, VSAN 6.6

  • « Previous Page
  • 1
  • 2
  • 3
  • 4
  • 5
  • …
  • 13
  • Next Page »

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...