ZenPacks

Nutanix ZenPack

This ZenPack provides system monitoring of Nutanix.

Support

This ZenPack is included with commercial versions of Zenoss and enterprise support for this ZenPack is provided to Zenoss customers with an active subscription.

Releases

Version 1.0.1 - Download
Released on 2017/11/14
Requires PythonCollector ZenPack,ZenPackLib ZenPack
Compatible with Zenoss Resource Manager 5.2 - 6.0
Version 1.0.0 - Download
Released on 2017/09/22
Requires PythonCollector ZenPack,ZenPackLib ZenPack
Compatible with Zenoss Resource Manager 5.2.x and 5.3.x

Background

This ZenPack monitors the Nutanix hyperconverged infrastructure environment.

Prerequisites

  • Nutanix (5.0 or newer)
  • Nutanix API V1/V2
  • Prism API credentials
  • ZenPackLib ZenPack 2.0.8+

Features

Nutanix features include:

  • Overall Cluster Health Monitoring
  • Health Monitoring for Clusters, Hosts, and CVMs
  • Graphs for key Nutanix settings and performance metrics
  • Service Impact and root cause analysis. (Requires Zenoss Service Dynamics)
  • Event Management

Nutanix Structure and Discovery

Objects are automatically discovered via the Nutanix API. The ZenPack class structure can be visualized in the following Diagram:

Nutanix ZP Class Structure

Nutanix ZP Class Structure

Nutanix Device (NutanixEndpoint)

  • Description: The Nutanix device, which can host multiple clusters.
  • Attributes: cluster_external_ipaddress, cluster_uuid, device_uuid, hypervisor_types, model_name, ncc_version, product_version, timezone
  • Relationships: nutanixClusters
  • Datasources:
    • events
    • alerts

Nutanix Clusters (NutanixCluster)

  • Description: The cluster component. Nutanix can host multiple clusters.
  • Attributes: cluster_external_ipaddress, cluster_uuid, num_hosts, operation_mode, storage_usage_pct, total_cpu, total_memory, total_storage, version
  • Relationships: nutanixEndpoint, nutanixCVMs, nutanixHosts, nutanixStoragePools, nutanixVMs, nutanixVdisks
  • Datapoints:
    • cluster:
      • operation_mode
    • stats:
      • content_cache_hit_pct
      • controller_random_io_pct
      • controller_read_io_pct
      • controller_seq_io_pct
      • controller_write_io_pct
      • hypervisor_cpu_usage_pct
      • hypervisor_kvm_cpu_usage_pct
      • hypervisor_kvm_memory_usage_pct
      • hypervisor_memory_usage_pct
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • usagestats:
      • storage.capacity_bytes
      • storage.free_bytes
      • storage.usage_pct
      • storage_tier.das-sata.capacity_bytes
      • storage_tier.das-sata.free_bytes
      • storage_tier.das-sata.usage_pct
      • storage_tier.ssd.capacity_bytes
      • storage_tier.ssd.free_bytes
      • storage_tier.ssd.usage_pct
  • Graphs:
    • Controller IO
    • DAS Storage
    • Hypervisor CPU Utilization
    • Hypervisor Memory Utilization
    • IO
    • IO Cache Hit Ratio
    • SSD Storage
    • Storage Utilization
  • Thresholds:
    • 90 Percent Storage
    • 95 Percent Storage
    • 95 Percent hypervisor memory
    • 98 Percent Controller IO
    • 98 Percent Disk IO

Hosts (NutanixHost)

  • Description: Hosts that Nutanix services run on
  • Attributes: cluster_uuid, host_uuid, hypervisor_address, service_vmexternal_ip, cpu_capacity_in_hz, memory_capacity_in_bytes, hypervisor_version
  • Relationships: nutanixCluster, nutanixHardDisks
  • Datapoints:
    • host:
      • num_vms
      • state
    • stats:
      • content_cache_hit_pct
      • controller_random_io_pct
      • controller_read_io_pct
      • controller_seq_io_pct
      • controller_write_io_pct
      • hypervisor_cpu_usage_pct
      • hypervisor_memory_usage_pct
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • usagestats:
      • storage.capacity_bytes
      • storage.free_bytes
      • storage.usage_pct
      • storage_tier.das-sata.capacity_bytes
      • storage_tier.das-sata.free_bytes
      • storage_tier.das-sata.usage_pct
      • storage_tier.ssd.capacity_bytes
      • storage_tier.ssd.free_bytes
      • storage_tier.ssd.usage_pct
  • Graphs:
    • Controller IO
    • DAS Storage
    • Hypervisor CPU Utilization
    • Hypervisor Memory Utilization
    • IO
    • IO Cache Hit Ratio
    • SSD Storage
    • Storage Utilization
  • Thresholds:
    • 90 Percent Storage
    • 95 Percent Storage
    • 95 Percent hypervisor cpu
    • 95 Percent hypervisor memory
    • 98 Percent Disk IO

NutanixVM/NutanixCVM

Nutanix CVMs and VMs have a very similar structure and we cover them together although they are completely distinct components.

  • Description: Virtual Machines and Controller Virtual Machines
  • Attributes: cluster_uuid, host_uuid, ipAddresses, mac_addresses, memoryCapacityInBytes, network_uuids, nonNdfsDetails, num_vcpus, vdisk_uuids, vm_uuid
  • Relationships: nutanixCluster, nutanixVdisk
  • Datapoints:
    • stats:
      • guest.memory_usage_pct
      • hypervisor_cpu_usage_pct
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • vm:
      • powerState
  • Graphs:
    • CPU Utilization
    • IO
    • Memory Utilization
  • Thresholds:
    • 98 percent guest memory

Hard Disks (NutanixHardDisk)

  • Description: Physical hard disks used for VM storage
  • Attributes: cluster_uuid, disk_uuid, host_uuid, location, model, serial_number, size, storage_tier_name
  • Relationships: nutanixHost, nutanixStoragePool
  • Datapoints:
    • disk:
      • disk_status
      • online
    • stats:
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • usagestats:
      • storage.capacity_bytes
      • storage.free_bytes
      • storage.usage_pct
  • Graphs:
    • IO
    • Storage Utilization
  • Thresholds:
    • 90 Percent Storage
    • 95 Percent Storage

Storage Pools (NutanixStoragePool)

  • Description: The Nutanix logical storage objects
  • Attributes: cluster_uuid, disk_uuids, free_bytes, size, storagepool_uuid, used_bytes
  • Relationships: nutanixContainers, nutanixHardDisks
  • Datapoints:
    • stats:
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • usagestats:
      • storage.capacity_bytes
      • storage.free_bytes
      • storage.usage_pct
      • storage_tier.das-sata.capacity_bytes
      • storage_tier.das-sata.free_bytes
      • storage_tier.das-sata.usage_pct
      • storage_tier.ssd.capacity_bytes
      • storage_tier.ssd.free_bytes
      • storage_tier.ssd.usage_pct
  • Graphs:
    • DAS Storage
    • IO
    • SSD Storage
    • Storage Utilization
  • Thresholds:
    • 90 Percent Storage
    • 95 Percent Storage

Nutanix Storage Containers (NutanixContainer)

  • Description: Storage containers sub-divide Nutanix storage pools.
  • Attributes: cluster_uuid, compressionEnabled, container_uuid, erasureCode, free_bytes, replicationFactor, size, storagepool_uuid, used_bytes
  • Relationships: nutanixStoragePool, nutanixVdisks
  • Datapoints:
    • stats:
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
    • usagestats:
      • storage.capacity_bytes
      • storage.free_bytes
      • storage.usage_pct
      • storage_tier.das-sata.usage_pct
      • storage_tier.ssd.usage_pct
  • Graphs:
    • DAS Usage
    • IO
    • SSD Usage
    • Storage Utilization
  • Thresholds
    • 90 Percent Storage
    • 95 Percent Storage

Nutanix Virtual Disks (NutanixVdisk)

  • Description: Virtual disks existing inside a NutanixContainer.
  • Attributes: attached_vm_uuid, cluster_uuid, size, storage_container_uuid, vdisk_uuid
  • Relationships: nutanixCVM, nutanixCluster, nutanixContainer, nutanixVM
  • Datapoints:
    • stats:
      • random_io_pct
      • read_io_pct
      • seq_io_pct
      • write_io_pct
  • Graphs: IO

Usage

You must expose the Nutanix V1 and V2 APIs on your Prism system. Once you have the username and password, you can enter the device in Zenoss as follows:

  • Go to Infrastructure Tab
  • From the Add Device pull-down, select Add Nutanix Device
    • Enter the hostname or IP address
    • Enter the username
    • Enter the password
    • Select the correct collector
    • Finally, click on Add
  • After modeling is complete you should see your device components
  • If modeling large numbers of components you may have to increase zCollectorClientTimeout well beyond 600 to avoid model timeout.

Nutanix Batch Configuration

