Imran's ILO Exporter for HP servers
iLO Exporter is a simple Flask-based API that executes a shell script (ilo_exporter.sh)
to query hardware metrics (via SNMP/iLO) and exposes them in a Prometheus-compatible format.
This iLO Exporter is designed to work with HP servers, providing seamless monitoring and metrics integration.
- Disk health status
- Disk temperature
- Smart storage values
- Power supply status
- RAID status
- Prometheus
/metricsendpoint
ilo-exporter/
├── app/
│ ├── main.py # Flask API exposing /metrics
│ ├── requirements.txt # Python dependencies
│ ├── ilo_exporter.sh # Script to fetch iLO metrics
├── Grafana/
│ ├── dashboard.json # Flask API exposing /metrics
├── Dockerfile # Container build file
└── README.md # Project documentation
- Python 3.12+
- Flask
- SNMP utilities (
snmp,snmptrapd) - ipmitool (if needed)
If running in Docker, these are already installed.
apt install snmp snmptrapd
pip install -r app/requirements.txt
python app/main.py
curl "http://localhost:8000/metrics?host=hostname"
docker build -t ilo-exporter .
docker run -d --name ilo-exporter --network host -p 8000:8000 ilo-exporter
curl "http://localhost:8000/metrics?host=hostname"
Example job (scraping exporter at 192.168.1.2:8000 for iLO host 192.168.1.23 ). Add to prometheus.yml:
scrape_configs:
- job_name: 'host_192.168.1.23'
metrics_path: '/metrics'
params:
host: ['192.168.1.23']
static_configs:
- targets: ['192.168.1.2:8000']
labels:
instance: '192.168.1.2'
Import the provided dashboard:
- File: Grafana/dashboard.json
- In Grafana: Dashboards → Import → Upload JSON → select your Prometheus datasource → Import
The dashboard includes panels for:
- Disk health
- Disk temperature
- Smart storage values
- Power supply status
- RAID status
Key Words:
- HP iLO exporter
- Prometheus exporter
- Grafana dashboard
- hardware monitoring