Tag Archives: Automation

JSON Repository Format Update and now with SCSI Codes

Whenever I create databases with information like ESXi Versions, vCenter Versions or VMware's HCL I try make these available to be used for automation or in scripts. JSON is my data-type of choice but I figured that another structure might be easier to handle in some circumstances. This is why I've now created separate versions where it is now possible to access the information with keys.

Here is an example of the old ESXi Releases JSON File (List), and the new V2 (Hashtable):

Read more »

PowerCLI Script to get ESXi Network/Storage Firmware and Driver Version

For a healthy vSphere virtualization infrastructure and to receive support from VMware it is important to verify that IO devices are listed in VMwares Compatibility Guide/Hardware Compatibility List (HCL) with their correct driver and firmware version. Gathering firmware details and comparing them to the HCL is very time-consuming. I made a small script that automatically gathers the following information:

  • IO Devices (NICs, HBAs and RAID Controllers)
  • Driver Version
  • Firmware Version
  • Official HCL Link

Read more »

VMware IO Devices HCL in JSON Format

For a healthy platform and to receive support from VMware it is important to verify that all IO devices are listed in VMwares Compatibility Guide or Hardware Compatibility List (HCL) with their correct driver and firmware version. The HCL is currently only provided as a website which is a problem for automated reports. Therefore I've transformed the VMwares IO Devices HCL into the JSON format, which works great in scripts. Here is the result:

Read more »

VMware HCL in JSON Format News and PowerCLI Function

A few month ago I created a VMware HCL in JSON Format. This file should allow you to use the information provided by VMware in their HCL in an automated way. Recently I made some improvements to the JSON HCL and created a working PowerCLI function that can match about 80% of all systems.

Currently, the JSON files are generated every 2-3 days. I also created two filtered versions because the full HCL is very large and contains outdated information: Read more »

How to use ESXCLI v2 Commands in PowerCLI

PowerCLI, a set of PowerShell extensions for vSphere, is a great tool for automating VMware configuration and management tasks. It allows you to change a lot of ESXi host and vCenter settings. A powerful cmdlet is Get-EsxCli which allows you to run ESXCLI tasks from your PowerCLI console. ESXCLI is the main configuration command on an ESXi host.

This post explains how to use the Get-EsxCli cmdlet with the new V2 interface, which is much more intuitive than the old method.


Read more »

Getting Started with PowerCLI for Linux (PowerCLI Core)

powerclicoreBased on Microsoft PowerShell Core which enables users to use PowerShell on Linux, Mac and Docker, VMware has started to make PowerCLI compatible with the new PowerShell. This allows to run scripts that were previously only available for Windows on Linux or Mac based systems.

In this post I am going to give a quick startup guide to the installation and configuration of PowerCLI Core.

Read more »

VMware HCL Check with PowerCLI (Proof of Concept)

Announced in my VMware HCL in JSON Format post a few days ago, here is now a working version of my script. The script does not create a fancy report at the moment, it just writes some output and the result. It's only intended to show that it actually works. Here is an example:


There are still some problems, but especially with HP, Dell or IBM Systems, it produces good results.

Read more »

Check VMware HCL with PowerCLI (half-done, need assistance)

It's on my to-do list for quite a long time: Create a Script that checks hardware against VMwares HCL. There are some problems that needs to be solved to automate the process. My main problems are matching the installed ESXi version to the release Level (eg. 5.5 U2, 6.0, 6.0 U1,...), integrating the HCL into a script and matching HCL to the physical hardware.

This is what I can do today with PowerCLI, basically by running "Get-VMHost | Check-HCL":
I'm not sure if anyone is interested in automating HCL checks because I couldn't find any scripts online. If you are interested, nice! I need assistance...

I need a larger pool of hardware information to know how hardware identifies itself. So if you want to support me, please run the following PowerCLI command and send me the output (Just Copy/Paste CSV file contents to my Contact Form, or send me an eMail. I will respond with the output of my script as shown above). If you don't want to disclose your hostnames, just remove the "Name" part in the command, or replace the content with dummy-names.

Get-VMHost |select Name,Build,Manufacturer,Model,ProcessorType |Export-Csv hosts.csv -NoTypeInformation

If you are interested in how the script works, or the script/function itself, feel free to contact me. (It's unfinished spaghetti code....)

Some additional features:


Display VMware HCL link (For further verification)


Display all supported ESXi versions for the hardware


Product End Of Support Matrix now available as JSON (incl. Script)

The database used at my VMware Product End Of Support Countdown is now available in JSON. The database is based on VMware Lifecycle Product Matrix and allows you to use the information in scripts or for automation purposes.


I’ve also written a small script to demonstrate what this information can be used for.

Read more »

ESXi Version Information now available as JSON (incl. Script example)

Out of many reasons, I need VMware ESXi version information in a format that can be reused in scripts. I maintain a manual list since a couple of years but this list can't be used for automation purposes. VMware does not provide this information in the required format, so I created my own database which is now also available as JSON file.


I've also written a small script to demonstrate what this information can be used for. Read more »