tisdag 20 maj 2014

Ur funktion

Jag har MRTG igång hemma (och på jobbet för all del) men det är sällan jag tittar till den, jag förväntar mig bara att den rullar.

Men när jag tittade till den häromdagen såg jag till min förvåning att den senast uppdaterades i februari. Jag kör den på en Cubieboard2 så jag loggade in och kollade vad som hänt. Efter senaste uppdateringen av Linux på den hade Perl mystiskt gått sönder. Planen är att ersätta den med en Raspberry Pi, de är enklare att felsöka och med tanke på hur få switchar jag har räcker en Pi låååångt för jobbet.

Att installera MRTG på en Raspberry Pi med Raspbian är en snabb och smärtfri sak:
sudo apt-get install mrtg

För att se output från MRTG behöver du cokså ha en webserver installerad, te.x. Apache eller Nginx.

Konfigurationen kan vara skrämmande för en nybörjare men här är några tips.

Du börjar med programmet cfgmaker, redan nu måste du bestämma om du vill köra MRTG via cron eller "för hand" och låta MRTG själv sköta demonisering och tidsintervall. Jag har valt det senare.

Sedan drar du till med en harang liknande den här (en rad):
sudo cfgmaker --snmp-options=:::::2 --global "Interval: 5" --global "Logdir: /var/log" --global "RunAsDaemon: Yes" -output=/etc/mrtg/core.cfg hemligt@192.168.1.1

I tur och ordning betyder det att vi använder SNMP Version 2c för kommunikation, vi vill kolla switchen var femte minut, vi vill använda biblioteket /var/log/ för loggfiler, vi vill att MRTG ska demonisera sig själv, kofigurationsfilen ska skrivas till /etc/mrtg/core.cfg och slutligen har vi community-namnet@switchens IP-adress.

Nu har du en konfigurationsfil du ska använda dels för att formattera html och dels för att faktiskt köra MRTG.

Nästa steg blir att köra indexmaker med en ny harang liknande denna (en rad):
sudo indexmaker -output=/var/www/mrtg/core.html /etc/mrtg/core.cfg

Det man gör med indexmaker är alltså att skriva ner en html-mall för core.cfg i /var/www/mrtg. /var/www är där din webserver vanligtvis lägger filerna den ska visa när man anropar den men det kan hända att du konfigurerat annorlunda.

cfgmaker och indexmaker använder du sedan bara om du vill göra någon förändring av konfigurationen.

Nu är du klar att köra MRTG självt, jag gör det från ett script med ett entry för varje switch:
sudo env LANG=C /usr/bin/mrtg /etc/mrtg/core.cfg

Förhoppningsvis får du nu bara ett meddelande om att MRTG demoniserat sig, den kommer vakna var femte minut, polla switcharna, skriva ner data och sedan vänta ytterligare fem minuter och så vidare.


Vid det här laget är det dags att ta en kopp kaffe eftersom resultaten du ser på webservern ser konstiga ut i minst fem minuter innan MRTG verkligen börjat samla in data. Jag kan inte nog understryka hur viktigt det är att vänta, jag har aldrig misslyckats med att dra igång MRTG - den tar bara tid på sig.

Inga kommentarer:

Skicka en kommentar