ZenPack:NetApp Monitor

From Zenoss Wiki
This is the approved revision of this page, as well as being the most recent.
Jump to: navigation, search


Note: This ZenPack is available in commercial versions of Zenoss. Click here to request more information about this commercial ZenPack. Click here to see all commercial ZenPacks.

Organization
Zenoss, Inc.
ZenPack name
ZenPacks.zenoss.NetAppMonitor

Devices Monitored:

Applications Monitored: 



NetApp Monitor ZenPack

NetAppMonitor provides additional modeling and monitoring for NetApp devices. NFS, CIFS and HTTP opera- tions per second are collected, as well as file system and snapshot utilization information.

Warning

The ZenPack Catalog has moved to its new home at https://www.zenoss.com/product/zenpacks as of January 17, 2017. The following information may be out of date, and this page will eventually be removed.

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 3.4.2- Download
Released on 2016/11/28
Requires StorageBase ZenPack,PythonCollector ZenPack,CalculatedPerformance ZenPack
Compatible with Zenoss Resource Manager 4.2.x, Zenoss Resource Manager 5.0.x, Zenoss Resource Manager 5.1.x
Version 3.3.1- Download
Released on 2016/03/14
Requires StorageBase ZenPack,PythonCollector ZenPack,CalculatedPerformance ZenPack
Compatible with Zenoss Resource Manager 4.2.x, Zenoss Resource Manager 5.0.x, Zenoss Resource Manager 5.1.x
Version 3.3.0- Download
Released on 2015/12/11
Requires StorageBase ZenPack,PythonCollector ZenPack,CalculatedPerformance ZenPack
Compatible with Zenoss Resource Manager 4.2.x, Zenoss Resource Manager 5.0.x
Version 3.1.0- Download
Released on 2015/04/27
Requires StorageBase ZenPack,PythonCollector ZenPack
Compatible with Zenoss Resource Manager 4.1.x, Zenoss Resource Manager 4.2.x, Zenoss Resource Manager 5.0.x
Version 3.0.7- Download
Released on 2014/10/10
Requires PythonCollector ZenPack,StorageBase ZenPack
Compatible with Zenoss Resource Manager 4.1.x, Zenoss Resource Manager 4.2.x

Background

NetAppMonitor provides additional modeling and monitoring for NetApp devices. NFS, CIFS and HTTP operations per second are collected, as well as file system and snapshot utilization information. Hardware model and operating system revision asset information is modeled.

The NetApp ZenPack uses reports provided by the StorageBase ZenPack.

Gallery

Features

The features added by this ZenPack can be summarized as follows. They are each detailed further below.

  • Native NetApp ZAPI protocols or SNMP protocols
  • Monitoring of performance component metrics
  • Optional service impact with an addition of Zenoss Service Dynamic product
  • Status monitoring of "vServers", "Volumes", "LUNs", "Hard Disks" and "Disk Shelves" components.

Usage

Prerequisites

Verify that you have the following prerequisites before installing and using this ZenPack.

Zenoss Prerequisites
  • Zenoss >= 4.2
  • ZenPacks.zenoss.StorageBase >= 1.3.2
  • ZenPacks.zenoss.PythonCollector >= 1.0.1
  • ZenPacks.zenoss.CalculatedPerformance

Bulbgraph.png Note: Installing or updating NetApp ZenPack may require the StorageBase ZenPack to be updated too. Each of these will require Zenoss to update the index and may take up to several hours depending on the number of objects related to these ZenPacks.

NetApp Prerequisites
  • OnTAP API 8.0 or higher for ZAPI support.
  • SNMP is provided for older Filers.
  • NetApp user used by Zenoss should be associated with the default "admin" or "root" user group or has at least following access settings:
    • 7-Mode: allowed capabilities for user should include: api-* and login-http-admin
    • C-Mode: login methods should include Application:ontapi, Authentication:password, Role:readonly

Protocols

Place a device in the /Storage/NetApp/7-Mode or /Storage/NetApp/C-Mode Device classes to enable NetApp ZAPI based monitoring of the NetApp Appliance. Placing a device in the /Storage/NetApp/SNMP Device class will enable legacy SNMP monitoring of the NetApp Appliance.

Asset information
  • Hardware Model
  • Operating System Revision
