Here is another tidbit on how you can leverage the power of vSphere Events, which now includes over 2K+ as of vSphere 8.0 Update 1 to help monitor when an ESXi filesystem and/or partition is low on disk space.
With vSphere 6.7 or later, we have two events that you can use to help alert when either an ESXi ramdisk (e.g. /var) or VFAT partition (e.g. bootbanks) has filled up.
- Ramdisk: esx.problem.visorfs.ramdisk.full
- VFAT: esx.problem.vfat.filesystem.full.other
When either of these occur, you can easily find them under the Monitor->Events section for an ESXi host as shown in the screenshot below.
While there is not a default vCenter Server Alarm configured for these specific events, you can easily create a custom alarm by using these event IDs as the alarm trigger and you will now be able to see these alerts in the vSphere UI when this event occurs.
Of course, vCenter Server Alarms is just one way to consume vCenter Server Events, you can also use the popular VMware Event Broker Appliance (VEBA) solution to build powerful event-driven automation that can take these events and forward them to Slack, Teams or even send you a text message!
With vSphere 8.0 and later, there two additional vCenter Server Events have been introduced to alert when either the ESXi scratch or ESX-OSData partitions are filling up that you can also utilize.
- Scratch: esx.problem.scratch.partition.full
- ESX-OSData: esx.problem.osdata.partition.full
Finally, if you need to alert on inode tables filling up, the following two events can help which is available in vSphere 6.7 and later:
- ESXi root filesystem inodes: esx.problem.visorfs.inodetable.full
- ESXi ramdisk inodes: esx.problem.visorfs.ramdisk.inodetable.full
Krishnaprasad K says
Thanks for this tip William. Is there a way to connect to this events via an API. Meaning can a userspace daemon/application monitor these events say via vob ?
Krishnaprasad K says
Meaning I look for subscribing to these events from a userspace daemon running on ESXi.
William Lam says
Yes, there's a vSphere API https://vdc-repo.vmware.com/vmwb-repository/dcr-public/d1902b0e-d479-46bf-8ac9-cee0e31e8ec0/07ce8dbd-db48-4261-9b8f-c6d3ad8ba472/vim.event.EventManager.html for interacting with vCenter Server Events, you would typically connect externally from the system, not sure what you're trying to do by running it as a userspace application on ESXi? Remember, ESXi isn't a general purpose OS ... If you're building some monitoring tool/system, you'll connect using public vSphere API just like all of our 2nd/3rd party solutions