Der netbsd_exporter: Eine Alternative zum Prometheus node_exporter mit Fokus auf NetBSD

Die Systemüberwachung ist für Administratoren von großer Bedeutung, um Einblicke in die Leistung und den Zustand ihrer Systeme zu erhalten. Eine beliebte Lösung dafür ist Prometheus, ein leistungsstarkes Open-Source-System zur Überwachung und Alarmierung, das auf Metriken basiert. In Kombination mit Grafana bietet Prometheus erweiterte Visualisierungen und Analysen.

Systemüberwachung mit Exportern

Die Überwachung der Systeme erfolgt durch kontinuierliche Abfragen von Metriken, die über Exporter bereitgestellt werden. Exporter sind spezielle Programme, die Metriken über eine HTTP-Schnittstelle im Prometheus-Format bereitstellen und spezifische Details der Systeme kennen.

Der NetBSD Exporter

Der netbsd_exporter ist ein Exporter, der speziell für NetBSD entwickelt wurde. Er ist inspiriert durch den Sysctl Exporter von FreeBSD und zielt auf eine natürliche Integration in das Grundsystem sowie einen geringen Ressourcenverbrauch ab.

Verfügbare Metriken

Der netbsd_exporter kann derzeit Disk I/O, Netzwerk-I/O, RAM- und Dateisystemnutzung sowie die CPU-Auslastung zur Verfügung stellen. Diese Metriken ermöglichen es Administratoren, die Leistung und mögliche Engpässe frühzeitig zu erkennen.

Beispielausgabe:

netbsd_fs_size_bytes{device="dk0",mountpoint="/"} 14573516800
netbsd_fs_used_bytes{device="dk0",mountpoint="/"} 8648296448
netbsd_fs_free_bytes{device="dk0",mountpoint="/"} 5196546048
netbsd_load1 0.000000
netbsd_load5 0.000000
netbsd_load15 0.000000
netbsd_netif_rx_bytes{interface="xennet0"} 2048990748
netbsd_netif_tx_bytes{interface="xennet0"} 98329050
netbsd_netif_errors{interface="xennet0"} 0
netbsd_netif_rx_bytes{interface="lo0"} 12998
netbsd_netif_tx_bytes{interface="lo0"} 12998
netbsd_netif_errors{interface="lo0"} 0
netbsd_mem_size_bytes 249638912
netbsd_mem_free_bytes 23531520
netbsd_mem_active_bytes 79384576
netbsd_mem_inactive_bytes 48852992
netbsd_mem_paging_bytes 0
netbsd_mem_wired_bytes 16723968
netbsd_mem_swap_size_bytes 2147442688
netbsd_mem_swap_used_bytes 6533120
netbsd_dk_read_bytes{device="xbd0"} 307225201664
netbsd_dk_write_bytes{device="xbd0"} 33737978368
netbsd_dk_read_bytes{device="dk0"} 305721165824
netbsd_dk_write_bytes{device="dk0"} 32393216512
netbsd_dk_read_bytes{device="dk1"} 1503978496
netbsd_dk_write_bytes{device="dk1"} 1344761856

Integration in inetd

Der netbsd_exporter wird über inetd bereitgestellt, einem “Internet Super Server”, der eine effiziente Verwaltung von Netzwerkdiensten ermöglicht. Durch diese Integration wird der Exporter nur bei Bedarf aufgerufen und stellt Metriken auf Anfrage bereit. Er benötigt nur das NetBSD-Grundsystem und keine zusätzlichen 3rd-Party-Pakete, was die Integration erleichtert und den Ressourcenverbrauch minimiert. Zusätzlich profitiert er von den Möglichkeiten der Zugriffsbeschränkung und Drosselung, die inetd standardmäßig mitbringt.

Alternative zum node_exporter

Der node_exporter ist ein weit verbreitetes Tool zur Erfassung von Systemmetriken, das von Prometheus unterstützt wird. Die NetBSD-Unterstützung des node_exporters ist jedoch noch lückenhaft. Der netbsd_exporter konzentriert sich speziell auf das NetBSD-Betriebssystem und bietet eine Alternative, die spezifische Metriken und Informationen für NetBSD-Systeme bereitstellt und optimiert ist, um die Ressourcen effizient zu nutzen.

Quelltext

Der Quelltext des netbsd_exporters steht unter der 2-Clause-BSD-Lizenz zur Verfügung. Der Quelltext ist unter https://forge.petermann-it.de/mpeterma/netbsd_exporter zu finden. Ich freue mich immer über Anregungen, Feature-Wünsche und Fehlerberichte. Zögere nicht, mir Deine Vorschläge oder entdeckten Probleme mitzuteilen. Zusammen können wir den netbsd_exporters verbessern.

Der netbsd_exporter ist ein nützliches Werkzeug zur Überwachung von NetBSD-Systemen. Er ermöglicht Administratoren die Überwachung von Metriken wie Disk I/O, Netzwerk I/O, RAM- und Dateisystemnutzung sowie CPU-Auslastung im Prometheus-kompatiblen Format. Die Integration in inetd erleichtert die Einbindung in bestehende Infrastrukturen. Der netbsd_exporter ist eine interessante und schlanke Alternative zum node_exporter, die die spezifischen Anforderungen von NetBSD-Systemen erfüllt und deren einzigartige Metriken berücksichtigt.