NetApp cluster is a storage disk array operating system.

Supported versions

  • ONTAP API cluster-mode APIs
  • NetApp Cluster version 8.2.2

Prerequisites

Transport Layer Security (TLS) must be enabled on the NetApp Cluster.

To check the TLS status:

SSH username@hostname
system services web show

If TLS is not enabled: tls.enable on

Example output:

External Web Services: true
               Status: online
   HTTP Protocol Port: 80
  HTTPS Protocol Port: 443
        TLSv1 Enabled: true
        SSLv3 Enabled: true
        SSLv2 Enabled: true

OpsRamp configuration

Step 1: Create a credential

  1. From All Clients, choose a client.
  2. Go to Setup > Accounts > Clients.
  3. In the client’s Credentials tab, add the credential information. Credential settings include:
    • Type: NetAppCluster

    • Use Password Vault: If enabled, specify Policy Mapping, otherwise, enter a password.

      • Policy mapping enables a Password Manager application integration with credentials.
      • Password is the authentication password to access a resource.
    • Port:

      • For HTTP, use port 80.
      • For HTTPS, select Is Secure and use port 443.

Step 2: Install and configure the integration

  1. From All Clients, choose a client.

  2. Go to Setup > Integrations > Integrations.

  3. From Available Integrations, select Storage > NetApp Cluster and click Install.

  4. Enter the following:

    • Name
    • IP address
    • Credentials. Select an existing credential or create a new credential.
  5. Click Save.

Step 3: Add a discovery profile

  1. From the Discovery Profiles tab, click + Add.
  2. From the Add Discovery Profile window, enter:
    • Profile Name: Discovery profile name.
    • Select Profile: Choose a management profile.
    • IP Address: NetApp Cluster IP address.
  3. From the Filter Criteria section, filter for resources using one of the following:
    • Smart Filters: Filter resources based on the resource type.
    • Resource Filters: Filter resources based on resource attributes.
      • Select matching criteria to match Any or All rules.
      • Filter for resources using the following attributes: resource type, attribute name, logical operator, and value.
        Use regular expressions to filter resources using logical operator regex.
  4. From the Perform Actions section, choose Manage Device to set the resources as managed.
  5. From the Discovery Schedule section, select Recurrence Pattern to add one of the following:
    • Hourly
    • Daily
    • Weekly
    • Monthly
  6. Click Save.
  7. From the Discovery Profiles section, click Scan Now for the associated profile.

Step 4: View the NetApp Cluster infrastructure details

NetApp Cluster appears in the Infrastructure > Storage > NetApp Cluster category. Click the name to view details. Monitoring is enabled according to the configured metric criteria.

Netapp Cluster Infrastructure

Step 5: Assign the monitoring template

To assign monitoring templates to NetApp Cluster, see Assigning Templates. For more information on NetApp Cluster templates, see NetApp Cluster.

Step 6: View resource metrics

To confirm NetApp Cluster monitoring, review the following:

  • Metric graphs: A graph is plotted for each metric that is enabled in the configuration.
  • Alerts: Alerts are generated for metrics that are configured as defined for integration.
NetApp Cluster Metric Graph

Supported metrics

