Languages

User login


Instal·lant i configurant un servidor de gràfiques de guifi en un Debian Etch


Hem va costar de posar en funcionament un servidor de gràfiques de guifi, detallo els pasos per si algu altre ho ha de fer. Aquesta es la meva “recepta”, la podeu variar :-) Espero no deixar-me res. En primer lloc anem a http://guifi.net/ca/node/add/guifi-service i creem un servidor de gràfiques (SNP Graph Server). Guardem la ID del servidor de gràfiques, en el meu cas era el 9039. Hem d'anar a tots els trastos i nodes que faran servir aquest servidor i seleccionar-lo en de la llista de servidors de gràfiques. En el meu cas ho vaig fer en un Debian 4.0 (Etch). Apart del php5 i apache2 que ja els tenia ,vaig tenir que instalar:

 

apt-get install rrdtool librrdp-perl librrds-perl mrtg mrtg-rrd subversion php5-cli

  Despres heu d'obtenir el snpservices del svn de guifi. Heu d'estar registrats a lafarga.cat perque us demanara nom d'usuari i password:

cd /var/www svn checkout https://svn.projectes.lafarga.cat/svn/guifi/snpservices

  Es crea una carpeta a /var/www/snpservices on hi ha tot el que cal. Ara feu que l'apache2 apunti a la carpeta graphs:

Alias /guifigraphs /var/www/snpservices/graphs

  En el meu cas al crear el servidor de gràfiques a la web de guifi.net li vaig que la url per accedir a les grafiques era http://santafe1.dyndns.org:2000/guifigraphs/graphs.php. Ara cal donar permisos d'escriptura per a tothom del subdirectir tmp, crear un config.php i un parell de subdirs per al rrdtool:

chmod a+rw /var/www/snpservices/tmp
cp /var/www/snpservices/common/config.php.template /var/www/snpservices/common/config.php
mkdir /var/www/snpservices/rrdb
mkdir /var/www/snpservices/rrimg

  Configurem amb el nostre editor preferit el fitxer de configuració /var/www/snpservices/common/config.php. Canviem els següents paràmetres, ajustant-los a la nostres dades, en comptes de 9039 heu de posar la ID del vostre servidor de gràfiques:

$snp_path='/var/www/html/snpservices';
$SNPGraphServerId = 9039;
$MRTGConfigSource='http://www.guifi.net/snpservices/graphs/cnml2mrtgcsv.php?server=9039';
$CNMLSource='http://www.guifi.net/snpservices/common/qnodes.php?nodes=%s';
$rrddb_path='/var/www/snpservices/rrdb/';
$rrdimg_path='/var/www/snpservices/rrimg/';

  Ara nomes cal fer un parell d'entrades al crontab. La primer perque cada mitja hora descarregui de guifi.net la llista de trastos dels que ha de fer grafiques, i el segon perque cada 5 minuts reculli les dades de tots els trastos:

crontab -e
*/30 * * * * cd /var/www/snpservices/graphs; php mrtgcsv2mrtgcfg.php
*/5 * * * * env LANG=c /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l

  Per no tenir que esperar, forceu la primera descarrega dels trastos a graficar des de guifi.net executant:

cd /var/www/snpservices/graphs; php mrtgcsv2mrtgcfg.php

  I ja esta, espero que tingueu mes sort que jo i us vagi tot a la primera.

 

Comentaris

Opcions de visualització de comentaris

Selecciona la vostra manera preferida de visualitzar els comentaris i feu clic en "Desa la configuració" per activar els canvis.

esmenes

Felicitats a tothom per haver posat a l'abast dels newbies el muntar servidors de gràfiques. Adjunto les modificacions que he fet per muntar-ne un:

  • /var/www/snpservices/common/config.php
    $CNMLSource='http://guifi.net/snpservices/common/qnodes.php?nodes=%s';
  • # php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php

    Warning: include_once(../common/config.php.template): failed to open stream: No such file or directory in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 6)

    Warning: include_once(): Failed opening '../common/config.php.template' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 6)

    SOLUCIÓ: fer les crides a la funció include_once() amb direccionament absolut a /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php:

    <?php

    if (file_exists("../common/config.php")) {
       include_once("/var/www/snpservices/common/config.php");
    } else {
      include_once("/var/www/snpservices/common/config.php.template");
    }

    ...
    ?>

  • # /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l
    -----------------------------------------------------------------------
    ERROR: Mrtg will most likely not work properly when the environment
           variable LANG is set to UTF-8. Please run mrtg in an environment
           where this is not the case. Try the following command to start:

           env LANG=C /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l
    -----------------------------------------------------------------------

  • # env LANG=C /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l

    Can't exec "/etc/mrtg/ping.sh": No such file or directory at /usr/bin/mrtg line 1879.
    2007-07-22 16:10:23: WARNING: Running '/etc/mrtg/ping.sh 10.139.6.97': No such file or directory
    2007-07-22 16:10:23: WARNING: Could not get any data from external command '/etc/mrtg/ping.sh 10.139.6.97'
    Maybe the external command did not even start. (No such file or directory)

    2007-07-22 16:10:23: WARNING: Problem with External get '/etc/mrtg/ping.sh 10.139.6.97':
       Expected a Number for 'in' but nothing'

    SOLUCIÓ:
    # mkdir /etc/mrtg
    # cp /var/www/snpservices/common/ping.sh /etc/mrtg/

  • # crontab -l
    */30 * * * * /bin/date > /var/log/local/mrtgcsv2mrtgcfg.log && /usr/bin/php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php >> /var/log/local/mrtgcsv2mrtgcfg.log 2>&1
    */5 * * * * /bin/date &> /var/log/local/mrtg.log && env LANG=C /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l >> /var/log/local/mrtg.log 2>&1

    així tindrem un restre de logs a /var/log/local/ (cal crear prèviament aquest directori)

