Skip to content

PowerCLI Script to verify ESXi 6.5 support

VMware vSphere 6.5 is here and a lot of systems are no longer supported. Use the following script to verify that ESXi hosts in your environment are certified for running ESXi 6.5. The script generated the following output for all hosts connected to the vCenter.

Download: check_esxi_65_support.ps1 (GitHub Site)

The script automatically loads the HCL-Check function (from GitHub), and my JSON based VMware HCL. The script needs to download about 3 MB, which is the size of the HCL at the moment. Connect to a vCenter Server, modify the $scope variable if required (Default is to check all hosts connected to the vCenter) and run the script.

Please note that the script can only match about 80% of all systems that it has been tested against. If the Check-HCL function reports "supported=true" it is very likely that the system is supported, but to be 100% sure always verify with VMware HCL (Link is also included in Check-HCL for each system). If the output is "unknown" the common reason is that I couldn't match the system properly. If my script couldn't match, please report model strings as explained here.

If you get the following error message:

.\check_esxi_65_support.ps1 : File .\check_esxi_65_support.ps1 cannot be loaded. The file is not digitally signed. You cannot run this script on the current system. For more information about running scripts and setting execution policy, see about_Execution_Policies at

The script has been blocked by Windows for security reasons. You can unblock it the file properties. (Whenever you unblock a script, verify it's content to make sure you understand what it does and that it does not do anything bad.)

23 thoughts on “PowerCLI Script to verify ESXi 6.5 support”

  1. this looks great...

    but when i run the script i get errors :(

    im not sure why this is happening....

    At C:\Scripts\check_esxi_65_support.ps1:230 char:289
    + ... hidden" value="✓" /><input name="authenticity_token" type="hidden" value= ...
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it as part of a string.
    At C:\Scripts\check_esxi_65_support.ps1:234 char:14
    + ~
    The '///<!--
    + ~
    The '//<a href="/fgrehl/virten-scripts" data-pjax="#js-repo- ...
    + ~
    Missing file specification after redirection operator.
    Not all parse errors were reported. Correct the reported errors and try again.
    + CategoryInfo : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : AmpersandNotAllowed

    1. I'm very sure they will be supported in a couple of days/weeks. Typically, everything you can still buy, or is eligible to an active support contract will be certified by the vendor.

  2. Can you verify some machines? I have the following result even though they should not be supported according to your previous post.

    [host] (PowerEdge M620): ESXi 6.5 supported
    [host] (PowerEdge M620): ESXi 6.5 supported

    These are two VRTX based M620 Xeon E5-2650 v2 @ 2.60GHz

    Thank you!

  3. Hello all,

    Does anyone know of a script/util that can assist us that are using ESXi in a homelab with whitebox hardware that do NOT have vCenter?

    Thank yhou

    1. The script checks whether the hardware is supported by VMware in terms of "support contracts". You typically don't have payed support in homelabs, especially with whitebox hardware. If your questions is "will ESXi 6.5 run on your whitebox hardware", the answer is probably yes when you are currently on 5.5 or 6.0. There are only a few very old CPUs that are no longer supported (See here).

      If ESXi 6.5 fails to start, you can easily revert to the previous version.

        1. If ESXi fails to boot after an upgrade it will automatically perform a rollback. If it runs into a PSOD after booting successfully, you can always perform a manual rollback as explained here. (Press Shift+R during ESXi bootup, requires Keyboard/Monitor of course)

          The Upgrade with esxcli software profile update -p ESXi-6.5.0-4564106-standard -d is a quite safe procedure. If it encounters driver issues, it displays an error message and stops the upgrade. When it's successful, but can't boots the old image.

  4. Some problems with our B200 M3s and B420 M3s

    PowerCLI C:\users\xxxxxxxx\Documents\Virten Scripts> .\check_esxi_65_support.ps1
    You cannot call a method on a null-valued expression.
    At C:\Users\xxxxxxxxxx\AppData\Local\Temp\Check-HCL.ps1:63 char:13
    + if ($HostModel.StartsWith("UCS") -and $ModelMatch.Contains("U ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

    x.x.x.46 (UCSB-B200-M3): unknown
    x.x.x.47 (UCSB-B200-M3): unknown
    x.x.x.45 (UCSB-B200-M3): unknown
    x.x.x.51 (UCSB-B420-M3): unknown
    x.x.x.44 (UCSB-B200-M3): unknown
    x.x.x.48 (UCSB-B420-M3): unknown
    x.x.x.50 (UCSB-B420-M3): unknown
    x.x.x.49 (UCSB-B420-M3): unknown

  5. Hi, I was just trying to run the script with PowerCLI 6.5R1 against vCenter 6.5 but get "unknown" for each of my 100 HPE hosts.
    (ProLiant DL360 Gen9): unknown
    (ProLiant DL380p Gen8): unknown
    I am sure most of my models are already in your HCL file.
    Any ideas to troubleshoot?

    1. Maybe a problem with the CPU not been recognized. Can you run Get-VMHost |select Build,Manufacturer,Model,ProcessorType and send me the output?

Leave a Reply

Your email address will not be published. Required fields are marked *