Device metrics
  • 7-Mode Device metrics:
    • CPU Utilization %: Busy
    • Network bits/sec: Sent and Received
    • Operations/sec: NFS, CIFS, ISCSI and HTTP
    • Fibre Channel Traffic bytes: Read and Write
    • iSCSI Traffic bytes: Read and Write
    • CIFS Traffic bytes: Read and Write
    • NFS Cache Traffic bytes: from Clients, from Servers, to Clients, to Servers
    • NFS Cache Operations requests: ejected, hit, missed, total, verified
    • Disk Inventory count: Active, Failed, Prefailed, Spare
    • Disk Maintenance count: Reconstructing, Reconstructing Parity, Scrubbing, Verifying Parity
    • NFSv3 calls/sec: Accesses, Creates, Getattrs, Links, Lookups, Mkdirs, Nulls, ReadDirs, ReadDirPluss, Removes, Renames, Symlinks
    • NFSv3 Common Operations calls/sec: Read and Write
  • C-Mode Device metrics:
    • Disk Inventory count: Active, Failed, Prefailed, Spare
    • Disk Maintenance count: Reconstructing, Reconstructing Parity, Scrubbing, Verifying Parity


7-Mode and C-Mode Zapi monitoring will model
  • Disks
    • Monitoring Templates
      • NetAppHardDisk
    • Data Points
      • disk.base_for_disk_busy
      • disk.cp_read_blocks
      • disk.cp_read_chain
      • disk.cp_read_latency
      • disk.cp_reads
      • disk.disk_busy
      • disk.disk_capacity
      • disk.io_pending
      • disk.io_queued
      • disk.total_transfers
      • disk_busy_pct.disk_busy_pct
    • Thresholds
      • 90 percent disk busy
      • 90 percent disk used
    • Graphs
      • IO (io_pending, io_queued)
      • Transfers (total_transfers)
      • Busy (disk_busy)
      • Capacity (disk_capacity)
  • Volumes
    • Monitoring Templates
      • NetAppVolume
    • Data Points
      • usedBlocks.dskPercent
      • usedBlocks.inodeUsedPercent
      • usedBlocks.sizeUsed
      • volume.asynchronous_frees
    • Thresholds
      • 90 percent used
    • Graphs
      • Usage (dskPercent, inodeUsedPercent)
  • Volume Snapshots
    • Monitoring Templates
      • NetAppVolumeSnapshot
    • Data Points
      • snapshot.cumulative_percentage_of_total_blocks
    • Thresholds
      • None
    • Graphs
      • None
  • Luns
    • Monitoring Templates
      • NetAppLun
    • Data Points
      • lun.avg_latency
      • lun.avg_other_latency
      • lun.avg_read_latency
      • lun.other_ops
      • lun.queue_depth_lun
      • lun.queue_full
      • lun.read_data
      • lun.read_ops
      • lun.read_partial_blocks
      • lun.total_ops
      • lun.write_data
      • lun.write_ops
      • lun.write_partial_blocks
    • Data Points (C-Mode)
      • lun.scsi_abort
      • lun.scsi_good
      • lun.remote_ops
      • lun.remote_bytes
      • lun.queue_full
      • lun.cp_read_blocks
      • lun.wafl_read_errors
      • lun.wafl_write_errors
      • lun.
    • Thresholds
      • None
    • Graphs
      • Bytes Per Cycle (write_data, read_data)
      • Latency (avg_latency, avg_other_latency, avg_read_latency)
      • Operations Per Cycle (other_ops, write_ops, read_ops)
      • Partial Blocks (write_partial_blocks, read_partial_blocks)
  • Plexes
    • Monitoring Templates
      • None
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • Aggregates
    • Monitoring Templates
      • NetAppAggregate
    • Data Points
      • aggregate.user_writes
      • usedBlocks.dskPercent
      • usedBlocks.inodeUsedPercent
      • usedBlocks.sizeUsed
      • usedBlocks.total_reserved_space
    • Data Points (C-Mode)
      • aggregate.aggr_inode_attributes_files_private_used
      • aggregate.aggr_inode_attributes_files_total
      • aggregate.aggr_inode_attributes_files_used
      • aggregate.aggr_inode_attributes_maxfiles_available
      • aggregate.aggr_inode_attributes_maxfiles_used
      • aggregate.aggr_inode_attributes_percent_inode_used_capacity
      • aggregate.aggr_space_attributes_percent_used_capacity
      • aggregate.aggr_space_attributes_size_total
      • aggregate.aggr_space_attributes_size_used
      • aggregate.aggr_space_attributes_total_reserved_space
      • aggregate.flexvol_count
    • Thresholds
      • 90 percent used
    • Graphs
      • Percent Used (inodeUsedPercent, dskPercent)
  • Raid Groups
    • Monitoring Templates
      • None
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • Fibre Channel Adapters
    • Monitoring Templates
      • NetAppFCAdapter
    • Data Points
      • stats.adapter_resets
      • stats.crc_errors
      • stats.discarded_frames
      • stats.frame_overruns
      • stats.frame_underruns
      • stats.initiators_connected
      • stats.invalid_xmit_words
      • stats.link_breaks
      • stats.lip_resets
      • stats.lr_received
      • stats.lr_sent
      • stats.nos_received
      • stats.ols_received
      • stats.protocol_errors
      • stats.queue_depth
      • stats.scsi_requests_dropped
      • stats.spurious_interrupts
      • stats.total_logins
      • stats.total_logouts
    • Thresholds
      • None
    • Graphs
      • Link Recovery (lr_received, lr_sent)
      • Cyclic Redundancy Check (crc_errors)
      • Frame (frame_overruns, frame_underruns)
      • iSCSI Requests (scsi_requests_dropped)
      • Not Operational Sequence (nos_received)
      • Offline Sequence (ols_received)
  • Fibre Channel Initiators
    • Monitoring Templates
      • None
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • Interfaces
    • Monitoring Templates
      • NetAppFCInterface
      • NetApp_ethernetCsmacd
    • Data Points
      • ifNet.ifInErrors
      • ifNet.ifInOctets
      • ifNet.ifInUcastPackets
      • ifNet.ifOutErrors
      • ifNet.ifOutOctets
      • ifNet.ifOutUcastPackets
    • Thresholds
      • High Utilization
    • Graphs
      • Throughput (ifInOctets, ifOutOctets)
      • Packets (ifInUcastPackets, ifOutUcastPackets)
      • Errors (ifInErrors, ifOutErrors)
  • Ports
    • Monitoring Templates
      • None
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • Disk Shelves
    • Monitoring Templates
      • NetAppDiskShelf
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • VServers
    • Monitoring Templates
      • NetAppVServer
    • Data Points
      • None
    • Thresholds
      • None
    • Graphs
      • None
  • QTrees
    • Monitoring Templates
      • NetAppQTree
    • Data Points
      • qtree.nfs_ops
      • qtree.cifs_ops
      • qtree.internal_ops
    • Thresholds
      • None
    • Graphs
      • None
  • System Nodes
    • Monitoring Templates
      • NetAppSystemNode
    • Data Points
      • cifsnode.cifsRead
      • cifsnode.cifsWrites
      • cpuBusyPercent.cpuBusyPercent
      • cpuUtilization.Busy
      • nfsv3node.nfsv3cAccesses
      • nfsv3node.nfsv3cCreates
      • nfsv3node.nfsv3cGetattrs
      • nfsv3node.nfsv3cLinks
      • nfsv3node.nfsv3cLookups
      • nfsv3node.nfsv3cMkdirs
      • nfsv3node.nfsv3cNulls
      • nfsv3node.nfsv3cReadCalls
      • nfsv3node.nfsv3cReadDirs
      • nfsv3node.nfsv3cReaddirPluss
      • nfsv3node.nfsv3cRemoves
      • nfsv3node.nfsv3cRenames
      • nfsv3node.nfsv3cSymlinks
      • nfsv3node.nfsv3cWrites
      • system.CifsOps
      • system.FibreChannelOps
      • system.FibreChannelreadBytes
      • system.FibreChannelwriteBytes
      • system.HttpOps
      • system.MiscNetworkBytesReceived
      • system.MiscNetworkBytesSent
      • system.NfsOps
      • system.cpuBusy
      • system.cpuElapsed
      • system.iSCSIOps
      • system.processorBusyTotal
      • system.sysUpTime
      • systemnode.cpu_busytime
      • systemnode.failed_fan_count
      • systemnode.failed_power_supply_count
      • systemnode.node_uptime
    • Thresholds
      • CPU Utilization
    • Graphs
      • CIFS Reads And Writes (cifsReads, cifsWrites)
      • CPU Utilization (Busy)
      • NFSv3Calls (nfsv3cAccesses, nfsv3cCreates, nfsv3cGetattrs, nfsv3cLinks, nfsv3cLookups, nfsv3cMkdirs, nfsv3cNulls, nfsv3cReadDirs, nfsv3cReaddirPluss, nfsv3cRemoves, nfsv3cRenames, nfsv3cSymlinks)
      • NFSv3 Common Operations (nfsv3cReadCalls, nfsv3cWrites)
      • Network Traffic (MiscNetworkBytesReceived, MiscNetworkBytesSent)
      • Operations (CifsOps, HttpOps, NfsOps, iSCSIOps FibreChannelOps)
      • Fibre Channel Traffic (FibreChannelreadBytes, FibreChannelwriteBytes)
  • File Systems
    • Monitoring Templates
      • FileSystem_Volume
    • Data Points
      • usedBlocks.dskPercent
      • usedBlocks.inodeTotal
      • usedBlocks.inodeUsed
      • usedBlocks.inodeUsedPercent
      • usedBlocks.sizeUsed
    • Thresholds
      • 90 percent used
    • Graphs
      • Utilization (dskPercent)
      • Usage (sizeUsed)
      • Inode Utilization (inodeUsedPercent)
      • Inode Usage (inodeUsed, inodeTotal)
