Monitoreo remoto de Nagios: NRPE vs. SSH


8

Usamos Nagios para monitorear bastantes (~ 130) servidores. Monitoreamos CPU, disco, RAM y algunas otras cosas en cada servidor. Siempre he usado SSH para ejecutar los comandos remotos, simplemente porque requiere poca o ninguna configuración adicional en el servidor remoto, simplemente instale nagios-plugins, cree el usuario nagios y agregue la clave SSH, todo lo cual he automatizado Un script de shell. Nunca he considerado las implicaciones de rendimiento del uso de SSH sobre NRPE.

No estoy demasiado preocupado por el impacto de la carga en el servidor Nagios (probablemente es demasiado rápido para lo que hace, nunca ha superado el 10% de CPU), pero ejecutamos cada verificación remota cada 30 segundos y cada servidor tiene 5 verificaciones diferentes realizado. Supongo que SSH requiere más recursos para cada cheque, pero ¿hay una gran diferencia? (Es suficiente diferencia para garantizar el cambio a NRPE).

Si es de alguna ayuda, monitoreamos una combinación de servidores físicos (normalmente con 8, 12 o 16 núcleos físicos) e instancias medianas / grandes de Amazon EC2.

Respuestas:


6

Siempre he creído que la ventaja administrativa de SSH (uso push_check ) supera cualquier carga adicional. Las CPU modernas son tan rápidas que el costo de cifrar un puñado de bytes es bastante mínimo, por lo que se trata de ejecutar dos procesos (SSH y el script de verificación) frente a uno (el script de verificación activado por NRPE).

Para los scripts de verificación escritos en un lenguaje interpretado, esperaría que la sobrecarga de encender el intérprete (Perl, Python, Bash) exceda el costo de CPU de iniciar una sesión SSH. Dadas las CPU modernas, es más probable que sus máquinas tengan un disco o memoria limitada en lugar de CPU.

Siempre que su máquina Nagios esté haciendo frente (tiene que configurar 20 conexiones SSH por segundo), erraría por el lado de la conveniencia.

No es realmente una respuesta a su pregunta, más un argumento de que la vida es demasiado corta para preocuparse por eso :)


6

NRPE es un complemento de nagios, es fácil de instalar y gestionará la solicitud de verificación en el archivo de configuración de la sonda. Solo hay una cosa mala sobre nrpe, debe instalarlo en cada servidor que desee monitorear, en linux os es realmente simple, solo yum / apt-get install nrpe, pero en el servidor de Windows necesita instalarlo a través de .exe , y en algún momento necesitará reiniciar su servidor.

Creo que SSH no es la forma más optimizada de usar nagios. NRPE podría ser mucho más eficiente.

Aquí en la documentación de nagios está esta oración:

"El uso de SSH es más seguro que el complemento NRPE, pero también impone una sobrecarga (CPU) mayor en las máquinas de monitoreo y remotas. Esto puede convertirse en un problema cuando comienzas a monitorear cientos o miles de máquinas. Muchos administradores de Nagios optan por usar usando el complemento NRPE debido a la menor carga que impone ".

Ahí está la documentación. Soy un .pdf

En cuanto a mí, uso el protocolo snmp, que es fácil de usar y no necesito ningún tercero instalado en los servidores.


Investigué SNMP pero monitoreamos cosas como las estadísticas de la base de datos / aplicación que no creo que puedan configurarse para usar SNMP. No estoy demasiado preocupado por la seguridad en el monitoreo, SSH fue elegido exclusivamente para evitar una configuración adicional. Al igual que cuando queremos agregar / cambiar un comando con SSH, simplemente cambiamos la configuración de NAGIOS, pero con NRPE también deberíamos agregarlo a nrpe.conf en el servidor remoto.
Mancha

eso es cierto, nrpe es un poco molesto porque necesita agregar .conf al servidor remoto. En cuanto a SNMP, puede hacer lo que quiera (si no me equivoco), puede crear su propio problema con perl y, mediante snmp, usar su sonda, es más fácil que nrpe porque no necesita cambiar .conf en servidor remoto, y menos codicioso que SSH. Bueno, después de eso es solo un punto de vista y para qué usarás nagios. Nrpe es un buen compromiso entre ssh y snmp, al menos para mí. Tenga un buen día.
Anarko_Bizounours

3

Además de las sugerencias dadas en otras respuestas, ¿ha considerado habilitar el ControlMasterarchivo .ssh / config de nagios para aprovechar al máximo la multiplexación ssh ?

En otras palabras, su conexión SSH 'permanecería encendida', por lo que la sobrecarga de establecerla es mínima, ya que esto sucedería solo una vez. Esto aún garantizaría la privacidad con el cifrado y lo protegería de dejar puertos TCP abiertos en los servidores (aunque con firewall). Además, puede limitar lo que un usuario hace a través de ssh limitando los comandos que puede ejecutar


0

No he tenido más que problemas al intentar compilar NRPE en varios sistemas operativos. SSH ha funcionado sin problemas y de manera eficiente y es mucho más fácil de escribir.


44
Esto parece ser más un problema con los sistemas con los que está trabajando que NRPE: no soy fanático de Nagios, pero NRPE es un código bastante simple y nunca he tenido problemas para compilarlo ...
voretaq7
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.