estaria bé fer un patch al README

I pujar-lo junt amb el codi.
Gràcies cracks! ;)

es podria fer un script?

    Hola Super craks :=)
Es podria automatizar tot el proces?
jo ni idea eeeee
be gracies

imatge de sinuso.org

No M'hen surt-ho

# php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php
1192455603
Warning: fputs(): supplied argument is not a valid stream resource in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 24

Warning: fclose(): supplied argument is not a valid stream resource in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 91
linksysds:/home/linksysds#

Mirant el codi font de

Mirant el codi font de mrtgcsv2mrtgcfg.php, sembla que no pot accedir o no te permisos per crear:

/var/www/snpservices/data/mrtg.cfg

Mira't els permisos dels directoris.

imatge de sinuso.org

no controlo massa, permisos

no controlo massa, permisos per a quin usuari root, el meu, apache, mrtg?

Gracies

Prova d'executar el: # php

Prova d'executar el:

# php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php

com a superusuari, posa-li un sudo davant potser ... Com que aixo va al crontab, posa-ho al crontab del superusuari.

imatge de sinuso.org

# sudo php

# sudo php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php
1192472948
Warning: fputs(): supplied argument is not a valid stream resource in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 24

Warning: fclose(): supplied argument is not a valid stream resource in /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php on line 91

# crontab -l
@hourly /etc/webmin/webalizer/webalizer.pl /var/log/apache2/access.log -u all >/dev/null 2>&1
0 0-23/6 * * * /usr/local/uvscan/uvupdate.sh -u all >/dev/null 2>&1
*/30 * * * * /bin/date > /var/log/local/mrtgcsv2mrtgcfg.log && /usr/bin/php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php >> /var/log/local/mrtgcsv2mrtgcfg.log 2>&1
*/5 * * * * /bin/date &> /var/log/local/mrtg.log && env LANG=C /usr/bin/mrtg /var/www/snpservices/data/mrtg.cfg --lock-file /var/lock/mrtg/guifi_l >> /var/log/local/mrtg.log 2>&1

Envia'm un email a

Envia'm un email a joan@impacte.cat Tambe estic al MSN com a acidbits@hotmail.com
Si puc entrar al servidor via ssh li fare una ullada.

Despres de mirar-ho, he vist

Despres de mirar-ho, he vist que tenia un error al manual. Ara ja esta rectificat, al crontab es tenia que posar:

*/30 * * * * cd /var/www/snpservices/graphs; php mrtgcsv2mrtgcfg.php

en comptes de:

*/30 * * * * php /var/www/snpservices/graphs/mrtgcsv2mrtgcfg.php

[Sorry]

imatge de sinuso.org

Collonut !!! Ja funciona,

Collonut !!!
Ja funciona, merci per la ajuda i el document :)

He estat instal·lant un

He estat instal·lant un altre servidor de grafiques i he anat modificant el meu comesfa afegint les teves esmenes que m'han fet falta per a que funcioni. Gràcies.

Molt més senzill!

En Carles Gaudall va fer uns quants paquets debian per a facilitar l'instal·lació de serveis, entre els quals n'hi ha un per als servidors de gràfiques que va de conya (gestiona els crons, els logrotates, etc.): http://guifi.net/node/10487

només cal:
1) donar d'alta un servidor de gràfiques (SNP Graph Server) a http://guifi.net/ca/node/add/guifi-service

2) afegir a l'/etc/apt/sources.list la línia següent a l'/etc/apt/sources.list:

deb http://tramuntana.evt.cat/mirror/debian/ ./

i fer:

$ aptitude update
[...]
$ aptitude search snpservices
p  snpservices - This software provides graph services in the context of the   
$ aptitude install snpservices

i contestar les preguntes que fa l'instal·lador.


[26/3/2008 - El que ve a continuació està deprecated pel mètode anterior]