NetApp uses SSH to model NFS clients of file systems. It uses SNMP to model
  • Disks
  • storage enclosures
  • RAID groups
  • Plexes
  • Aggregates
  • Volumes
  • LUNs
  • QTrees
  • Licenses

Configuration

C-Mode/7-Mode
  • zCommandUsername - zProperty to provide user name for NetApp Filer
  • zCommandPassword - zProperty to provide password for NetApp Filer
  • zNetAppSSL - zProperty to provide type of connection to NetApp Filer (true = enabled)
  • zNetAppNumRecordsPerRequest - zProperty to configure a number of records which NetAppMonitor gets per one request during monitoring and modeling


SNMP
  • Configure the SNMP settings to match the NetApp Filer.
  • Configure zCommandUser/zCommandPass for ssh access to gather NFS Client information.
Events (all versions)
  • Configure v1 or v2 traps to be sent to Zenoss Resource Monitor.
  1. Make sure SNMP is enabled: options snmp.enabled on
  2. Add Zenoss hostname or IP address to traphosts: snmp traphost add <hostname|ip address>
  3. Enable SNMP Traps: snmp init 1

For more information see NetApp Support and Commands for managing SNMP.

  • Forward syslog events by logging into the NetApp Device, configure syslog, add the following:
   *.* @yourzenossserver

