Monitoring mit Munin und SNMP
Eine Anleitung wie man Netzwerkgeräte mit Munin überwachen kann. Der Dienst SNMP (Simple Network Management Protocol) dient zum Monitoring von Netzwerkgeräten wie Server, Router, Drucker usw. SNMP läuft auf Port 161 TCP. Diese Anleitung setzt einen korrekt installierten Munin-Server voraus.
Zunächst muss SNMP auf dem zu überwachenden Gerät installiert bzw. enabled werden sodass der Munin-Server mit ihm kommunizieren kann. SNMP Version 2 ist ausreichend, ist allerdings ohne Benutzernamen/Passwort und unverschlüsselt. Man muss lediglich eine Community festlegen.
In dieser Anleitung soll ein Medienserver mit LibreELEC und Hostnamen libreelec.lan mit IP-Adresse 192.168.0.13 mit hinzugefügt werden.
munin.conf
Bei Munin erfolgt die Kommunikation mit SNMP über localhost und nicht direkt über die IP-Adresse des Clients.
vi /etc/munin/munin.conf
[libreelec.lan]
address 127.0.0.1
use_node_name no
plugin-conf.d
In diesem Ordner eine Datei anlegen
vi /etc/munin/plugin-conf.d/libreelec.lan
[snmp_libreelec.lan_*]
env.community libreelec
env.port 161
env.ip 192.168.0.13
env.version 2
munin-node-configure
Zuerst nachsehen welche Metriken zur Verfügung stehen
munin-node-configure --snmp libreelec.lan --snmpcommunity libreelec
Plugin | Used | Suggestions
------ | ---- | -----------
snmp__cpuload | yes | yes (libreelec.lan)
snmp__df | yes | yes (libreelec.lan)
snmp__df_ram | yes | yes (libreelec.lan)
snmp__fc_if_ | no | no
snmp__fc_if_err_ | no | no
snmp__if_ | yes | yes (libreelec.lan/1 libreelec.lan/2)
snmp__if_err_ | yes | yes (libreelec.lan/1 libreelec.lan/2)
snmp__if_multi | yes | yes (libreelec.lan)
snmp__load | yes | yes (libreelec.lan)
snmp__memory | yes | yes (libreelec.lan)
snmp__netapp_diskusage_ | no | no
snmp__netapp_inodeusage_ | no | no
snmp__netstat | yes | yes (libreelec.lan)
snmp__print_pages | no | no
snmp__print_supplies | no | no
snmp__processes | yes | yes (libreelec.lan)
snmp__rdp_users | no | no
snmp__sensors_fsc_bx_fan | no | no
snmp__sensors_fsc_bx_temp | no | no
snmp__sensors_fsc_fan | no | no
snmp__sensors_fsc_temp | no | no
snmp__sensors_mbm_fan | no | no
snmp__sensors_mbm_temp | no | no
snmp__sensors_mbm_volt | no | no
snmp__swap | yes | yes (libreelec.lan)
snmp__uptime | yes | yes (libreelec.lan)
snmp__users | yes | yes (libreelec.lan)
snmp__winload | yes | yes (libreelec.lan)
snmp__winmem | yes | yes (libreelec.lan)
Symlinks erstellen
munin-node-configure --snmp libreelec.lan --snmpcommunity libreelec -shell
ln -s '/usr/share/munin/plugins/snmp__df' '/etc/munin/plugins/snmp_libreelec.lan_df'
ln -s '/usr/share/munin/plugins/snmp__df_ram' '/etc/munin/plugins/snmp_libreelec.lan_df_ram'
.
.
.
Munin neu starten
service munin-node restart
service munin-node status
● munin-node.service - Munin Node
Loaded: loaded (/lib/systemd/system/munin-node.service; enabled)
Active: active (running) since Sun 2021-10-03 18:02:13 CEST; 1min 49s ago
Docs: man:munin-node(1)
http://munin.readthedocs.org/en/stable-2.0/reference/munin-node.html
Process: 12302 ExecStart=/usr/sbin/munin-node $DAEMON_ARGS (code=exited, status=0/SUCCESS)
Main PID: 12304 (munin-node)
CGroup: /system.slice/munin-node.service
└─12304 /usr/bin/perl -wT /usr/sbin/munin-node
Fertig!
munin-run snmp_libreelec.lan_cpuload
cpu196610.value 15
cpu196611.value 16
cpu196609.value 17
cpu196608.value 8