From 5da14042f70711ea5cf66e034699730335462f66 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 5 May 2024 14:08:03 +0200 Subject: Merging upstream version 1.45.3+dfsg. Signed-off-by: Daniel Baumann --- src/collectors/python.d.plugin/hpssa/metadata.yaml | 185 +++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 src/collectors/python.d.plugin/hpssa/metadata.yaml (limited to 'src/collectors/python.d.plugin/hpssa/metadata.yaml') diff --git a/src/collectors/python.d.plugin/hpssa/metadata.yaml b/src/collectors/python.d.plugin/hpssa/metadata.yaml new file mode 100644 index 000000000..e267c5578 --- /dev/null +++ b/src/collectors/python.d.plugin/hpssa/metadata.yaml @@ -0,0 +1,185 @@ +plugin_name: python.d.plugin +modules: + - meta: + plugin_name: python.d.plugin + module_name: hpssa + monitored_instance: + name: HP Smart Storage Arrays + link: 'https://buy.hpe.com/us/en/software/server-management-software/server-management-software/smart-array-management-software/hpe-smart-storage-administrator/p/5409020' + categories: + - data-collection.storage-mount-points-and-filesystems + icon_filename: 'hp.svg' + related_resources: + integrations: + list: [] + info_provided_to_referring_integrations: + description: '' + keywords: + - storage + - hp + - hpssa + - array + most_popular: false + overview: + data_collection: + metrics_description: 'This collector monitors HP Smart Storage Arrays metrics about operational statuses and temperatures.' + method_description: 'It uses the command line tool `ssacli`. The exact command used is `sudo -n ssacli ctrl all show config detail`' + supported_platforms: + include: [] + exclude: [] + multi_instance: false + additional_permissions: + description: '' + default_behavior: + auto_detection: + description: 'If no configuration is provided, the collector will try to execute the `ssacli` binary.' + limits: + description: '' + performance_impact: + description: '' + setup: + prerequisites: + list: + - title: 'Enable the hpssa collector' + description: | + The `hpssa` collector is disabled by default. To enable it, use `edit-config` from the Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md), which is typically at `/etc/netdata`, to edit the `python.d.conf` file. + + ```bash + cd /etc/netdata # Replace this path with your Netdata config directory, if different + sudo ./edit-config python.d.conf + ``` + + Change the value of the `hpssa` setting to `yes`. Save the file and restart the Netdata Agent with `sudo systemctl restart netdata`, or the [appropriate method](https://github.com/netdata/netdata/blob/master/packaging/installer/README.md#maintaining-a-netdata-agent-installation) for your system. + - title: 'Allow user netdata to execute `ssacli` as root.' + description: | + This module uses `ssacli`, which can only be executed by root. It uses `sudo` and assumes that it is configured such that the `netdata` user can execute `ssacli` as root without a password. + + - Add to your `/etc/sudoers` file: + + `which ssacli` shows the full path to the binary. + + ```bash + netdata ALL=(root) NOPASSWD: /path/to/ssacli + ``` + + - Reset Netdata's systemd + unit [CapabilityBoundingSet](https://www.freedesktop.org/software/systemd/man/systemd.exec.html#Capabilities) (Linux + distributions with systemd) + + The default CapabilityBoundingSet doesn't allow using `sudo`, and is quite strict in general. Resetting is not optimal, but a next-best solution given the inability to execute `ssacli` using `sudo`. + + As the `root` user, do the following: + + ```cmd + mkdir /etc/systemd/system/netdata.service.d + echo -e '[Service]\nCapabilityBoundingSet=~' | tee /etc/systemd/system/netdata.service.d/unset-capability-bounding-set.conf + systemctl daemon-reload + systemctl restart netdata.service + ``` + configuration: + file: + name: python.d/hpssa.conf + options: + description: | + There are 2 sections: + + * Global variables + * One or more JOBS that can define multiple different instances to monitor. + + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values. + + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition. + + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified. + folding: + title: "Config options" + enabled: true + list: + - name: update_every + description: Sets the default data collection frequency. + default_value: 5 + required: false + - name: priority + description: Controls the order of charts at the netdata dashboard. + default_value: 60000 + required: false + - name: autodetection_retry + description: Sets the job re-check interval in seconds. + default_value: 0 + required: false + - name: penalty + description: Indicates whether to apply penalty to update_every in case of failures. + default_value: yes + required: false + - name: name + description: Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works. + default_value: '' + required: false + - name: ssacli_path + description: Path to the `ssacli` command line utility. Configure this if `ssacli` is not in the $PATH + default_value: '' + required: false + - name: use_sudo + description: Whether or not to use `sudo` to execute `ssacli` + default_value: 'True' + required: false + examples: + folding: + enabled: false + title: "Config" + list: + - name: Local simple config + description: A basic configuration, specyfing the path to `ssacli` + folding: + enabled: false + config: | + local: + ssacli_path: /usr/sbin/ssacli + troubleshooting: + problems: + list: [] + alerts: [] + metrics: + folding: + title: Metrics + enabled: false + description: "" + availability: [] + scopes: + - name: global + description: "These metrics refer to the entire monitored application." + labels: [] + metrics: + - name: hpssa.ctrl_status + description: Status 1 is OK, Status 0 is not OK + unit: "Status" + chart_type: line + dimensions: + - name: ctrl_{adapter slot}_status + - name: cache_{adapter slot}_status + - name: battery_{adapter slot}_status per adapter + - name: hpssa.ctrl_temperature + description: Temperature + unit: "Celsius" + chart_type: line + dimensions: + - name: ctrl_{adapter slot}_temperature + - name: cache_{adapter slot}_temperature per adapter + - name: hpssa.ld_status + description: Status 1 is OK, Status 0 is not OK + unit: "Status" + chart_type: line + dimensions: + - name: a dimension per logical drive + - name: hpssa.pd_status + description: Status 1 is OK, Status 0 is not OK + unit: "Status" + chart_type: line + dimensions: + - name: a dimension per physical drive + - name: hpssa.pd_temperature + description: Temperature + unit: "Celsius" + chart_type: line + dimensions: + - name: a dimension per physical drive -- cgit v1.2.3