diff options
Diffstat (limited to 'src/go/collectors')
l--------- | src/go/collectors/go.d.plugin/modules/storcli/README.md | 1 | ||||
-rw-r--r-- | src/go/collectors/go.d.plugin/modules/storcli/integrations/storecli_raid.md | 189 |
2 files changed, 190 insertions, 0 deletions
diff --git a/src/go/collectors/go.d.plugin/modules/storcli/README.md b/src/go/collectors/go.d.plugin/modules/storcli/README.md new file mode 120000 index 0000000000..482049b19a --- /dev/null +++ b/src/go/collectors/go.d.plugin/modules/storcli/README.md @@ -0,0 +1 @@ +integrations/storecli_raid.md
\ No newline at end of file diff --git a/src/go/collectors/go.d.plugin/modules/storcli/integrations/storecli_raid.md b/src/go/collectors/go.d.plugin/modules/storcli/integrations/storecli_raid.md new file mode 100644 index 0000000000..bc4f81de14 --- /dev/null +++ b/src/go/collectors/go.d.plugin/modules/storcli/integrations/storecli_raid.md @@ -0,0 +1,189 @@ +<!--startmeta +custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/storcli/README.md" +meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/storcli/metadata.yaml" +sidebar_label: "StoreCLI RAID" +learn_status: "Published" +learn_rel_path: "Collecting Metrics/Storage, Mount Points and Filesystems" +most_popular: False +message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" +endmeta--> + +# StoreCLI RAID + + +<img src="https://netdata.cloud/img/hard-drive.svg" width="150"/> + + +Plugin: go.d.plugin +Module: storcli + +<img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" /> + +## Overview + +Monitors the health of StoreCLI Hardware RAID by tracking the status of RAID adapters, physical drives, and backup batteries in your storage system. +It relies on the [`storcli`](https://docs.broadcom.com/doc/12352476) CLI tool but avoids directly executing the binary. +Instead, it utilizes `ndsudo`, a Netdata helper specifically designed to run privileged commands securely within the Netdata environment. +This approach eliminates the need to use `sudo`, improving security and potentially simplifying permission management. + +Executed commands: +- `storcli /cALL show all J nolog` +- `storcli /cALL/eALL/sALL show all J nolog` + + + + +This collector is supported on all platforms. + +This collector only supports collecting metrics from a single instance of this integration. + + +### Default Behavior + +#### Auto-Detection + +This integration doesn't support auto-detection. + +#### Limits + +The default configuration for this integration does not impose any limits on data collection. + +#### Performance Impact + +The default configuration for this integration is not expected to impose a significant performance impact on the system. + + +## Metrics + +Metrics grouped by *scope*. + +The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. + + + +### Per controller + +These metrics refer to the Controller. + +Labels: + +| Label | Description | +|:-----------|:----------------| +| controller_number | Controller number (index) | +| model | Controller model | + +Metrics: + +| Metric | Dimensions | Unit | +|:------|:----------|:----| +| storcli.controller_status | optimal, degraded, partially_degraded, failed | status | +| storcli.controller_bbu_status | healthy, unhealthy, na | status | + +### Per physical drive + +These metrics refer to the Physical Drive. + +Labels: + +| Label | Description | +|:-----------|:----------------| +| controller_number | Controller number (index) | +| enclosure_number | Enclosure number (index) | +| slot_number | Slot number (index) | +| media type | Media type (e.g. HDD) | + +Metrics: + +| Metric | Dimensions | Unit | +|:------|:----------|:----| +| storcli.phys_drive_errors | media, other | errors/s | +| storcli.phys_drive_predictive_failures | predictive_failures | failures/s | +| storcli.phys_drive_smart_alert_status | active, inactive | status | +| storcli.phys_drive_temperature | temperature | status | + + + +## Alerts + +There are no alerts configured by default for this integration. + + +## Setup + +### Prerequisites + +No action required. + +### Configuration + +#### File + +The configuration file name for this integration is `go.d/storcli.conf`. + + +You can edit the configuration file using the `edit-config` script from the +Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory). + +```bash +cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata +sudo ./edit-config go.d/storcli.conf +``` +#### Options + +The following options can be defined globally: update_every. + + +<details><summary>Config options</summary> + +| Name | Description | Default | Required | +|:----|:-----------|:-------|:--------:| +| update_every | Data collection frequency. | 10 | no | +| timeout | storcli binary execution timeout. | 2 | no | + +</details> + +#### Examples + +##### Custom update_every + +Allows you to override the default data collection interval. + +<details><summary>Config</summary> + +```yaml +jobs: + - name: storcli + update_every: 5 # Collect StorCLI RAID statistics every 5 seconds + +``` +</details> + + + +## Troubleshooting + +### Debug Mode + +To troubleshoot issues with the `storcli` collector, run the `go.d.plugin` with the debug option enabled. The output +should give you clues as to why the collector isn't working. + +- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on + your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. + + ```bash + cd /usr/libexec/netdata/plugins.d/ + ``` + +- Switch to the `netdata` user. + + ```bash + sudo -u netdata -s + ``` + +- Run the `go.d.plugin` to debug the collector: + + ```bash + ./go.d.plugin -d -m storcli + ``` + + |