Skip to main content

NetApp SolidFire (REST)

Description

This connector discovers and collects hardware health metrics for NetApp SolidFire storage systems and communicates directly with the NetApp SolidFire System.

hardware netapp storage

Enterprise Connector

This connector requires the Enterprise edition of MetricsHub.

Target

Typical platform: NetApp SolidFire

Operating system: Storage System

This connector is not available for the local host (it is applicable to remote hosts only).

Prerequisites

Leverages: SolidFire API

Technology and protocols: HTTP

Examples

CLI

metricshub HOSTNAME -t storage -c +NetAppSolidFireREST --https --http-port 443 -u USERNAME

metricshub.yaml

resourceGroups:
<RESOURCE_GROUP>:
resources:
<HOSTNAME-ID>:
attributes:
host.name: <HOSTNAME> # Change with actual host name
host.type: storage
connectors: [ +NetAppSolidFireREST ] # Optional, to load only this connector
protocols:
http:
https: true
port: 443 # or probably something else
username: <USERNAME> # Change with actual credentials
password: <PASSWORD> # Encrypted using metricshub-encrypt

Connector Activation Criteria

The NetApp SolidFire (REST) connector will be automatically activated, and its status will be reported as OK if all the below criteria are met:

  • The HTTP Request below to the managed host succeeds:
    • POST /json-rpc/9.0
    • Request Header: Content-Type:text/plain
    • Request Body: {&quot;method&quot; : &quot;GetClusterInfo&quot;, &quot;id&quot; : &quot;Detection&quot; }
    • The response body contains: {&quot;id&quot;:&quot;Detection&quot; (regex)

Metrics

TypeCollected MetricsSpecific Attributes
cpuhw.cpu.speed.limit{limit_type="max"}
hw.status{hw.type="cpu", state="degraded|failed|ok"}
hw.status{hw.type="cpu", state="present"}
hw.parent.id
hw.parent.type
id
model
name
vendor
disk_controllerhw.status{hw.type="disk_controller", state="degraded|failed|ok"}
hw.status{hw.type="disk_controller", state="present"}
firmware_version
hw.parent.id
hw.parent.type
id
model
name
serial_number
enclosurehw.enclosure.energy
hw.enclosure.power
hw.status{hw.type="enclosure", state="present"}
id
model
name
serial_number
type
vendor
fanhw.fan.speed
hw.fan.speed.limit{limit_type="low.critical"}
hw.fan.speed.limit{limit_type="low.degraded"}
hw.status{hw.type="fan", state="degraded|failed|ok"}
hw.status{hw.type="fan", state="present"}
hw.parent.id
hw.parent.type
id
name
logical_diskhw.logical_disk.limit
hw.status{hw.type="logical_disk", state="degraded|failed|ok"}
hw.parent.id
hw.parent.type
id
name
memoryhw.memory.limit
hw.status{hw.type="memory", state="degraded|failed|ok"}
hw.status{hw.type="memory", state="present"}
hw.parent.id
hw.parent.type
id
name
networkhw.network.bandwidth.limit
hw.network.up
hw.status{hw.type="network", state="degraded|failed|ok"}
hw.status{hw.type="network", state="present"}
hw.parent.id
hw.parent.type
id
logical_address
logical_address_type
model
name
physical_address
physical_address_type
physical_diskhw.physical_disk.size
hw.status{hw.type="physical_disk", state="degraded|failed|ok"}
hw.status{hw.type="physical_disk", state="present"}
hw.parent.id
hw.parent.type
id
info
model
name
serial_number
vendor
power_supplyhw.status{hw.type="power_supply", state="degraded|failed|ok"}
hw.status{hw.type="power_supply", state="present"}
hw.parent.id
hw.parent.type
id
name
temperaturehw.status{hw.type="temperature", state="degraded|failed|ok"}
hw.status{hw.type="temperature", state="present"}
hw.temperature
hw.temperature.limit{limit_type="high.critical"}
hw.temperature.limit{limit_type="high.degraded"}
hw.parent.id
hw.parent.type
id
name
voltagehw.status{hw.type="voltage", state="degraded|failed|ok"}
hw.status{hw.type="voltage", state="present"}
hw.voltage
hw.voltage.limit{limit_type="high.critical"}
hw.voltage.limit{limit_type="low.critical"}
hw.parent.id
hw.parent.type
id
name