wiki:WikiStart

Nagios, Cacti en Smokeping vooor monitoring

Voor het monitoren van de status van het Wireless Leiden netwerk is nagios geinstalleerd. De resultaten zijn te zien via de webinterface: http://sunfire.wirelessleiden.nl/wleiden/nagios/. In Nagios zijn ook enkele grafieken met historische gegevens beschikbaar via de pnp addon.

N.B. Voor enkele checks hebben we een tijdje nrpe2 gebruikt, daarvoor is in de nodesoftware nrpe2 opgenomen. Maar dit kost nogal veel geheugen. We geven nu de voorkeur aan snmp voor bijv. het checken van de internetverbinding. Voor nrpe is ook mk-livestatus nodig en een aanpassing van de standaard-Nagios versie. De standaard Nagios uit ports heeft geen event_brokers mee-gecompileerd (dit is niet te zien in het pakket of iets anders). Packages worden gemaakt met de 'default' port opties en daar staat dit niet aan.

Daarnaast worden er grafieken gemaakt met Cacti: http://sunfire.wirelessleiden.nl/wleiden/cacti/graph_view.php?action=tree&tree_id=2 en smokeping. De verschillende mogelijkheden staan op een rijtje op de pagina http://sunfire.wirelessleiden.nl/wleiden/ . N.B. dit is niet langer actief!

Actualiseren Nagios configuratie

N.B. er zijn een aantal bugs cq ontbrekende functionaliteit in het gformat.py script waardoor de wleiden.cfg file nog handmatig moet worden gecontroleerd en aangevuld. Dus niet klakkeloos updaten van de configuratie door dit recept te volgen!

inloggen op sunny
sunny# cd /root/svn/genesis-for-nagios/
sunny# svn up
sunny# tools/gformat.py nagios-export > /usr/local/etc/nagios/objects/wleiden.cfg
sunny# /usr/local/etc/rc.d/nagios restart
Performing sanity check of nagios configuration: OK
Stopping nagios.
Waiting for PIDS: 79692.
Performing sanity check of nagios configuration: OK
Starting nagios.
sunny#

Toevoegen grafieken in Cacti (op dit moment niet geimplementeerd)

Gebruik de admin toegang: http://sunfire.wirelessleiden.nl/wleiden/cacti/ .

  • Voeg device toe ('create devices'), create 'Generic SNMP-enabled host', 'add'.
  • Device beschrijving: gebruik ip-adres als host-name
  • Create new graph, SNMP-Interface statistics
  • Management graph tree, add to public tree

Gebruik van RaspberryPI of APU-bordje als monitoring server (Sunnysidekick)

We experimenteren met het gebruik van een 'embedded' systeembordje als monitoring server. Dit heeft het voordeel van een laag energiegebruik, geen bewegende onderdelen (dus niet gevoelig voor een stoffige omgeving), geen lawaai. Daardoor kan zo'n servertje in principe bij elke willekeurige node geplaatst worden. Wen RaspberryPI is geschikt gebleken, maar deze hardware is toch wat aan de krappe kant en niet geschikt voor FreeBSD (MIPS processor). Daarom is een APU-bordje meer geschikt, zie hieronder.

Installatie op RaspberryPI

apt-get install nagios3
nagiosadmin pwd wleiden
apt-get install nagios-nrpe-plugin
nagios.cfg is in /etc/nagios3
apt-get install subversion
apt-get install python-pyproj
apt-get install python-yaml
apt-get install python-jinja2

root@raspberrypi:~# pwd
/root
root@raspberrypi:~# mkdir svn
root@raspberrypi:~# svn co http://svn.wirelessleiden.nl/svn/node-config/genesis genesis-for-nagios

root@raspberrypi:/etc/nagios3# mkdir commands
root@raspberrypi:/etc/nagios3# mkdir timeperiods
root@raspberrypi:/etc/nagios3# mkdir contacts
root@raspberrypi:/etc/nagios3# mkdir nodes
root@raspberrypi:/etc/nagios3# mkdir nanostations
root@raspberrypi:/etc/nagios3# mkdir services

in nagios.cfg:
cfg_dir=/etc/nagios3/commands
cfg_dir=/etc/nagios3/contacts
cfg_dir=/etc/nagios3/timeperiods
cfg_dir=/etc/nagios3/nodes
cfg_dir=/etc/nagios3/nanostations
cfg_dir=/etc/nagios3/services

root@raspberrypi:/etc/nagios3# cp commands.cfg commands/default.cfg

cp default.cfg files over to specific directories

gebruik standaard installatie
toevoegen beheerder in htpasswd , cgi.cfg

