Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/galexrt/dellhw_exporter
Prometheus exporter for Dell Hardware components using Dell OMSA.
https://github.com/galexrt/dellhw_exporter
dell dell-omsa exporter hacktoberfest metrics monitoring omsa prometheus
Last synced: 16 days ago
JSON representation
Prometheus exporter for Dell Hardware components using Dell OMSA.
- Host: GitHub
- URL: https://github.com/galexrt/dellhw_exporter
- Owner: galexrt
- License: apache-2.0
- Created: 2017-08-23T09:14:10.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2024-04-12T15:03:03.000Z (7 months ago)
- Last Synced: 2024-04-14T12:08:00.364Z (7 months ago)
- Topics: dell, dell-omsa, exporter, hacktoberfest, metrics, monitoring, omsa, prometheus
- Language: Go
- Homepage: https://dellhw-exporter.galexrt.moe
- Size: 7.56 MB
- Stars: 106
- Watchers: 12
- Forks: 41
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# dellhw_exporter
![build_release](https://github.com/galexrt/dellhw_exporter/workflows/build_release/badge.svg)
Prometheus exporter for Dell Hardware components using OMSA.
The exporter was originally made by [PrFalken](https://github.com/PrFalken). Due to some issues in the code, I rewrote the whole exporter using the ["node_exporter"](https://github.com/prometheus/node_exporter) pattern and therefore moved it from being a fork out, to a standalone repository.
Omreport parsing functions were borrowed from the [Bosun project](https://github.com/bosun-monitor/bosun/blob/master/cmd/scollector/collectors/dell_hw.go), thank you very much for that, they are the most tedious part of the job.
This exporter wraps the `omreport` command from Dell OMSA. If you can't run or get any output from `omreport` on your system, then the exporter probably won't export any metrics.
## Compatibility
### Tested Dell OMSA Compatibility
The dellhw_exporter has been tested with the following OMSA versions:
* `7.4`
* `8.4`
* `9.1`### Kernel Compatibility
**Please note that only kernel versions that are supported by DELL DSU / OMSA tools are working!**
**State 07.06.2019**: Dell OMSA `DSU_19.05.00` is not compatible with 5.x kernel it seems (e.g., Fedora uses that kernel).
Should you run into issues when using the Container image, please follow the [Troubleshooting - No metrics being exported](#no-metrics-being-exported).
## Collectors
For a list of the available collectors, see [Collectors doc page](docs/collectors.md).
## Configuration
For flags and environment variables, see [Configuration doc page](docs/configuration.md).
## Caching
Optional caching can be enabled to prevent performance issues caused by this exporter, see [Caching doc page](caching.md).
## Running in Container
Container Image available from:
* [Quay.io](https://quay.io/repository/galexrt/dellhw_exporter)
* [GHCR.io](https://github.com/users/galexrt/packages/container/package/dellhw_exporter)(Docker Hub is not receiving new images begining from release `v1.10.0`)
### Pull the Container Image
Each Git tag is built and published as a release and container image.
#### Quay.io
```console
docker pull quay.io/galexrt/dellhw_exporter
```#### GHCR.IO
```console
docker pull ghcr.io/galexrt/dellhw_exporter
```### Run the Container Image
> **NOTE** The `--privileged` flag is required as the OMSA needs to access the host's devices and other components.
```console
docker run -d --name dellhw_exporter --privileged -p 9137:9137 quay.io/galexrt/dellhw_exporter
```## Running without Docker / Podman
To run without Docker / Podman either download a [release binary](https://github.com/galexrt/dellhw_exporter/releases) or build it (using `make build` command):
```console
./dellhw_exporter
./dellhw_exporter --help
./dellhw_exporter [YOUR_FLAGS]
```**The DELL OMSA services must already be running for the exporter to be able to collect metrics!**
E.g., run `/opt/dell/srvadmin/sbin/srvadmin-services.sh start` or `systemctl start SERVICE_NAME` (to enable autostart on use `systemctl enable SERVICE_NAME`; where `SERVICE_NAME` [are the DELL OMSA service(s) you installed](http://linux.dell.com/repo/hardware/omsa.html)).
## Prometheus
The exporter by default runs on port `9137` TCP.
Example static Prometheus Job config:
```yaml
[...]
- job_name: 'dellhw_exporter'
# Override the global default and scrape targets from this job every 60 seconds.
scrape_interval: 60s
static_configs:
- targets:
- 'YOUR_EXPORTER_SERVER_HERE:9137'
[...]
```## Monitoring
Checkout the files in the [`contrib/monitoring/`](contrib/monitoring/) directory.
## Installation
See [Installation doc page](docs/installation.md).
## Troubleshooting
See [Troubleshooting doc page](docs/troubleshooting.md).
## Development
Golang version `1.23` is used for testing and building the dellhw_exporter.
`go mod` is used for "vendoring" of the dependencies.