Linux counter

Cisco User Group

Accessi

TodayToday457
YeserdayYeserday565
This WeekThis Week4107
This MonthThis Month13755
All DaysAll Days520425
38.107.179.219
Guests 8
Registered Users 1
Registered Today 0

Mappa visitatori

Monitoraggio di Apache tramite MRTG PDF Stampa E-mail
(0 - user rating)
Scritto da Alessandro Pensato   
Venerdì 31 Dicembre 2010 17:00

Premessa

In questo documento spiegherà come sfruttare il noto MRTG per monitorare l’attività di Apache. Se bene, MRTG sia stato realizzato per ottenere delle statistiche sulle condizioni di una rete, e anche possibile sfruttarlo, grazie ad un modulo, per monitorare le funzioni vitali di un webserver che usa Apache. Un esempio di configurazione reale in cui viene utilizzato MRTG come strumento per il monitoraggio dello stato di una rete, è quello del GARR. Infatti dal suo sito (http://www.garr.it) si puà accedere a queste informazioni relative a tutti gli enti a cui fornisce connettività (CNR, Università , ENEA; INFN, ecc).

 

Risorse Hardware e Software

Per il mio scopo ho utilizzato un vecchio pc, composto da un processore Pentium 166MMX, 32MB di RAM, Hard Disk da 2GB ide, scheda di rete pci 3Com 905-b 10/100Mbit., dal lato software ho utilizzato Slackware 10, Apache e MRTG.

 

Procuriamoci i pacchetti necessari

Per facilitarvi nell’impresa vi ho messo a disposizione il mio spazio web, da dove potere prelevare i pacchetti necessari senza andare in giro per la rete magari non trovando le versioni utilizzate in questo documento. Di seguito trovate i link per scaricare i pacchetti:

http://www.webalice.it/alepensato/apache-mrtg/apache_1.3.27.tar.gz

http://www.webalice.it/alepensato/apache-mrtg/apache.mrtg.tgz

http://www.webalice.it/alepensato/apache-mrtg/mrtg-2.10.13.tar.gz

http://www.webalice.it/alepensato/apache-mrtg/gd-2.0.26.tar.gz

http://www.webalice.it/alepensato/apache-mrtg/perl-addons.zip

 

Compilazione e installazione dei software sorgenti (come root)

 

Installazione delle librerie GD

Il primo software che installeremo sono le librerie GD, che insieme alle librerie per JPEG, PNG, GIF, permetteranno al software MRTG di creare i grafici relative allo stato del nostro webserver. Eseguite questi comandi passo passo:

cd /tar
tar zxvf gd*
cd gd*
./configure
make && make install
ldconfig

 

Installazione di MRTG

Questo pacchetto, una volta installato, si occuperà di creare i grafici andando a sfruttare in modulo Apache-MRTG che a sua volta consulta il modulo server-status di Apache, per ottenere le informazioni relative al webserver. Eseguite questi comandi passo passo:

cd /tar
tar zxvf mrtg*
cd mrtg*
./configure –prefix=/usr/local/mrtg
make && make install

 

Installazione del pacchetto Perl-Addons

All’interno del file zip troverete altri pacchetti in formato tar.gz prelevati da CPAN e necessari a far funzionare MRTG, in realtà è solo libwww-perl che si lega a MRTG, ma a sua volta necessita di altri pacchetti per poter funzionare quindi dobbiamo installarli. Seguite l’ordine di installazione dei pacchetti per evitare malfunzionamenti dovuti alle dipendenze tra essi:

cd /tar
unzip perl-addons.zip
cd perl-addons
tar zxvf Convert*
cd Convert*
perl Makefile.PL && make && make install
tar zxvf Period*
cd Period*
perl Makefile.PL && make && make install
tar zxvf DB*
cd DB*
perl Makefile.PL && make && make install
tar zxvf Digest-1*
cd Digest-1*
perl Makefile.PL && make && make install
tar zxvf HTML-Tagset*
cd HTML-Tagset*
perl Makefile.PL && make && make install
tar zxvf HTML-Template*
cd HTML-Template*
perl Makefile.PL && make && make install
tar zxvf HTML-Parser*
cd HTML-Parser*
perl Makefile.PL && make && make install
tar zxvf MIME*3*
cd MIME*3*
perl Makefile.PL && make && make install
tar zxvf MIME*P*
cd MIME*P*
perl Makefile.PL && make && make install
tar zxvf Time*
cd Time*
perl Makefile.PL && make && make install
tar zxvf URI*
cd URI*
perl Makefile.PL && make && make install
tar zxvf libwww*
cd libwww*
perl Makefile.PL && make && make install

 

Installazione di Apache

A questo punto dobbiamo installare Apache, il webserver,. La procedura di seguito è valida per una installazione minima necessaria per realizzare il nostro scopo, ma se si vuole si possono abilitare altri moduli in base alle proprie necessità . Seguite i seguenti comandi:

cd /tar
tar zxvf apache_*
cd apache_*
./configure --prefix=/usr/local/apache --enable-module=rewrite --enable-module=status \
--enable-shared=max
make && make install
mkdir /usr/local/apache/etc

 

Configurazione del file httpd.conf di Apache

A questo punto siamo pronti per modificare il file di configurazione httpd.conf di Apache. Per ottenere i grafici dobbiano aggiungere alcune righe nel file in modo che il modulo Apache-MRTG possa leggere le informazioni necessarie. Aprite con un qualsiasi editor di testi il file che potete trovare in /usr/local/apache/conf/httpd.conf:

vi /usr/local/apache/conf/httpd.conf

aggiungete queste brevi righe di comando, salvate il file e avviate Apache:

ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from your-domain.com
</Location>
/usr/local/apache/bin/apachectl start

 

Configurazione del modulo Apache-MRTG

A questo punto siamo pronti per modificare i file di configurazione in modo da poter ottenere i grafici relativi allo stato del webserver. Seguite i seguenti comandi:

cd /tar
tar zxvf apache.mrtg.tgz
cd apache.mrtg*
cp apache.mrtg.pl /usr/local/apache/etc

Cominciamo a modificare il primo dei due file di configurazione del modulo.

vi batch

Correggere il nome del server e con il suo URL.

$BATCHBIN server1   "-url http://server1/server-status?auto"

Modifica del secondo file di configurazione.

vi mkapachemrtg.sh
HTMLHOME="/usr/local/apache/htdocs"
SCRIPTHOME="/usr/local/apache/etc"
URLHOME="http://server.home.local"
CONFHOME="/usr/local/apache/etc"
MRTGBIN="/usr/localmrtg/bin/mrtg"

Ora che abbiamo terminato la configurazione possiamo lanciare in esecuzione il programma che collocherà i file necessari ad ottenere i grafici, nelle directory di lavoro:

./batch

Adesso lanciamo MRTG in modo che crei i grafici per la prima volta:

/usr/local/mrtg/bin/mrtg /usr/local/apche/etc/server1.apache.mrtg.cfg

Puntando con un qualsiasi browser grafico all’URL del nostro webserver http://localhost/server1/apache.html ci troveremo davanti ad una pagina riepilogativa comprendente dei grafici relativi al websserver come: Uptime, CPULoad, Total Access, Child Status, Idle Server, ecc.

 

icon Monitoraggio di Apache tramite MRTG

 

Aggiungi commento


Codice di sicurezza
Aggiorna