Updated: VM Reporting Script for Nutanix with Powershell

PowershellOk ok, a new version of this Powershell script? Yeah, in the latest addition I’ve added CPU RDY % and Working Set Sizes for Read/Write IO. This time I’ve added a colomn that shows if the VM has a CD-ROM and if so, what ISO file is mounted to the CD-ROM. This was based on a chat with Lee Pryor, thanks for the idea Lee!

 

 

From that older blog, the following interfaces are available:

  • REST API
  • HTML5 GUI
  • CLI – ACLI & NCLI
  • Scripting interfaces (PowerShell)

The following definitions are from the Nutanix Bible as Steve Poitras already explained this:

REST API
The REST API exposes every capability and data point of the Prism UI and allows for orchestration or automation tools to easily drive Nutanix action.  This enables tools like Saltstack, Puppet, vRealize Operations, System Center Orchestrator, Ansible, etc. to easily create custom workflows for Nutanix. Also, this means that any third-party developer could create their own custom UI and pull in Nutanix data via REST.

HTML5 GUI (Prism UI)
The HTML5 UI is a key part to Prism to provide a simple, easy to use management interface.  However, another core ability are the APIs which are available for automation.  All functionality exposed through the Prism UI is also exposed through a full set of REST APIs to allow for the ability to programmatically interface with the Nutanix platform.  This allow customers and partners to enable automation, 3rd-party tools, or even create their own UI.

CLI – ACLI & NCLI
The Acropolis CLI (ACLI) is the CLI for managing the Acropolis portion of the Nutanix product.  These capabilities were enabled in releases after 4.1.2. The Nutanix CLI is the CLI for managing the Nutanix product and is more heterogeneous across hypervisors.

PowerShell
Windows PowerShell is a powerful shell (hence the name ;P) and scripting language built on the .NET framework.  It is a very simple to use language and is built to be intuitive and interactive.

With this new version of the inventory script I’ve added working set sizes for both Read I/O, Write I/O and combined I/O besides the CPU RDY times. The I/O is measured on an average of 3600 seconds (1 hour) and the CPU RDY times are a point in time measurement.

Running the script is straight forward:

Running the script
The actual output (CSV file)
The output in an HTML file
The following two tabs change content below.

Kees Baggerman

Kees Baggerman is a Staff Solutions Architect for End User Computing at Nutanix. Kees has driven numerous Microsoft and Citrix, and RES infrastructures functional/technical designs, migrations, implementations engagements over the years.

2 comments

  1. Chris says:

    Great script. Usually you grab a script from a blog and it never works without a ton of tweaking. FYI I found one typo. Your output path to for the csv files are the same filename so your host file output overwrites your VMInventory output.
    $fullreport | Export-Csv -Path ~\Desktop\NutanixVMInventory.csv -NoTypeInformation -UseCulture -verbose:$false
    $fullreportHosts | Export-Csv -Path ~\Desktop\NutanixHostInventory.csv -NoTypeInformation -UseCulture -verbose:$false

  2. Shaaynee says:

    We are getting BIOS version in integer value instead of proper format. Any Reason why ?

Leave a Reply

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