Welcome to Pandora FMS Community!

Find answers, ask questions, and connect with our community around the world.

Welcome to Pandora FMS Community Forums Soporte de la comunidad Dimensionamiento de servidor

  • Dimensionamiento de servidor

    Posted by balanas on May 15, 2009 at 08:49

    Hola.
    Estamos realizando una implementación de la herramienta para monitorizar un total de casi 200 equipos Cisco. Estos equipos son 2801, 3560, 3750 y 6504. La mayoría de ellos son switches y hemos de monitorizar todos los interfaces y en cada uno de ellos ifOperStatus, IfOutOctects, ifInOctects, if…Discards, además de HostAlive y HostLatency.
    Por tanto tendremos 200 agentes con un montón de módulos, en total tenemos unos 9000, todos ellos SNMP (excepto los ICMP).
    Por ahora estamos en pruebas y lo estamos haciendo en una máquina virtual creada con 1,5 GB RAM y 2 procesadores, corriendo Ubuntu Sever 9.04, basada en VMware Infraestructure sobre una máquina con dos Intel Xeon E5420 a 2,5 Mhz y 4 Gb de RAM.
    Nos encontramos con el problema de que esto nos bloquea la máquina y no se refrescan los módulos o tardan 30 minutos y eso que comprobamos cada 300 segundos.
    En la configuración de pandora server hemos probado a aumentar los network_threads desde 2 a 70 (2,3,5,10,20,30,50 y 70) pero siempre con los mismos resultados.
    Las preguntas son:
    ¿Qué dimensionamiento de máquina necesitamos para poder mover esta cantidad de módulos?
    ¿Cómo se puede optimizar pandora_server.conf para que funcione decentemente?
    En un futuro se plantea llegar a los 700 equipos, por lo que el número de módulos se dispararán.
    Si necesitan más información no duden en preguntar y gracias por las respuestas.

    Saludos.
    Luis

    Sancho replied 15 years, 6 months ago 2 Members · 11 Replies
  • 11 Replies
  • Sancho

    Administrator
    May 20, 2009 at 05:25
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    Necesitas no solo una máquina más potente, sino un adecuando dimensionamiento de la BBDD, el sistema operativo y ciertos procesos de mantenimiento y rotación de datos. Todo esto lo tienes en la documentación.

    Basicamente necesitas al menos una máquina con dos CPU, 4 GB de RAM, discos rápidos y un muy buen ajuste de la BBDD (en la doc. habla de esto). Además necesitarás aplicar los ultimos parches de la 2.1 para obtención de snmp mediante ejecución externa.

    Nuestras ultimas pruebas de rendimiento con una sola máquina fisica, sitúan el limite de la 2.1 en 3000 agentes, con 15,000 modulos. La 3.0 tiene un horizonte de escalabilidad en 6,000 agentes con 100,000 modulos. Tenemos un cliente que tiene un pandora corriendo pings contra 200 dispositivos cada 20 segundos, sin demora. Es un tema de ajuste fino de la herramienta.

    Para entornos críticos de alto rendimiento, generalmente la virtualización no va nada fina, al menos cuando hay monitorización de red de por medio.

  • balanas

    Member
    May 21, 2009 at 06:33
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    La verdad que tenemos muchos problemas con la virtualización, pero como estamos probando varias herramientas es la mejor opción.

    En cuanto a lo de obtener snmp mediante ejecución externa, supongo que te refieres a obtenerlo con iReasoning o TKMib y enviarle los datos a pandora. ¿Podrías detallarme más el proceso para hacerlo? Sobre todo cómo recoge los datos Pandora, si hay que dar de alta un módulo para que reciba los datos o varios módulos, uno por cada snmp. Gracias.

    La versión de Pandora que usamos es la 3.0 de los repositorios.

    Saludos.
    Luis

  • Sancho

    Administrator
    June 1, 2009 at 04:59
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    Pandora de momento en la 3.0 y la 2.1.1 recoge los datos mediante la llamada a snmget que es threadsafe y permite mucha mayor eficiencia que las llamadas nativas bloqueantes del perl que haciamos antes (2.0). Tenemos previso incorporar llamadas de libreria en C desde el código en algun momento de la 3.0, pero el rendimiento será bastante similar.

    Te recomiendo que bases la monitorizacion SNMP en OID recogidos con una de esas herramientas y pasado a pandora usando su libreria de modulos de usuario, de forma que las puedas reutilizar. Básicamente tienes que dar de alta un módulo por cada OID, pero si por ejemplo defines un modulo generico tipo “snmp traffic in” para la interfaz 0 ese servirá para cualquier dispositivo ya que la OID es comun, asi que insisto, define los que necesites como “network components” y luego reutilizalos en los agentes, uno a uno, o haciendo tus propias plantillas.

  • balanas

    Member
    June 1, 2009 at 05:54
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    Finalmente nos hemos decidido por no virtualizar y estamos usando Pandora sobre Ubuntu Server directamente. Ha mejorado bastante el rendimiento pero seguimos con problemas para actualizar datos.

    Las máquinas que monitorizamos son routers Cisco y no conocemos la situación exacta de los interfaces en cada una de ellas para poder hacer plantillas, así que nos hemos creado un script que mediante el uso de snmpwalk nos descubre los interfaces LAN, ADSL, RDSI, FO… y nos genera consultas SQL que acceden directamente a la base de datos creando los agentes y los módulos para cada uno de ellos.

    Adjunto imágenes para que observes el estado que tenemos de los monitores.

  • Sancho

    Administrator
    June 1, 2009 at 06:06
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    Puedes poner por aqui el pandora_server.conf y la salida de los siguientes comandos ?

    SSOO:

    cat /proc/cpuinfo
    cat /proc/meminfo
    uptime

    Pandora (procesos mem/cpu):

    ps aux | grep pandora

    El dimensionamiento del mysql:

    cat /etc/my.cnf

    Un status del mysql (xxx es el pass del root de mysql)

    echo “show status;” | mysql -u root -pxxxx

  • balanas

    Member
    June 1, 2009 at 06:41
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    Adjunto documentos con todo lo que me has solicitado. Gracias.

  • Sancho

    Administrator
    June 1, 2009 at 10:17
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    Seria interesante tb que le pasaras este script (es nuevo, lo acabo de hacer pensando en tu problema):

    http://pandora.svn.sourceforge.net/viewvc/pandora/trunk/pandora_console/extras/pandora_diag.php?view=log

    Mas informacion en:

    http://openideas.info/wiki/index.php?title=Pandora_3.0:New_options_in_development_version#pandora_diag.php

    La idea es tener una serie de scripts de diagnostico que nos ayuden a detectar problemas como el tuyo. Voy a analizar lo que me has mandado y luego si puedes enviarme los resultados del pandora_diag.php

  • Sancho

    Administrator
    June 1, 2009 at 10:24
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    Por de pronto baja el server_threshold a 1 en el pandora_server.conf

    Sube network_threads a 35 si lo que más te preocupa son los chequeos de red.

    Segun lo que me mandas:

    ::::::::::::::
    ps aux – grep pandora.txt
    ::::::::::::::
    root 8138 0.0 0.0 7540 900 pts/1 R+ 13:35 0:00 grep pandora
    root 10866 51.7 6.5 1132460 261432 ? Ssl May29 2184:31 /usr/bin/perl
    /usr/local/bin/pandora_server /etc/pandora/pandora_server.conf -D
    root 28040 0.0 0.0 44784 2272 ? Ss May29 0:00 /usr/sbin/snmpt
    rapd -t -On -n -a -Lf /var/log/pandora/pandora_snmptrap.log -p /var/run/pandora_
    snmptrapd.pid -F %4y-%02.2m-%l[**]%02.2h:%02.2j:%02.2k[**]%a[**]%N[**]%w[**]%W[*
    *]%q[**]%vn

    ::::::::::::::
    uptime.txt
    ::::::::::::::
    13:34:45 up 3 days, 22:08, 3 users, load average: 5.79, 6.00, 5.84

    Tienes la maquina bastante bastante bastante cargada.

    ¿Puedes mandarme un “ps aux” completo?.

    Estas pasando el script de mantenimiento de la BBDD de forma diaria ?

  • balanas

    Member
    June 1, 2009 at 10:35
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    [cite]Posted By: nil[/cite]
    Seria interesante tb que le pasaras este script (es nuevo, lo acabo de hacer pensando en tu problema):

    http://pandora.svn.sourceforge.net/viewvc/pandora/trunk/pandora_console/extras/pandora_diag.php?view=log

    Mas informacion en:

    http://openideas.info/wiki/index.php?title=Pandora_3.0:New_options_in_development_version#pandora_diag.php

    La idea es tener una serie de scripts de diagnostico que nos ayuden a detectar problemas como el tuyo. Voy a analizar lo que me has mandado y luego si puedes enviarme los resultados del pandora_diag.php

    Pandora FMS Diag tool v3.0.0
    SQL error: Table ‘pandora.tlocal_component’ doesn’t exist (‘SELECT COUNT(*) FROM tlocal_component’) in /var/www/pandora_console/include/functions_db.php on line 1664
    Table/Item Data items
    Pandora FMS Build PC090512
    Pandora FMS Version v3.0-dev
    Homedir /var/www/pandora_console
    HomeUrl /pandora_console
    tagente 169
    tagent_access 4112568
    tagente_datos 1370386
    tagente_datos_string 0
    tagente_estado 8108
    tagente_modulo 8108
    talert_actions 1
    talert_commands 7
    talert_template_modules 169
    talert_snmp 0
    tevento 10695
    tlayout 0
    tlocal_component
    tplanned_downtime 0
    tplugin 0
    trecon_task 0
    tserver 6
    treport 1
    ttrap 0
    tusuario 1
    Update Key PANDORA-FREE
    Updating code path /var/www/pandora_console
    Keygen path /usr/share/pandora/util/keygen
    Current Update # 0

  • balanas

    Member
    June 1, 2009 at 10:42
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    [cite]Posted By: nil[/cite]
    Por de pronto baja el server_threshold a 1 en el pandora_server.conf

    Sube network_threads a 35 si lo que más te preocupa son los chequeos de red.

    Segun lo que me mandas:

    ::::::::::::::
    ps aux – grep pandora.txt
    ::::::::::::::
    root 8138 0.0 0.0 7540 900 pts/1 R+ 13:35 0:00 grep pandora
    root 10866 51.7 6.5 1132460 261432 ? Ssl May29 2184:31 /usr/bin/perl
    /usr/local/bin/pandora_server /etc/pandora/pandora_server.conf -D
    root 28040 0.0 0.0 44784 2272 ? Ss May29 0:00 /usr/sbin/snmpt
    rapd -t -On -n -a -Lf /var/log/pandora/pandora_snmptrap.log -p /var/run/pandora_
    snmptrapd.pid -F %4y-%02.2m-%l[**]%02.2h:%02.2j:%02.2k[**]%a[**]%N[**]%w[**]%W[*
    *]%q[**]%vn

    ::::::::::::::
    uptime.txt
    ::::::::::::::
    13:34:45 up 3 days, 22:08, 3 users, load average: 5.79, 6.00, 5.84

    Tienes la maquina bastante bastante bastante cargada.

    ¿Puedes mandarme un “ps aux” completo?.

    Estas pasando el script de mantenimiento de la BBDD de forma diaria ?

    Llevamos solo 3 días con la máquina funcionando en condiciones, el script todavía no lo hemos pasado.
    Adjunto “ps aux” completo.

  • Sancho

    Administrator
    June 2, 2009 at 15:56
    2229 Karma points
    Community awards: bulb Bright ideas
    Community rank: tentacle_master_icon Tentacle Master
    Like it
    Up
    0
    Down
    Drop it
    ::

    El problema claramente es el tema del script. Este script borra las entradas en la tabla de acceso, que se llena “con la mirada” sobre todo si tienes muchos datos de red.

    tagent_access 4112568

    Tienes 4 millones de registros en esa tabla. Es más, metete en el plugin de administrador de BD y ejecuta

    DELETE FROM tagent_access

    Sin piedad, con eso te empezará a ir un poco mejor. Pero necesitas pasar el script aunque no borres datos (pueds cambiar los parmaetros de borrado y compactacion para que sean 300 dias p.e).

    Respecto al tema de los procesos:

    mysql 2797 9.1 23.8 3257412 949496 ? Sl 13:49 20:44 /usr/sbin/mysqld –basedir=/usr –datadir=/var/lib/mysql –

    Tienes el mysql que solo tiene el 24% de la ram. Deberiais ajustar (aqui ya es prueba y error, subiendo la memoria de Innodb y la cache) para que tenga al menos el 50% de la memoria total, el resto de procesos no la van a usar y pandora no deberia coger mas del 20% en vuestro sistema.