OpsRamp MetricMetric Display NameUnitDescription
MetricsMetric NameUnitDescription
aggregate.total_transfersnetapp.cluster.aggregate.total_transfersPER_SECTotal number of disk operations serviced by the aggregate
aggregate.user_readsnetapp.cluster.aggregate.user_readsPER_SECNumber of user read operations performed by the aggregate
aggregate.user_writesnetapp.cluster.aggregate.user_writesPER_SECNumber of user write operations performed by the aggregate
aggregate.cp_readsnetapp.cluster.aggregate.cp_readsPER_SECNumber of read operations to the aggregate during consistency-point processing
aggregate.user_read_blocksnetapp.cluster.aggregate.user_read_blocksPER_SECNumber of blocks transferred for user read operations
aggregate.user_write_blocksnetapp.cluster.aggregate.user_write_blocksPER_SECNumber of blocks transferred for user write operations
aggregate.cp_read_blocksnetapp.cluster.aggregate.cp_read_blocksPER_SECNumber of blocks transferred for consistency-point read operations
disk.total_transfersnetapp.cluster.disk.total_transfersPER_SECTotal number of disk operations performed by the aggregate
disk.user_readsnetapp.cluster.disk.user_readsPER_SECNumber of user read operations performed by the aggregate
disk.user_writesnetapp.cluster.disk.user_writesPER_SECNumber of user write operations performed by the aggregate
disk.cp_readsnetapp.cluster.disk.cp_readsPER_SECNumber of read operations to the aggregate during consistency point processing
disk.guarenteed_read_blocksnetapp.cluster.disk.guarenteed_read_blocksPER_SECNumber of blocks transferred for guaranteed read operations per second
disk.guarenteed_write_blocksnetapp.cluster.disk.guarenteed_write_blocksPER_SECNumber of blocks transferred for guaranteed write operations per second
disk.user_read_blocksnetapp.cluster.disk.user_read_blocksPER_SECNumber of blocks transferred for user read operations
disk.user_write_blocksnetapp.cluster.disk.user_write_blocksPER_SECNumber of blocks transferred for user write operations
disk.cp_read_blocksnetapp.cluster.disk.cp_read_blocksPER_SECNumber of blocks transferred for consistency-point read operations
ifnet.recv_packetsnetapp.cluster.ifnet.recv_packetsPER_SECPackets received per second
ifnet.recv_errorsnetapp.cluster.ifnet.recv_errorsPER_SECErrors per second while receiving packets
ifnet.send_packetsnetapp.cluster.ifnet.send_packetsPER_SECPackets sent per second
ifnet.send_errorsnetapp.cluster.ifnet.send_errorsPER_SECErrors per second while sending packets
ifnet.collisionsnetapp.cluster.ifnet.collisionsPER_SECCollisions per second on CSMA interfaces
ifnet.recv_datanetapp.cluster.ifnet.recv_dataB_PER_SECTotal bytes received per second
ifnet.send_datanetapp.cluster.ifnet.send_dataB_PER_SECTotal bytes sent per second
ifnet.recv_mcastsnetapp.cluster.ifnet.recv_mcastsPER_SECPackets received per second through multicast
ifnet.send_mcastsnetapp.cluster.ifnet.send_mcastsPER_SECPackets sent per second through multicast
lun.read_opsnetapp.cluster.lun.read_opsPER_SECRead operations per second
lun.write_opsnetapp.cluster.lun.write_opsPER_SECWrite operations per second
lun.other_opsnetapp.cluster.lun.other_opsPER_SECOther operations per second
lun.read_datanetapp.cluster.lun.read_dataB_PER_SECRead bytes per second
lun.write_datanetapp.cluster.lun.write_dataB_PER_SECWrite bytes per second
lun.total_opsnetapp.cluster.lun.total_opsPER_SECTotal number of operations on the LUN
lun.queuefullnetapp.cluster.lun.queuefullPER_SECQueue full responses per second
system.net_data_recvnetapp.cluster.system.net_data_recvKB_PER_SECNetwork KB received per second
system.net_data_sentnetapp.cluster.system.net_data_sentKB_PER_SECNetwork KB sent per second
system.disk_data_readnetapp.cluster.system.disk_data_readKB_PER_SECDisk KB read per second
system.disk_data_writtennetapp.cluster.system.disk_data_writtenKB_PER_SECDisk KB written per second
system.total_opsnetapp.cluster.system.total_opsPER_SECTotal operations per second
system.read_opsnetapp.cluster.system.read_opsPER_SECRead operations per second
system.write_opsnetapp.cluster.system.write_opsPER_SECWrite operations per second
system.cifs_opsnetapp.cluster.system.cifs_opsPER_SECCIFS operations per second
system.fcp_opsnetapp.cluster.system.fcp_opsPER_SECFCP operations per second
system.http_opsnetapp.cluster.system.http_opsPER_SECHTTP operations per second
system.iscsi_opsnetapp.cluster.system.iscsi_opsPER_SECiSCSI operations per second
system.nfs_opsnetapp.cluster.system.nfs_opsPER_SECNFS operations per second
volume.total_opsnetapp.cluster.volume.total_opsPER_SECNumber of operations performed by the volume
volume.read_opsnetapp.cluster.volume.read_opsPER_SECNumber of reads to the volume
volume.read_datanetapp.cluster.volume.read_dataB_PER_SECBytes read from the volume
volume.write_datanetapp.cluster.volume.write_dataB_PER_SECBytes written to the volume
volume.other_opsnetapp.cluster.volume.other_opsPER_SECNumber of other operations to the volume
volume.write_opsnetapp.cluster.volume.write_opsPER_SECNumber of writes to the volume
volume.nfs_read_opsnetapp.cluster.volume.nfs_read_opsPER_SECNumber of NFS reads to the volume
volume.nfs_write_opsnetapp.cluster.volume.nfs_write_opsPER_SECNumber of NFS writes to the volume
volume.nfs_other_opsnetapp.cluster.volume.nfs_other_opsPER_SECNumber of other NFS operations to the volume
volume.cifs_read_opsnetapp.cluster.volume.cifs_read_opsPER_SECNumber of CIFS reads to the volume
volume.cifs_write_opsnetapp.cluster.volume.cifs_write_opsPER_SECNumber of CIFS writes to the volume
volume.cifs_other_opsnetapp.cluster.volume.cifs_other_opsPER_SECNumber of other CIFS operations to the volume
volume.san_read_opsnetapp.cluster.volume.san_read_opsPER_SECNumber of block protocol reads to the volume
volume.san_write_opsnetapp.cluster.volume.san_write_opsPER_SECNumber of block protocol writes to the volume
volume.san_other_opsnetapp.cluster.volume.san_other_opsPER_SECNumber of other block protocol operations to the volume
volume.flexcache_other_opsnetapp.cluster.volume.flexcache_other_opsPER_SECNumber of other FlexCache operations to the volume
volume.flexcache_read_opsnetapp.cluster.volume.flexcache_read_opsPER_SECNumber of FlexCache read operations from the volume
volume.flexcache_write_opsnetapp.cluster.volume.flexcache_write_opsPER_SECNumber of FlexCache write operations to the volume
volume:vserver.other_ops netapp.cluster.volume:vserver.other_opsPER_SECNumber of other operations to the volume at the Vserver level
volume:vserver.read_datanetapp.cluster.volume:vserver.read_dataB_PER_SECBytes read from the volume at the Vserver level
volume:vserver.read_opsnetapp.cluster.volume:vserver.read_opsPER_SECNumber of reads to the volume, at the Vserver level
volume:vserver.total_opsnetapp.cluster.volume:vserver.total_opsPER_SECNumber of operations performed by the volume at the Vserver level
volume:vserver.write_datanetapp.cluster.volume:vserver.write_dataB_PER_SECBytes written to the volume, at the Vserver level
volume:vserver.write_opsnetapp.cluster.volume:vserver.write_opsPER_SECNumber of writes to the volume, at the Vserver level
volume:node.other_opsnetapp.cluster.volume:node.other_opsPER_SECNumber of other operations to the volume at the Vserver level
volume:node.read_datanetapp.cluster.volume:node.read_dataB_PER_SECBytes read from the volume, at the Vserver level
volume:node.read_opsnetapp.cluster.volume:node.read_opsPER_SECNumber of reads to the volume, at the Vserver level
volume:node.total_opsnetapp.cluster.volume:node.total_opsPER_SECNumber of operations performed by the volume, at the Vserver level
volume:node.write_datanetapp.cluster.volume:node.write_dataB_PER_SECBytes written to the volume, at the Vserver level
volume:node.write_opsnetapp.cluster.volume:node.write_opsPER_SECNumber of writes to the volume, at the Vserver level
volume:node.avg_latencynetapp.cluster.volume:node.avg_latencyUSECSAverage latency in microseconds for the WAFL file system to process all the operations on the volume
volume:node.cifs_other_latencynetapp.cluster.volume:node.cifs_other_latencyUSECSAverage time for the WAFL file system to process other CIFS operations to the volume
volume:node.cifs_other_opsnetapp.cluster.volume:node.cifs_other_opsPER_SECNumber of other CIFS operations to the volume
volume:node.cifs_read_latencynetapp.cluster.volume:node.cifs_read_latencyUSECSAverage time for the WAFL file system to process CIFS read requests to the volume
volume:node.cifs_read_opsnetapp.cluster.volume:node.cifs_read_opsPER_SECNumber of CIFS reads to the volume
volume:node.cifs_write_latencynetapp.cluster.volume:node.cifs_write_latencyUSECSAverage time for the WAFL file system to process CIFS write requests to the volume
volume:node.cifs_write_opsnetapp.cluster.volume:node.cifs_write_opsPER_SECNumber of CIFS writes to the volume
volume:node.flexcache_other_opsnetapp.cluster.volume:node.flexcache_other_opsPER_SECNumber of other FlexCache operations to the volume
volume:node.flexcache_read_opsnetapp.cluster.volume:node.flexcache_read_opsPER_SECNumber of FlexCache read operations from the volume
volume:node.flexcache_write_opsnetapp.cluster.volume:node.flexcache_write_opsPER_SECNumber of FlexCache write operations to the volume
volume:node.nfs_other_latencynetapp.cluster.volume:node.nfs_other_latencyUSECSAverage time for the WAFL file system to process other NFS operations to the volume
volume:node.nfs_other_opsnetapp.cluster.volume:node.nfs_other_opsPER_SECNumber of other NFS operations to the volume
volume:node.nfs_read_latencynetapp.cluster.volume:node.nfs_read_latencyUSECSAverage time for the WAFL file system to process NFS protocol read requests to the volume
volume:node.nfs_read_opsnetapp.cluster.volume:node.nfs_read_opsPER_SECNumber of NFS reads to the volume
volume:node.nfs_write_latencynetapp.cluster.volume:node.nfs_write_latencyUSECSAverage time for the WAFL file system to process NFS protocol write requests to the volume
volume:node.nfs_write_opsnetapp.cluster.volume:node.nfs_write_opsPER_SECNumber of NFS writes to the volume
volume:node.other_latencynetapp.cluster.volume:node.other_latencyUSECSAverage latency in microseconds for the WAFL file system to process other operations to the volume
volume:node.read_latencynetapp.cluster.volume:node.read_latencyUSECSAverage latency in microseconds for the WAFL file system to process read request to the volume
volume:node.san_other_latencynetapp.cluster.volume:node.san_other_latencyUSECSAverage time for the WAFL file system to process other block protocol requests to the volume
volume:node.san_other_opsnetapp.cluster.volume:node.san_other_opsPER_SECNumber of other block protocol operations to the volume
volume:node.san_read_latencynetapp.cluster.volume:node.san_read_latencyUSECSAverage time for the WAFL file system to process block protocol read requests to the volume
volume:node.san_read_opsnetapp.cluster.volume:node.san_read_opsPER_SECNumber of block protocol reads to the volume
volume:node.san_write_latencynetapp.cluster.volume:node.san_write_latencyUSECSAverage time for the WAFL file system to process block protocol write requests to the volume
volume:node.san_write_opsnetapp.cluster.volume:node.san_write_opsPER_SECNumber of block protocol writes to the volume
volume:node.write_latencynetapp.cluster.volume:node.write_latencyUSECSAverage latency in microseconds for the WAFL file system to process write request to the volume
raid.tetris_writtennetapp.cluster.raid.tetris_writtenPER_SECTetrises written per second
raid.stripes_writtennetapp.cluster.raid.stripes_writtenPER_SECStripes written per second
raid.partial_stripesnetapp.cluster.raid.partial_stripesPER_SECPartial stripes written per second
raid.full_stripesnetapp.cluster.raid.full_stripesPER_SECFull stripes written per second
raid.blocks_writtennetapp.cluster.raid.blocks_writtenPER_SECBlocks written per second
raid.blocks_readnetapp.cluster.raid.blocks_readPER_SECBlocks read per second
nfsv3.nfsv3_opsnetapp.cluster.nfsv3.nfsv3_opsPER_SECTotal number of NFSv3 operations
nfsv3.nfsv3_read_opsnetapp.cluster.nfsv3.nfsv3_read_opsPER_SECTotal NFSv3 read operations
nfsv3.nfsv3_write_opsnetapp.cluster.nfsv3.nfsv3_write_opsPER_SECTotal NFSv3 write operations
aggregate.raid-status                                           netapp.cluster.aggregate.raid-statusTextRAID status. Possible values: normal, verifying, SnapMirrored, copying, ironing, mirrored, resyncing, mirror degraded, invalid, needs check, initializing, growing, partial, noparity, degraded, reconstruct, out-of-date, foreign, raid4, raid0, raid_dp, mixed_raid_type. These values may appear by themselves or in combination separated by commas (e.g., "reconstruct,growing"). An aggregate could be of only one of the following RAID types:
aggregate.statenetapp.cluster.aggregate.stateTextAggregate state. The possible values: "creating", "destroying", "failed", "frozen", "inconsistent", "iron_restricted", "mounting", "offline", "online", "partial", "quiesced", "quiescing", "restricted", "reverted", "unknown", "unmounted", "unmounting".
aggregate.percent-used-capacitynetapp.cluster.aggregate.percent-used-capacityPercentageThe percentage of disk space currently in use on the referenced file system.
aggregate.size-availablenetapp.cluster.aggregate.size-availableBytesNumber of bytes still available in the referenced file system. If the referenced file system is restricted or offline, a value of 0 is returned.
aggregate.size-totalnetapp.cluster.aggregate.size-totalBytesTotal size (in bytes) of the referenced file system. If the referenced file system is restricted or offline, a value 0 is returned.
aggregate.size-usednetapp.cluster.aggregate.size-usedBytesNumber of bytes used in the referenced file system. If the referenced file system is restricted or offline, a value of 0 is returned.
cf.node-statenetapp.cluster.cf.node-stateTextState of the storage failover of the node. Refer API for possible values.
cf.statenetapp.cluster.cf.stateTextIf state equals "takeover_failed", this is the reason for the takeover failure.
diagnosis.statusnetapp.cluster.diagnosis.statusTextOverall system health (ok,ok-with-suppressed,degraded,unreachable) as determined by the diagnosis framework. Attributes: non-creatable, non-modifiable
storage-disk.is-offlinenetapp.cluster.storage-disk.is-offlineTrue/FalseTrue if disk is offline. Omitted if excluded by 'desired-attributes'.
storage-disk.is-prefailednetapp.cluster.storage-disk.is-prefailedTrue/FalseTrue if the admin issued a 'disk fail' or if the the system marked this disk for Rapid RAID Recovery. This flag is expected to remain set until the system has copied the contents of this disk to a system-selected replacement disk. At that point, this disk is expected to be removed from service and placed in in the broken pool. Omitted if excluded by 'desired-attributes'.
storage-disk.is-replacingnetapp.cluster.storage-disk.is-replacingTrue/FalseTrue if the admin issued 'disk replace' to replace this disk with a specified replacement disk. This flag is expected to remain true until the system has copied the contents of this disk to the admin-specified replacement disk. At that point this disk is expected to be released to the spare pool. Omitted if excluded by 'desired-attributes'.
storage-disk.is-zeroednetapp.cluster.storage-disk.is-zeroedTrue/FalseTrue if disk is in pre-zeroed state. Omitted if excluded by 'desired-attributes'.
storage-disk.bytes-per-sectornetapp.cluster.storage-disk.bytes-per-sectorBytesNumber of bytes per disk sector. A sector count element, such as 'capacity-sectors' and 'right-size-sectors', may be multiplied by this value to convert to a byte count. Omitted if excluded by 'desired-attributes'.
storage-disk.capacity-sectorsnetapp.cluster.storage-disk.capacity-sectorsBytesTotal number of disk sectors on this disk, given in units of 'bytes-per-sector'. Omitted if excluded by 'desired-attributes'.
storage-disk.right-size-sectorsnetapp.cluster.storage-disk.right-size-sectorsBytesNumber of usable disk sectors that remain after subtracting the right-size adjustment for this disk. Given in units of 'bytes-per-sector'. Omitted if information is unavailable, or if excluded by 'desired-attributes'.
lun.onlinenetapp.cluster.lun.onlineTrue/FalseState of the LUN, ("online" or "offline"). "true" if online, "false" otherwise.
lun.sizenetapp.cluster.lun.sizeBytesSize of this LUN in bytes in the active FS. This field is unavailable while the LUN is fenced for a restore operation.
lun.size-usednetapp.cluster.lun.size-usedBytesNumber of bytes used by this LUN. This field is unavailable while the LUN is fenced for a restore operation.
qtree.statusnetapp.cluster.qtree.statusTextStatus of the qtree. Possible values include: "snapvaulted", "snapmirrored", "normal", and "readonly".
snapmirror.mirror-statenetapp.cluster.snapmirror.mirror-stateTextSpecifies the mirror state of the SnapMirror relationship. Possible values are:
volume.statenetapp.cluster.volume.stateTextState of the volume. Possible values: "offline", "online", "restricted" and "unknown" for both flexible and traditional volumes, and "creating", "failed", and "partial" specifically for traditional volumes.
volume.sizenetapp.cluster.volume.sizeBytesFilesystem size (in bytes) of the volume. This is the total usable size of the volume, not including WAFL reserve.
volume.size-availablenetapp.cluster.volume.size-availableBytesThe size (in bytes) that is still available in the volume. This field is valid only when the volume is online.
volume.size-usednetapp.cluster.volume.size-usedBytesThe size (in bytes) that is used in the volume. This field is valid only when the volume is online.
volume.percentage-size-usednetapp.cluster.volume.percentage-size-usedPercentagePercentage of the volume size that is used. This field is valid only when the volume is online.
volume.snapshot-reserve-sizenetapp.cluster.volume.snapshot-reserve-sizeBytesThe size (in bytes) in the volume that has been set aside as reserve for snapshot usage.
volume.size-available-for-snapshotsnetapp.cluster.volume.size-available-for-snapshotsBytesTotal free space (in bytes) available in the volume and the snapshot reserve.
system.size-totalnetapp.cluster.system.size-totalBytesSystem total size
system.size-usednetapp.cluster.system.size-usedBytesSystem used size
system.utilizationnetapp.cluster.system.utilizationPercentageSystem Utilization
vserver.statenetapp.cluster.vserver.stateTextState of the Vserver. This field represents the data serving ability of a Vserver,
cluster-peer.is-cluster-healthynetapp.cluster.cluster-peer.is-cluster-healthyTrue/FalseThe status of peer cluster health. Attributes: non-creatable, non-modifiable
system.is-node-healthynetapp.cluster.system.is-node-healthyTrue/FalseThis parameter is used to determine health of a node in a cluster. A boolean value
net.administrative-statusnetapp.cluster.net.administrative-statusTextSpecifies the administrative status of the LIF. Possible values: 'up', 'down', 'unknown'
netapp.cluster.aggregate.snapshot-reserved-percentageNetapp Cluster Aggregate Snapshot Reserved PercentagePercentagespace reserved for aggregate Snapshot copies in the aggregate
netapp.cluster.aggregate.aggr-over-commitmentNetapp Cluster Aggregate Aggr Over CommitmentPercentageAn over-committed aggregate is one in which the total space allocated to volumes exceeds that of what is allowable by the containing aggregate
netapp.cluster.volume.percentage-snapshots-reservedNetapp Cluster Volume Percentage Snapshots ReservedPercentagespace reserved for volume Snapshot copies in the volume
netapp.cluster.volume.spacefull-threshold-percentageNetapp Cluster Volume Spacefull Threshold PercentagePercentageSpecifies the percentage at which a volume is considered full.
netapp.cluster.volume.volume-snapshot-countNetapp Cluster Volume Volume Snapshot CountCountSpecifies the number of snapshots in the volume
netapp.cluster.volume.grow-threshold-percentageNetapp Cluster Volume Grow Threshold PercentagePercentageSpecifies the percentage at which a volume's growth rate is considered to be normal before the system generates a Volume Growth Rate Abnormal event
netapp.cluster.volume.over-dedupplicationNetapp Cluster Volume Over DedupplicationNo unitsOver deduplication is the effective deduplication-enabled storage of more logical bytes of data in a volume container than are actually allotted to that container
netapp.cluster.volume.tooold-snapshotNetapp Cluster Volume Too Old SnapshotsecondsSpecifies about the snapshots created before 52weeks
netapp.cluster.snapmirror.lag-timeNetapp Cluster Snapmirror Lag Timemilli secondsLag time is the amount of time by which the destination system lags behind the source system.