Replace yourzenossserver with the IP or DNS name of your Zenoss server.

Bulbgraph.png Note: SNMP traps should be enabled for LUN devices to receive events if a LUN goes offline.

  • Hard Disks status warning events are enabled for those cases:
    • Disk is in broken pool;
    • Container is currently unknown;
    • Disk is not supported;

Collecting Additional ZAPI Performance Metrics

Most components are collecting performance metrics from the perf subsection of the ZAPI calls. When modeling we collect the base uuid and store the information as a set of component XPath entries.

In most cases, we need to just add a new datapoint to the existing datasource, and then add the appropriate XPath fragment to retrieve the appropriate data.

Be cautious when enabling new metrics as large numbers of components can significantly increase the number of monitored datapoints being collected.

Linking Linux File System Storage Device with NetApp

If zenpack ZenPacks.zenoss.LinuxMonitor is installed and Linux devices under /Server/SSH/Linux use known NetApp devices as NFS servers, then Storage Device property on Linux Filesystem component will be transformed into link to the appropriate NetApp Filesystem

Service Impact

When combined with the Zenoss Service Dynamics product, this ZenPack adds built-in service impact capability for NetApp devices. The following service impact relationships are automatically added. These will be included in any services that contain one or more of the explicitly mentioned entities.

Service Impact Relationships
  • System Nodes failure affects related Device and Ports (for C-Mode devices)
  • Volume failure affects related Q-Trees, LUNs
  • Aggregates, vServers failure affects related Volumes
  • LUNs failure affects related vServers and File Systems and Interfaces
  • Plexes failure affects related Aggregates
  • RAID Groups failure affects Plexes
  • Hard Disks failure affects related RAID Groups
  • Disk Shelves failure affects Hard Disks
  • File Systems, Interfaces, vServers and LUNs are affected by the associated device
  • File Systems failure affects related external File Systems
  • Interfaces affect related FC initiators
  • Physical Port failure affects related Virtual Port
  • Physical Port failure affects related Port Group
  • Physical or Virtual Port or Interface Group failure affects related Interfaces
  • Netapp filesystem mounted on the Linux device affects Linux filesystem

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 netappmonitor-analytics.zip from $ZENHOME/ZenPacks/ZenPacks.zenoss.NetAppMonitor*/ZenPacks/zenoss/ NetAppMonitor/analytics/ on your Zenoss server.
  2. Navigate to Zenoss Analytics in your browser.
  3. Login as superuser.
  4. Remove any existing NetAppMonitor 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 NetAppMonitor ZenPack folder and choose Delete.
    4. Confirm deletion by clicking OK.
  5. Add the new NetAppMonitor 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 netappmonitor-analytics.zip file copied from your Zenoss server.
    6. Click Import.

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

Domains
  • NetAppMonitor CMode Domain
  • NetAppMonitor SevenMode Domain

For Analytics 4.x 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 NetAppMonitor ZenPack.
  4. Choose the NetAppMonitor Domain domain.
  5. Select CMode Domain or SevenMode Domain and press OK

For Analytics 5.x domains can be used to create Ad Hoc views using the following steps:

  1. Choose Ad Hoc View from the Create menu.
  2. Click on View as Tree button
  3. Expand Public then NetAppMonitor ZenPack.
  4. Choose the NetAppMonitor Domain domain.
  5. Select CMode Domain or SevenMode Domain and press OK


Troubleshooting

Please refer the Zenoss Service Dynamics documentation if you run into any of the following problems:

  • ZenPack will not install
  • Adding a device fails
  • Don't understand how to add a device
  • Don't understand how to model a device

If you cannot find the answer in the documentation, then Resource Manager (Service Dynamics) users should contact Zenoss Customer Support. Core users can use the #zenoss IRC channel or the community.zenoss.org forums.

Device Modeling or Monitoring Failed

Recursion error on a large number of records - to eliminate this error the value of zNetAppNumRecordsPerRequest zProperty can be increased to process more records per one request.


Daemons

The following collection daemons are required to collect NetApp data.

  • zenmodeler (modeling)
  • zenpython (ZAPI performance metrics)
  • zenperfsnmp (legacy SNMP performance metrics)
  • zencommand (legacy command based performance metrics)


Limitations

The current release is known to have the following limitations.

  • Support iSCSI is only for NetApp Cluster Mode v. 8.3 and higher
  • NFS and LUN Clients are excluded from ZAPI
  • Analytics is not supported for NetAppMonitor v. 3.4.0 Zenpack


Changes

3.4.0
  • Add support 9.0(C-Mode) ONTAP API version.
  • Add Port component
  • Add status monitoring for "vServer" and "Disk Shelf" components
  • Fix ZEN-21557 (attribute error during modeling and monitoring)
  • Fix ZEN-22440 (UTF8 monitoring issue)
  • Fix ZEN-18846 (recursion error on a large number of records)
  • Fix issue with negative scale for graphs
  • Fix ZEN-21145 (fails to upgrade earlier version)
  • Fix performance issue during modeling NFS Client components
  • Fix modeling operational status and speed properties for virtual Interface components
3.3.0
  • Fix ZEN-20626 (fixed modeling for interfaces with not full data set)
3.2.0
  • Add Fibre Channel support
3.1.0
  • Fix ZEN-15678 (/Status/Perf/ should be /Status/Perf)
  • Fix ZEN-15558 (Proper formatting of Aggregate Events)
  • Fix ZEN-13476 (Generate Events on Disk Failure)
  • Use iter protocol for performance metrics
  • Fix component templates to specify the proper id
  • Fix inode percentage display
  • Fix volume.asynchronous_frees datapoint
  • Event management for EMS messages on C-Mode Filers
  • Fix bug with incorrect displaying "Physical Storage View"
3.0.6
  • Add status monitoring for "Volumes" and "LUNs" components
  • Add support 8.2(7-Mode, C-Mode) and 8.3(C-Mode) ONTAP API version.

Installation

Normal Installation (packaged egg)

  1. Download the appropriate egg file for the version of Zenoss you are running.
  2. Ensure you are logged in as the zenoss user:
    $ sudo su - zenoss
  3. Install the ZenPack:
    $ zenpack --install ZenPacks.zenoss.NetAppMonitor-*.egg
  4. Restart these services:
    $ zenoss restart


Discuss

Purplemarker.png New: Don't forget to add yourself to the Zenoss User Map!

blog comments powered by Disqus