Skip to main content

Cloudian HyperStore (REST)

Description​

This connector monitors storage systems and collects performance and capacity metrics for Cloudian HyperStore platforms. Connect to the default region's HyperStore Admin API endpoint. HyperStore 7.4 or later and the Per-Bucket Object and Byte Counts feature are required for bucket metrics. Only regions containing at least one visible bucket are discovered.

cloudian storage

Enterprise Connector

This connector requires the Enterprise edition of MetricsHub.

Target​

Typical platform: Cloudian HyperStore

Operating system: Storage System

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

Prerequisites​

Leverages: HyperStore Admin API

Technology and protocols: HTTP

Examples​

CLI​

metricshub HOSTNAME -t storage -c +CloudianHyperStoreREST --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: [ +CloudianHyperStoreREST ] # 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 Cloudian HyperStore (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:
    • get /group/list
    • Request Header: ${file::httpHeader}
    • The response body contains: groupId (regex)

Metrics​

TypeCollected MetricsSpecific Attributes
controllerstorage.io{storage.type="controller", storage.io.direction="read"}
storage.io{storage.type="controller", storage.io.direction="write"}
storage.latency{storage.type="controller", storage.io.direction="read"}
storage.latency{storage.type="controller", storage.io.direction="write"}
storage.status{storage.type="controller", state="degraded|failed|ok"}
system.cpu.utilization
id
name
storage.parent.id
storage.parent.type
diskstorage.io{storage.type="disk", storage.io.direction="read"}
storage.io{storage.type="disk", storage.io.direction="write"}
storage.size{storage.type="disk"}
storage.status{storage.type="disk", state="degraded|failed|ok"}
storage.usage{storage.type="disk", storage.provisioning.state="free"}
storage.usage{storage.type="disk", storage.provisioning.state="used"}
id
name
storage.parent.id
storage.parent.type
system.device
system.filesystem.mountpoint
s3_bucketstorage.objects{storage.type="s3_bucket"}
storage.usage{storage.type="s3_bucket", storage.provisioning.state="used"}
id
name
storage.parent.id
storage.parent.type
storage_systemstorage.io{storage.type="storage_system", storage.io.direction="read"}
storage.io{storage.type="storage_system", storage.io.direction="write"}
storage.limit{storage.type="storage_system"}
storage.size{storage.type="storage_system"}
storage.usage{storage.type="storage_system", storage.provisioning.state="free"}
storage.usage{storage.type="storage_system", storage.provisioning.state="used"}
family
id
model
name
vendor