add fast ilo exporter project
BIN
www/img/ilo-drives-thumb.webp
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
www/img/ilo-drives.jpg
Normal file
After Width: | Height: | Size: 474 KiB |
BIN
www/img/ilo-fan-and-cpu-info-thumb.webp
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
www/img/ilo-fan-and-cpu-info.jpg
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
www/img/ilo-overview-thumb.webp
Normal file
After Width: | Height: | Size: 58 KiB |
BIN
www/img/ilo-overview.jpg
Normal file
After Width: | Height: | Size: 492 KiB |
BIN
www/img/ilo-temperatures-thumb.webp
Normal file
After Width: | Height: | Size: 59 KiB |
BIN
www/img/ilo-temperatures.jpg
Normal file
After Width: | Height: | Size: 502 KiB |
@ -71,6 +71,30 @@
|
||||
<small>click image to view in full resolution</small>
|
||||
</div>
|
||||
|
||||
<div class="project sub-section">
|
||||
<h3>Fast ILO Exporter <small>(2024)</small></h3>
|
||||
<p>Uses SNMP instead of HTTP when possible to fetch metrics like temperature, fan speed, power draw, drive status, memory status, health, etc. from the ILO controller of an HP server, and exports them to Prometheus. It is significantly faster (15 seconds vs 1 minute) than the pre-existing solutions I tried which only use the slower HTTP API.</p>
|
||||
<details>
|
||||
<summary>More details</summary>
|
||||
<p>
|
||||
  Fast ILO Exporter is a quickly thrown together Python project that I made over the course of a few days to export metrics like temperature, fan speed, power draw, drive status, memory status, health, and more from my HP server with an ILO4 controller. I built it after finding out that all the pre-existing solutions used the ILO's HTTP API and were extremely slow, requiring scrape intervals ranging from 1-5 minutes. For my purposes, such a delay is not satisfactory.
|
||||
</p>
|
||||
<p>
|
||||
  My implementation uses SNMP to grab most of this information, which ends up being significantly faster, easily achieving the 15 second scrape interval that I was after. The exporter also optionally fetches some minimal information not available over SNMP using the HTTP API, and maps it with the values received over SNMP. Even with all the HTTP functions enabled, it's still able to achieve my 15 second scrape interval since it only has to make 2 HTTP requests.
|
||||
</p>
|
||||
<p>
|
||||
  I also took the time to make this project publicly available too. You can view the source code <a href="https://github.com/Benjamin-Wiegand/ilo_exporter" target="_blank">on GitHub</a> or <a href="https://git.wiegand.pw/ben/fast_ilo_exporter" target="_blank">my personal git server</a>.
|
||||
</p>
|
||||
</details>
|
||||
<div class="double-screenshot">
|
||||
<a target="_blank" href="/img/ilo-overview.jpg"><img src="/img/ilo-overview-thumb.webp" alt="overview of my ILO dashboard in grafana"></a>
|
||||
<a target="_blank" href="/img/ilo-temperatures.jpg"><img src="/img/ilo-temperatures-thumb.webp" alt="temperature sensor data shown in my ILO dashboard in grafana"></a>
|
||||
<a target="_blank" href="/img/ilo-drives.jpg"><img src="/img/ilo-drives-thumb.webp" alt="drive health, status, and temperature shown in my ILO dashboard in grafana"></a>
|
||||
<a target="_blank" href="/img/ilo-fan-and-cpu-info.jpg"><img src="/img/ilo-fan-and-cpu-info-thumb.webp" alt="fan speed, fan health, fan status, and cpu status shown in my ILO dashboard in grafana"></a>
|
||||
</div>
|
||||
<small>click image to view in full resolution</small>
|
||||
</div>
|
||||
|
||||
<div class="project sub-section">
|
||||
<h3>SMBus MITM <small>(2023/2024)</small></h3>
|
||||
<p>Uses a microcontroller to intercept laptop battery communications, providing additional information regarding battery health and maintenance.</p>
|
||||
|