jueves, 7 de noviembre de 2013

Nagios - not could be due to Performed to fork () error 'Resource temporarily unavailable'

El otro día me paso que hice una instalación desde cero de Nagios en RHEL 6.4 y al principio no me dí cuenta pero luego me fije que todos los servicios que usaban check_snmp fallaban dando el siguiente error:
Could not open pipe

Revisando el log de Nagios (nagios.log) se veía lo siguiente:
Warning: The check of service 'uptime' on host 'router1' not could be due to Performed  to fork () error 'Resource temporarily unavailable'. The check will be rescheduled.

Buscando un poquito en google encontré en la web comercial de Nagios.
http://support.nagios.com/wiki/index.php/Nagios_XI:FAQs leí que estos errores suelen ser debidos a límites impuestos al usuario en /etc/security/limits.conf
Para verificar los limites actuales podemos ejecutar:
ulimit -a En la web de Nagios nos recomiendan poner los siguientes valores:
* hard memlock 128 #locked memory
* soft memlock 128
* soft nofile 4096 #open files
* hard nofile 4096
* hard nproc 4096  #max user processes
* soft nproc 4096
* hard stack 20480 #stack size
* soft stack 20480

para aplicar los cambios tendremos que reiniciar.
Para verificar los límites después de reiniciar ejecutar:
ulimit -a
Para mejorar aún más el rendimiento de nuestro Nagios podemos deshabilitar el interprete perl embebido, configurando estas 2 variables en nuestro archivo de configuración nagios.cfg.
 enable_embedded_perl=0
 use_embedded_perl_implicitly=0 
Bibligrafía
http://support.nagios.com/wiki/index.php/Nagios_XI:FAQs

No hay comentarios: