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:49Hola.
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.
LuisSancho replied 15 years, 6 months ago 2 Members · 11 Replies -
11 Replies
-
::
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.
-
::
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 -
::
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.
-
::
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.
-
::
Puedes poner por aqui el pandora_server.conf y la salida de los siguientes comandos ?
SSOO:
cat /proc/cpuinfo
cat /proc/meminfo
uptimePandora (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
-
-
::
Seria interesante tb que le pasaras este script (es nuevo, lo acabo de hacer pensando en tu problema):
Mas informacion en:
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
-
::
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.84Tienes la maquina bastante bastante bastante cargada.
¿Puedes mandarme un “ps aux” completo?.
Estas pasando el script de mantenimiento de la BBDD de forma diaria ?
-
::
[cite]Posted By: nil[/cite]
Seria interesante tb que le pasaras este script (es nuevo, lo acabo de hacer pensando en tu problema):Mas informacion en:
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 -
::
[cite]Posted By: nil[/cite]
Por de pronto baja el server_threshold a 1 en el pandora_server.confSube 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.84Tienes 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. -
::
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.