Inrichten van Nagios APU server

Zie de APU pagina en http://www.unixmen.com/how-to-install-and-configure-nagios-in-freebsd/.

Hardware We gebruiken een APU-bordje met 4GB RAM, 16 GB SSD; Freebsd10.1-RELEASE installeren met bijv. een memorystick. Default partitionering. Bij gebruik van de productie-BIOS-versie van mei 2014 hoeven er geen aanpassingen te worden gemaakt.

Software installatie Het gebruik van ports gaf problemen ivm perl port. Daarom hebben we pacakages gebruikt:

  1. mysql
pkg install mysql-server
echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server start
mysqladmin -u root password "newpassword"
  1. apache
    pkg install apache24
    php-module is in /usr/ports/www, install separately
    cd /usr/ports/lang/php52-extensions
    make install clean
    
    echo 'apache24_enable="YES"' >> /etc/rc.conf
    test apache (browser to http://<ip-adres>)
    
  2. php
    - pkg install php54 en php54-extensions
    - activeer php configuration cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
    - configureer apache voor php
    edit /usr/local/etc/apache22/httpd.conf:
    LoadModule cgi_module
    DirectoryIndex index.php index.html index.htm 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    AddHandler cgi-script .cgi
    - check php info pagina. De standaard document root in apache24 is /usr/local/www/apache22/data. Maak een php-testbestand aan 
    (echo “<? phpinfo(); ?>” >> /usr/local/www/apache22/data/test.php
    check de pagina http://<ip-sdres>/test.php
    
  3. installeer nagios
    cd /usr/ports/net-mgmt/nagios
    make install clean
    default installatie, voeg NETSNMP toe aan nagios group en user.
    echo 'nagios_enable="YES"' >> /etc/rc.conf
    kopieer de voorbeeld pagina naar de config files
    cd /usr/local/etc/nagios/
    cp cgi.cfg-sample cgi.cfg
    cp nagios.cfg-sample nagios.cfg
    cp resource.cfg-sample resource.cfg
    
    Idem in /usr/local/etc/nagios/objects/:
    cp commands.cfg-sample commands.cfg
    cp contacts.cfg-sample contacts.cfg
    cp localhost.cfg-sample localhost.cfg
    cp printer.cfg-sample printer.cfg
    cp switch.cfg-sample switch.cfg
    cp templates.cfg-sample templates.cfg
    cp timeperiods.cfg-sample timeperiods.cfg
    
    check de nagios configuratie op fouten:
    #  nagios -v  /usr/local/etc/nagios/nagios.cfg
    
    Maak een admin password aam voor de nagios home page (admin is nagiosadmin)
    htpasswd -c /usr/local/etc/nagios/htpasswd.users nagiosadmin
    
    Voeg Nagios toe aan de apache  configuratie:
    
    edit  /usr/local/etc/apache24/httpd.conf, voeg toe aan het einde van het bestand:
    
    ScriptAlias /nagios/cgi-bin/ /usr/local/www/nagios/cgi-bin/
    Alias /nagios /usr/local/www/nagios/
    <Directory /usr/local/www/nagios>
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName “Nagios Access”
    AuthType Basic
    AuthUSerFile /usr/local/etc/nagios/htpasswd.users
    Require valid-user
    
    </Directory>
    <Directory /usr/local/www/nagios/cgi-bin>
    Options ExecCGI
    AllowOverride None
    Order allow,deny
    Allow from all
    AuthName “Nagios Access”
    AuthType Basic
    AuthUSerFile /usr/local/etc/nagios/htpasswd.users
    Require valid-user
    </Directory>
    
    Opnieuw starten van apache en controleren op fouten
    /usr/local/etc/rc.d/apache24 restart
    
    Open de nagios pagina http://ip/nagios, gebruik login en password
    
    '''Extra plugins'''
    
    Enkele aangepaste nagios-plugins staan in svn onder code/nagios/trunk/plugins/
    
    Installeer perl snmp module voor gebruik van snmp-plugin
    {{{
    perl -MCPAN -e "install Net::SNMP"
    }}}
    
    FreeBSD10.1: vervang dig door drill in check_dns_wl script
    
    

Welcome to Trac 0.11.2

As all Wiki pages, this page is editable, this means that you can modify the contents of this page simply by using your web-browser. Simply click on the "Edit this page" link at the bottom of the page. WikiFormatting will give you a detailed description of available Wiki formatting commands.

Starting Points

For a complete list of local wiki pages, see TitleIndex.

Last modified 2 years ago Last modified on Dec 29, 2014, 4:17:34 PM