Für den Betrieb von Munin sind folgende RPM-Pakete erforderlich. Diese sind u.a. auf http://rpms.serviert.de,http://dag.wieers.com/packages/ und bei RedHat selbst zu finden.
Bei der Installation von munin mittels der RPMs wird ein user munin angelegt. Das Home-Verzeichnis ist /var/lib/munin und enthält nach erfolgreichem Start die Auswertungen im rrdtool-Format. Als Webserververzeichnis wird /var/www/html/munin verwendet.
/etc/munin/munin.conf
[hostname] address ip.ad.re.ss use_node_name yes
Dieser Eintrag ist als Minimum anzupassen, damit munin funktioniert. (Alternativ können in dieser Datei auch die Pfade zu dbdir,htmldir,logdir angepaßt werden).
Ob auch wirklich Auswertungen generiert werden können, sollte man die Installation testen.
testen der installation von munin
su - munin /usr/bin/munin-cron
Hier werden dann perl-Fehler oder andere Probleme angezeigt.
Munin.pm nicht gefunden wird. Diese liegt nach der Installation in rpm -ql munin | grep Munin.pm. Wenn das angegebene Verzeichnis nicht der aktuellen perl-Installation entspricht, ist die Datei ggf. zu verschieben oder das RPM neu zu erstellen.mv /usr/lib/perl5/vendor_perl/5.8.3/Munin.pm /usr/lib/perl5/vendor_perl/5.8.0mkdir -p /var/log/munin && chown -R munin /var/log/muninSollen die RRD-Graphen einheitlich skaliert sein und nicht durch “Ausreißer” die Skalierung automatisch angepaßt werden, so ist in der “config” Sektion des entsprechenden Plugins mit dem Schlüsselwort “graph_args” eine Anpassung vorzunehmen.
#!/bin/sh
URL1=http://www.heise.de
URL2=https://www.xing.com
export HOME=/var/lib/munin
if [ "$1" == "config" ]; then
echo 'graph_title Ausgehende Verbindungen via Proxy (in ms)'
echo 'graph_args --base 1000 -l 0 -u 11000 -r'
echo 'graph_scale no'
echo 'graph_category proxy-stats'
echo 'url1pro1.label url1 (http) '
echo 'url1pro1.warning 10000'
echo 'url1pro1.critical 60000'
echo 'url2pro1.label url2 (https)'
echo 'url2pro1.warning 10000'
echo 'url2pro1.critical 60000'
echo 'graph_info Time to connect to external (in milliseconds)'
exit 0
fi
export http_proxy=http://meinproxy.local:3128
export https_proxy=http://meinproxy.local:3128
T1=$(perl -e "use Time::HiRes; printf \"%.0f\n\",Time::HiRes::time() * 1000")
lynx $URL1 --dump -connect_timeout=70 >/dev/null 2>&1
RC=$?
T2=$(perl -e "use Time::HiRes; printf \"%.0f\n\",Time::HiRes::time() * 1000")
DURATION1=$((T2 - T1))
[[ "$RC" != "0" ]] && DURATION1=75000
T1=$(perl -e "use Time::HiRes; printf \"%.0f\n\",Time::HiRes::time() * 1000")
lynx $URL2 --dump -connect_timeout=70 >/dev/null 2>&1
RC=$?
T2=$(perl -e "use Time::HiRes; printf \"%.0f\n\",Time::HiRes::time() * 1000")
DURATION2=$((T2 - T1))
[[ "$RC" != "0" ]] && DURATION2=75000
echo "url1pro2.value " $DURATION1
echo "url2pro2.value " $DURATION2
Hier wird ein auf 11sekunden skaliertes Bild erzeugt, auch wenn durch timeouts das obere Limit (75s) überschritten ist.