banshee est en développement actif : les collecteurs vont encore changer, et une version que vous publiez demandera sans doute des ajustements. Pour un usage stable, attendez la version 1.0.0.

Hardware

banshee/hardware-collection/hardware/redfish/https/

storage

The health of each storage controller, drive and volume of a server, failure predictions and SSD wear, by Redfish.

  • hardware
  • server
  • redfish
  • bmc
  • raid
  • drive
  • volume
  • ssd
  • https

par banshee1 installation1 version

v1Dernière

Publiée le 27 octobre 2026. First version.

Storage of a server, by Redfish

Returns, for each storage controller, drive and volume a server's management card serves by Redfish, its health; for a drive, whether it predicts its own failure and, for an SSD, its remaining life. Four watches are offered, each one set on the probe.

Versions

Generic: written for the Storage, Drive and Volume schemas of DMTF Redfish, whose fields read here have kept their form since they appeared (2016–2017). Any management card that serves them: Dell iDRAC, HPE iLO, Supermicro, Lenovo XCC, OpenBMC. Hence the common level.

How it works

The collector reads, the account in Basic, GET https://<host:address>/redfish/v1/Systems, each system it lists, its Storage collection, then each storage resource, each of its Drives, and each member of its Volumes collection.

{"Id": "RAID.Integrated.1-1", "Name": "PERC H755 Front", "Status": {"Health": "OK", "HealthRollup": "Warning"},
 "Drives": [{"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Storage/RAID.Integrated.1-1/Drives/Disk.Bay.0"}],
 "Volumes": {"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Storage/RAID.Integrated.1-1/Volumes"}}
  • A storage resource is a storage subsystem, most often one controller: it is returned with the kind controller; a drive with drive, a volume with volume.
  • Each is named by its Name; when two bear the same name (two drives Disk 0 on two controllers), each is named by its name followed by its Id.
  • health is the resource's own Health, in lower case (ok, warning, critical), unknown when it gives none. Its own, not its HealthRollup: a controller would otherwise raise again for each failed drive under it.
  • failure-predicted reads yes when the drive says it will fail (FailurePredicted, the drive's SMART verdict as the controller reads it), no otherwise; not returned when the card does not say.
  • remaining-life is PredictedMediaLifeLeftPercent, for a drive that estimates it (an SSD).
  • A drive or a volume the card says Absent (an empty bay) is left out.
  • A code 401 or 403 stops the collector misconfigured; any other code but 200 stops it unreachable, with the path it was reading. A card that serves no storage resource stops it misconfigured.

The password comes from protocol:http:password, a secret variable: it only goes in the Basic header. Redfish only reads with GET.

Prerequisites

  • The management card's address as the host's address, reachable from the poller in HTTPS (443); its certificate trusted by the TLS profile of the probe (protocol:http:fingerprint, or its authority under protocol:tls:authorities).
  • A read-only account on the card (the ReadOnly role of Redfish), in protocol:http:user and protocol:http:password.

Outputs

NameLabelUnitPer instance
healthHealth—yes, per component
kindKind—yes, per component
failure-predictedFailure predicted—yes, per component
remaining-lifeRemaining life%yes, per component

Watches

NameTitleKindDefaultsChecked by default
unhealthyHealth degradedstate to avoid, on healthwarning on warning, critical on criticalyes
failure-predictedDrive failure predictedstate to avoid, on failure-predictedwarning on yesyes
wornDrive worn outbelow a threshold, on remaining-lifewarning below 10 %, critical below 3 %yes
missingComponent missingexpected instances, on healthno component named: it raises nothing until names are set on the probeno
  • A volume that loses a drive of its mirror reads warning (degraded) while it rebuilds; a volume lost reads critical.

Limits

  • The address is written into the URL as is: an IPv6 address must be given as a name.
  • One request per drive and per volume: a server with many drives takes as many round trips.
  • A controller the card serves only under a resource of its own brand, outside Storage (HPE iLO's SmartStorage for older Smart Array controllers), is not read; a card that serves no storage at all stops the collector misconfigured.
  • A collection cut into pages (Members@odata.nextLink) is read on its first page only.
  • A JSON null reads as '' in Keen, which the collector takes for "not given": a PredictedMediaLifeLeftPercent or a FailurePredicted written null is not returned, a Health written null reads unknown, which raises nothing.
  • Not checked against a card: the paths and fields are those of the DMTF Redfish schemas (ComputerSystem, Storage, Drive, Volume), read on redfish.dmtf.org.