New fling: ESXi Compatibility Checker

New fling: ESXi Compatibility Checker

Summary:

The ESXi Compatibility Checker is a python script that can validate VMware hardware compatibility and upgrade issues of ESXi.

VMware hardware compatibility and product interoperability need to be validated when new hardware is installed on an existing ESXi or when a VC/ESXi version needs to be upgraded. Unfortunately, it is not a trivial task as the compatibility information is scattered in multiple web pages. The user needs to understand the data and validate them one by one manually. This process is tedious, laborious and often prone to error when done at scale.

This Fling will provide a simple and easy way to collect server and IO device details from ESXi and provide a command line interface to validate their VMware compatibility and upgrade issues. Users no longer need to understand compatibility details or manually compare the dataset to find out compatibility or upgrade issues. The Fling can generate a compatibility report for many ESXi managed by a VC with a simple command.

Requirements:

Installation steps on Windows

  1. Download the latest Python package from Python Download.
    Install Python Package, select the option to install “pip”.
  2. Installl Pyvmoni
    python -m pip install pyvmomi
  3. Installl crypto
    python -m pip install crypto
  4. Installl pyopenssl
    python -m pip install pyopenssl

Instructions:

How to Run
————
1. Install Python and required packages
2. Download compchecker.zip
3. Run the below command from extracted folder

   c:\> compchecker.py -s vc-or-esx-hostname -u username 
    c:\>compchecker.py -h
    usage: compchecker.py [-h] -s HOST [-o PORT] -u USER [-r] [-v TOVERSION]
    Standard Arguments for talking to vCenter/ESX
    optional arguments:
        -h, --help            show this help message and exit
        -s HOST, --host HOST  vSphere service to connect to
        -o PORT, --port PORT  Port to connect on
        -u USER, --user USER  User name to use when connecting to host
        -r, --report          Generate a hardware compatibility report in csv format
        -v TOVERSION, --toversion TOVERSION
                              Release version to check for the hardware compatibility report. (default is currently installed

 

Navigate Datacenters and hosts
————

    c:\compchecker>compchecker.py -s 10.192.XX.XX -u admin
    Enter password for host "10.192.XX.XX" and user "admin":
    VMware Compatibility Checker (host:10.192.34.XX, user: admin)
    > connecting host...
    > collection host information...
    [ VMware VirtualCenter Server 6.5.0 (VMware vCenter Server 6.5.0 build-4602587) ]
    VirtualCenter> datacenters
    [1] Datacenter MaxNIC
    [2] Datacenter NextGen
    ...
    VirtualCenter> d 1
    Datacenter MaxNIC> hosts
    [1] Host 10.143.XX.XX (datacenter-001):     VMware ESX Server 6.5.0 (build:5969303)
    [2] Host 10.143.XX.XX (datacenter-001):      VMware ESX Server 6.0.0 (build:2494585)
    ...
    Datacenter MaxNIC> deselect
    VirtualCenter> hosts
    [1] Host 10.143.XX.XX (datacenter-001):     VMware ESX Server 6.5.0 (build:5969303)
    [2] Host 10.143.XX.XX (datacenter-001):      VMware ESX Server 6.0.0 (build:2494585)
    ...
    VirtualCenter> host 2        
    Host 10.143.XX.XX> hardware
    [2] Host 10.143.XX.XX9 (datacenter-001):      VMware ESX Server 6.0.0 (build:2494585)
    Server: 'PowerEdge R720' from Dell Inc.
    CPU Model: Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz (Feature:0000:0000:0000:0010:0000:0110:1101:0111)
    UUID: 4c4c4544-0043-4d10-8044-cac04f425a31 (BIOS: 2.1.2)
    - Physical NICs:
        vmnic0 - 0000:01:00.0: IO Device 'NetXtreme BCM5720 Gigabit Ethernet' from Broadcom Corporation
        PCI ID: 14E4:165F:1028:1F5B        Driver: tg3 N/A
    - Storage Adapters:
        vmhba0 - 0000:00:1f.2: IO Device 'Patsburg 6 Port SATA AHCI Controller' from Intel Corporation
        PCI ID: 8086:1D02:1028:48C Driver: ahci N/A
        vmhba1 - 0000:03:00.0: IO Device 'PERC H310 Mini Monolithics' from LSI / Symbios Logic
        PCI ID: 1000:73:1028:1F51  Driver: megaraid_sas N/A

Validate hardware compatibility of a selected host
————

    Host 10.143.XX.XX> comp -s
    Host 10.143.XX.XX: May Not Be Compatible
    [Server: Warnings]  Server 'PowerEdge R720' may not be compatible for ESX 6.0.0
    [IO: Warnings]  Some IO devices may not be compatible for ESX 6.0.0
    Compatibility issues:
        - Server Model 'PowerEdge R720' with Intel Xeon E5-2600-v2 Series (ID:33815) is certified
        but current CPU Series (features:0x206d7) is not supported
        Certified BIOS versions are higher than 2.1.2
        More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=server&productid=33815
        - IO Device 'PERC H310 Mini' (PCIID:1000:0073:1028:1f51) is certified
        but current driver (megaraid_sas) is not supported
        More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=io&productid=40344
        ...

    Host 10.143.XX.XX> comp -v
    Host 10.143.XX.XX: May Not Be Compatible
    [Server: Warnings]  Server 'PowerEdge R720' may not be compatible for ESX 6.0.0
    Server: 'PowerEdge R720' from Dell Inc.
    CPU Model: Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz (Feature:0000:0000:0000:0010:0000:0110:1101:0111)
    UUID: 4c4c4544-0043-4d10-8044-cac04f425a31 (BIOS: 2.1.2)
        [Warning]  May Not Be Compatible: found that Server 'PowerEdge R720' is compatible but there are some mismatched compatibility details
        - Server Model 'PowerEdge R720' with Intel Xeon E5-2600-v2 Series (ID:33815) is certified
        but current CPU Series (features:0x206d7) is not supported
        Certified BIOS versions are higher than 2.1.2
        More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=server&productid=33815
    
    [IO: Warnings]  Some IO devices may not be compatible for ESX 6.0.0
    - Physical NICs:
        vmnic0 - 0000:01:00.0: IO Device 'NetXtreme BCM5720 Gigabit Ethernet' from Broadcom Corporation
        PCI ID: 14E4:165F:1028:1F5B        Driver: tg3 N/A
        [OK]  Compatible: IO Device 'NetXtreme BCM5720 Gigabit Ethernet (PCIID:14E4:165F:1028:1F5B)' is compatible for ESX 6.0.0
            - More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=io&productid=37809
    - Storage Adapters:
        vmhba0 - 0000:00:1f.2: IO Device 'Patsburg 6 Port SATA AHCI Controller' from Intel Corporation
        PCI ID: 8086:1D02:1028:48C Driver: ahci N/A
        [OK]  Compatible: IO Device 'Patsburg 6 Port SATA AHCI Controller (PCIID:8086:1D02:1028:48C)' is compatible for ESX 6.0.0
            - More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=io&productid=35697
        ...

Check upgradable ESXi Releases and validate hardware compatibility with a selected ESXi release
————

    Host 10.143.XX.XX> up
    > Upgradable releases of VMware ESX Server 6.0.0
        [ID:694] VMware vSphere Hypervisor (ESXi) 6.0.0 U1
        [ID:994] VMware vSphere Hypervisor (ESXi) 6.0.0 U2
        [ID:2131] VMware vSphere Hypervisor (ESXi) 6.5.0
        [ID:2135] VMware vSphere Hypervisor (ESXi) 6.0.0 U3
        [ID:2331] VMware vSphere Hypervisor (ESXi) 6.5.0 U1
        [ID:2735] VMware vSphere Hypervisor (ESXi) 6.7.0

    Host 10.143.XX.XX> upto 6.5.0 -s
        [OK] The specified release (VMware vSphere Hypervisor (ESXi) 6.5.0) is upgradable from this VMware vSphere Hypervisor (ESXi) 6.0.0
        [Server: Warnings]  Server 'PowerEdge R720' may not be compatible for ESX 6.5.0
        [IO: Warnings]  Some IO devices may not be compatible for ESX 6.5.0
        Compatibility issues:
        - Server Model 'PowerEdge R720' with Intel Xeon E5-2600-v2 Series (ID:33815) is certified
            but current CPU Series (features:0x206d7) is not supported
            Certified BIOS versions are higher than 2.1.2
            More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=server&productid=33815
        - IO Device 'PERC H310 Mini' (PCIID:1000:0073:1028:1f51) is certified
            but current driver (megaraid_sas) is not supported
            More information: http://www.vmware.com/resources/compatibility/detail.php?deviceCategory=io&productid=40344
            

Generate a compatibility validation report with csv format
————

    c:\>compchecker.py -s 10.192.XX.XX -u admin -r    
    Enter password for host "10.192.XX.XX" and user "admin":
        VMware Compatibility Checker (host:10.192.XX.XX, user: admin)
        > connecting host...
        > collection host information...
        [ VMware VirtualCenter Server 6.5.0 (VMware vCenter Server 6.5.0 build-4602587) ]
        Generating compatibility validation report for 10.192.XX.XX
        [Host 10.143.XX.XX] Collecting hardware information...
        [Host 10.143.XX.XX] Validating Compatibility...
        ...
        Report 'compreport_10.192.XX.XX.csv' has been created!    
    c:\>compchecker.py -s 10.192.XX.XX -u admin -r -v 6.7.0
        ...
        Report 'compreport_10.192.XX.XX_6.7.0.csv' has been created!    

Video:

You can get this fling here

Leave a Comment

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

%d bloggers like this: