Nagios-Compatible Monitoring Plugins for NetApp ONTAP

A detailed comparison of available plugins for Nagios, Icinga, and compatible monitoring systems.

Solution Type Protocol Language REST API Maintained Ease of Use Alerting / Trending
Check NetAppPRO Commercial ZAPI + REST Go Yes Yes High
NetApp cDOT Nagios Plugins Open Source ZAPI + REST Perl Partial Yes Medium
Nagios Exchange NetApp Plugins Open Source Mixed Various Varies Varies Low
NetApp SANtricity Plugins Open Source SMI-S / Web Proxy Perl No Partial Medium
Check_netapp3 Open Source SNMP Perl No No Medium

Detailed Solution Overview

Check NetApp PRO

A commercial suite of Nagios-compatible checks for NetApp FAS/AFF systems. Built in Go as a single binary with no external dependencies. Supports the modern RESTful API, making it compatible with ONTAP 9.x through the latest releases. Includes checks for disks, volumes, aggregates, LUNs, SnapMirror, vservers, cluster- and norde-health, shelves, the EMS-log, flexcache connections, single interfaces and -groups, and many more.

NetApp cDOT Nagios Plugins (aleex42)

The most widely used open-source plugin set for NetApp Cluster-Mode (cDOT). Originally ZAPI-only, the repository has added REST API support for some checks. Written in Perl, it requires the NetApp Manageability SDK. Outputs performance data compatible with pnp4nagios and similar graphing tools.

Nagios Exchange Plugins

The Nagios Exchange hosts a variety of community-contributed plugins for both 7-Mode and Cluster-Mode NetApp systems. Quality and maintenance status vary significantly. Includes checks for NFS operations, SnapMirror lag, storage array profiles, and more. Each plugin must be evaluated individually.

NetApp SANtricity Plugins

Specifically designed for NetApp E-Series (SANtricity) storage, not ONTAP. Requires the SANtricity Web Services Proxy. Monitors IOPS, throughput, latency, and physical component status. A niche solution for environments running E-Series hardware.

Check_netapp3

A legacy Perl script that monitors NetApp systems via SNMP. Compatible with older 7-Mode systems but limited in what it can check on modern ONTAP clusters. No longer actively maintained. Consider only for legacy environments where SNMP is the only available protocol.

The Perl Dependency Problem

Many older NetApp plugins are written in Perl and depend on CPAN modules like NetApp::ZAPI, LWP::UserAgent, or Monitoring::Plugin. On modern Linux distributions, installing these often leads to dependency conflicts — especially when the system Perl version differs from what the modules expect.

This “Perl dependency hell” means that a plugin that worked on Debian 10 may require significant effort to get running on Debian 12 or RHEL 9. Solutions compiled as a single binary (like Go-based tools) avoid this problem entirely.

ONTAP REST API — The Future of NetApp Monitoring

Starting with ONTAP 9.6, NetApp introduced a RESTful API as the strategic replacement for the legacy ZAPI (ZEDI). While ZAPI is still available, NetApp has signaled that it will be deprecated in future ONTAP releases.

What this means for monitoring: Plugins that rely exclusively on ZAPI or SNMP will eventually stop working. When evaluating a monitoring solution, check whether it supports the REST API — this is the most reliable indicator of long-term viability.