You can also add your devices in batch for convenience and automation.

  • Attach to the Zope container:

    serviced service attach zope
  • Create a text file (filename: /tmp/batch.txt) as follows:

    /Devices/Nutanix
    nutanix64 setManageIp='10.1.1.7', \
       zNutanixUsername='username', \
       zNutanixPassword='password'
  • Now run the zenbatchload command:

    zenbatchload  /tmp/batch.txt
  • The device should now load and model automatically

Installed Items

Installing this ZenPack will add the following items to your Zenoss system:

Configuration and zProperties

The zProperties and default settings are as follows:

  • zNutanixAlertsInterval: Interval to collect alerts; default 60 seconds
  • zNutanixEventsInterval: Interval to collect events; default 60 seconds
  • zNutanixPerfInterval: Interval to collect metric data; default 300 seconds
  • zNutanixUsername: API username
  • zNutanixPassword: API password
  • zNutanixPort: API port; default 9440
  • zNutanixUseSSL: API SSL boolean; default True

Modeler Plugins

  • zenoss.Nutanix

Zenoss Analytics

This ZenPack provides additional support for Zenoss Analytics. Perform the following steps to install extra reporting resources into Zenoss Analytics after installing the ZenPack.

  1. Copy analytics-bundle.zip from $ZENHOME/ZenPacks/ZenPacks.zenoss.Nutanix*/ZenPacks/zenoss/Nutanix/analytics/ on your Zenoss server.
  2. Navigate to Zenoss Analytics in your browser.
  3. Login as superuser.
  4. Remove any existing Nutanix_ZenPack folder.

    1. Choose Repository from the View menu at the top of the page.
    2. Expand Public in the list of folders.
    3. Right-click on Nutanix_ZenPack folder and choose Delete.
    4. Confirm deletion by clicking OK.
  5. Add the new Nutanix_ZenPack folder.

    1. Choose Server Settings from the ''Manage' menu at the top of the page.
    2. Choose Import in the left page.
    3. Remove checks from all check boxes.
    4. Click Choose File to import a data file.
    5. Choose the analytics-bundle.zip file copied from your Zenoss server.
    6. Click Import.

You can now navigate back to the Nutanix_ZenPack folder in the repository to see the following resources added by the bundle.

Domains

  • Nutanix Domain

Domains can be used to create ad hoc views using the following steps.

  1. Choose Ad Hoc View from the Create menu.
  2. Click Domains at the top of the data chooser dialog.
  3. Expand Public then Nutanix ZenPack.
  4. Choose the Nutanix Domain domain

Service Impact and Root Cause Analysis

When combined with the Zenoss Service Dynamics product, this ZenPack adds built-in service impact and root cause analysis capabilities. The service impact relationships shown in the diagram (right) and described below are automatically added and maintained. These will be included in any services that contain one or more of the explicitly mentioned components.

The following objects types would typically be added to Impact services.

  • NutanixVM
  • Linux or Windows devices associated with a NutanixVM
Impact Relationship Diagram

Impact Relationship Diagram

Internal Impact Relationships between Nutanix Components

  • NutanixEndpoint: impacts all NutanixHosts.
  • NutanixCluster: impacts NutanixVMs, NutanixStoragePools
  • NutanixHost: impacts NutanixCVMs
  • NutanixCVM: impacts NutanixCluster
  • NutanixHardDisk: impacts NutanixStoragePool
  • NutanixStoragePool: impacts NutanixContainers
  • NutanixContainers: impacts NutanixVdisks
  • NutanixVdisks: impacts NutanixVM

Internal Impact Relationships between Nutanix Components

  • NutanixVM: impacts: GuestDevice (the hosted Linux or Windows system)
Impact View Diagram

Impact View Diagram

Changes

1.0.1

  • Add debug info for modeler (ZPS-2310)
  • Guard for missing disk hw info (ZPS-2311)
  • Extend zCollectorClientTimeout to 600, optimize modeling (ZPS-2316, ZPS-2430)
  • Tested with Zenoss Resource Manager 5.3.2 & 6.0.0 and Service Impact 5.2.2

1.0.0

  • Initial Release
  • Tested with Zenoss Resource Manager 5.2.6 & 5.3.1, Service Impact 5.1.7, Analytics 5.0.8
Commercial

This ZenPack is developed and supported by Zenoss Inc. Commercial ZenPacks are available to Zenoss commercial customers only. Contact Zenoss to request more information regarding this or any other ZenPacks. Click here to view all available Zenoss Commercial ZenPacks.