Saltar al contenido

Monitoreo del sistema con notificaciones por correo electrónico

Solución:

Le daré una pequeña lista de herramientas, mientras que personalmente recomendaría Nagios simplemente como estoy acostumbrado. Viene con una gran base de usuarios, una buena colección de complementos, etc., pero he escuchado cosas buenas sobre Icinga así como.

Tenga en cuenta que configurar Nagios o Icinga Tomará algún tiempo hasta que tenga una configuración que funcione perfectamente y que cubra / monitoree todos sus servicios existentes. Lo más probable es que el inicio no sea tan fácil, pero una vez que lo ha hecho funcionar, es una configuración encantadora que notificará a todos sus servicios definidos si los estados cambian, por lo que es algo que se puede informar / definir como crítico

Nombres y enlaces de proyectos

En primer lugar, una descripción general rápida:

Configuraciones de cliente y servidor

  • Nagios
  • Munin
  • Icinga
  • Spiceworks
  • Monit
  • Cactus
  • Zabbix

Otro software interesante

  • Fumar (función limitada)

Configuraciones de un solo host

  • Miradas
  • Monitorix

Más información

Sobre Nagios

Wikipedia escribe

Nagios / ˈnɑːɡiːoʊs /, ahora conocido como Nagios Core, es una aplicación de software de computadora gratuita y de código abierto que monitorea sistemas, redes e infraestructura. Nagios ofrece servicios de monitoreo y alerta para servidores, conmutadores, aplicaciones y servicios. Alerta a los usuarios cuando algo sale mal y les alerta por segunda vez cuando el problema se ha resuelto.

Imagen de ejemplo: muestra 1 de varias vistas que tiene:

ingrese la descripción de la imagen aquí

Aquí hay una buena publicación de AskUbuntu sobre cómo instalar Nagios. Nagios Exchange ofrece una gran colección de complementos, complementos, documentación, extensiones y más.

Sobre Munin

Wikipedia escribe

Munin es una aplicación de software de monitoreo de sistemas informáticos, monitoreo de redes y monitoreo de infraestructura de código abierto y gratuita. Ofrece servicios de monitoreo y alerta para servidores, conmutadores, aplicaciones, servicios, etc. Alerta a los usuarios cuando las cosas van mal y les alerta por segunda vez cuando el problema se ha resuelto

Imagen de ejemplo

ingrese la descripción de la imagen aquí

Sobre Icinga

Wikipedia escribe

Icinga es un sistema informático de código abierto y una aplicación de supervisión de redes. Originalmente se creó como una bifurcación de la aplicación de monitoreo del sistema Nagios en 2009.

Icinga está intentando superar las deficiencias percibidas en el proceso de desarrollo de Nagios, además de agregar nuevas características como una interfaz de usuario moderna de estilo Web 2.0, conectores de base de datos adicionales (para MySQL, Oracle y PostgreSQL) y una API REST que permite a los administradores integrar numerosas extensiones sin modificaciones complicadas del núcleo de Icinga.

Imagen de ejemplo que muestra 1 de varias vistas:

ingrese la descripción de la imagen aquí

Sobre Spiceworks

Wikipedia escribe:

Spiceworks es una red profesional para la industria de la tecnología de la información (TI) que tiene su sede en Austin, Texas. La empresa fue fundada en enero de 2006 por Scott Abel, Jay Hallberg, Greg Kattawar y Francis Sullivan para desarrollar software de gestión de TI.

Spiceworks es una comunidad en línea donde los usuarios pueden colaborar y buscar asesoramiento entre sí y también participar en un mercado para comprar productos y servicios relacionados con TI. Se estima que la red será utilizada por más de seis millones de profesionales de TI y 3.000 proveedores de tecnología.

Sobre monit

Wikipedia escribe

Monit es una herramienta de supervisión de procesos de código abierto y gratuita para Unix y Linux. Con Monit, el estado del sistema se puede ver directamente desde la línea de comandos o mediante el servidor web HTTP (S) nativo. Monit saltó a la popularidad con Ruby on Rails y el servidor web Mongrel,[citation
needed] porque se necesitaba una herramienta que pudiera administrar los muchos procesos idénticos de Mongrel que debían ejecutarse para admitir un sitio escalable de Ruby on Rails, y Monit era especialmente adecuado para las necesidades de la comunidad de Ruby on Rails. Muchos sitios populares de Rails han utilizado Monit, incluidos Twitter y scribd.

Acerca de los cactus

Wikipedia escribe:

Cacti es una herramienta de creación de gráficos y monitoreo de red de código abierto basada en la web diseñada como una aplicación frontal para la herramienta de registro de datos de código abierto estándar de la industria RRDtool. Cacti permite al usuario sondear servicios a intervalos predeterminados y graficar los datos resultantes. Generalmente se usa para graficar datos de series de tiempo de métricas como la carga de la CPU y la utilización del ancho de banda de la red. Un uso común es monitorear el tráfico de la red sondeando un conmutador de red o una interfaz de enrutador a través del Protocolo simple de administración de redes (SNMP).

El front-end puede manejar varios usuarios, cada uno con sus propios conjuntos de gráficos, por lo que a veces los proveedores de alojamiento web (especialmente el servidor dedicado, el servidor privado virtual y los proveedores de coubicación) lo utilizan para mostrar estadísticas de ancho de banda para sus clientes. Se puede usar para configurar la recopilación de datos en sí, lo que permite monitorear ciertas configuraciones sin ninguna configuración manual de RRDtool. Cacti se puede extender para monitorear cualquier fuente a través de scripts de shell y ejecutables.

Sobre Zabbix

Wikpedia escribe:

Zabbix es un software empresarial de monitoreo de código abierto para redes y aplicaciones, creado por Alexei Vladishev. Está diseñado para monitorear y rastrear el estado de varios servicios de red, servidores y otro hardware de red.

Zabbix usa MySQL, PostgreSQL, SQLite, Oracle o IBM DB2 para almacenar datos. Su backend está escrito en C y el frontend web está escrito en PHP. Zabbix ofrece varias opciones de monitoreo

Puede utilizar varias soluciones. Uno de ellos es monit.

Desde la línea de comando, simplemente ejecute el siguiente comando:

sudo apt-get install monit

Monit ahora debería estar instalado y accesible a través de una de las siguientes URL:

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Monitorear la configuración

Antes de que puedas empezar a usar Monit para la supervisión automática del servidor, debe realizar una configuración básica. Primero haga una copia de seguridad del valor predeterminado existente Monit configuración usando el siguiente comando:

sudo mv /etc/monit/monitrc /etc/monit/monitrc.bak

A continuación, cree un nuevo monitrc archivo usando el comando

sudo /etc/monit/monitrc 

y copie el siguiente contenido.

# How often in seconds should monit check your services.
set daemon 120

set logfile /var/log/monit.log
set idfile /var/lib/monit/id
set statefile /var/lib/monit/state

# Configure your SMTP out server. 
set mailserver smtp-server.columbus.rr.com port 25,localhost

set eventqueue
    basedir /var/lib/monit/events # set the base directory where events will be stored
    # optionally limit the queue size
    slots 100 

# Use one of the following 2 lines. The second line alerts on every little change and can be annoying.
set alert [email protected] but not on  instance, pid, ppid  #does not send alert on pid changes
#set alert [email protected] 

set httpd port 2812 and
    #Change username and password
    allow Username:Password
    # To enable SSL for WebUI uncomment the next 2 lines
    #ssl enable
    #pemfile /path/to/unified/certificate.pem
    # To restrict access to localhost only uncomment the following line
    #allow localhost

include /etc/monit/conf.d/*

Las líneas que comienzan con # son comentarios que le ayudarán a personalizar la configuración. Asegúrese de tener al menos el correo electrónico de administrador, el servidor SMTP y el puerto SMTP configurados correctamente. También debería considerar cambiar el nombre de usuario y la contraseña de Monit WebUI. Si tiene un certificado SSL, puede habilitarlo también para el acceso HTTPS

Por ahora, use los siguientes comandos para asegurarse de que Monit esté funcionando bien.

Probar Monit configuración para errores de sintaxis:

sudo monit -t

Para iniciar Monit:

sudo monit

Para comprobar el estado de seguimiento:

sudo monit status

Monitoreo de carga del sistema con Monit

Se requiere que tenga una instancia de Monit en funcionamiento con un /etc/monit/monitrc expediente. Las configuraciones de Monit para varios servicios se cargan desde /etc/monit/conf.d carpeta. Para monitorear la carga del servidor con Monit, crear un Monit archivo de configuración usando el siguiente comando:

sudo /etc/monit/conf.d/systemload

Copie el siguiente contenido, guárdelo y salga

# domain.com could be IP, hostname, or localhost
check System domain.com
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 75% then alert
    if swap usage > 25% then alert
    if cpu usage (user) > 80% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

Este código hará Monit enviarle una alerta por correo electrónico cuando una de las condiciones anteriores (por ejemplo, la carga promedio es >4 durante al menos 1 min o cuando más de 75% RAM está lleno) se cumplen. Puede personalizar las reglas anteriores como desee. A continuación se muestra un ejemplo de alerta por correo electrónico enviada por Monit junto con una descripción de la condición que provocó la alerta.

Prueba y recarga Monit

Una vez que realice los cambios, debe probar Monit configuración:

sudo monit -t

Debería ver el siguiente mensaje: Control File Syntax OK.

Luego, verifique si Monit ya se está ejecutando con el siguiente comando:

sudo /etc/init.d/monit status

Si Monit está funcionando, recarga Monit configuraciones usando el siguiente comando:

sudo /etc/init.d/monit reload

Ahora, encienda su navegador web y visite una de las siguientes URL dependiendo de cómo esté configurado su Monit (asegúrese de usar el número de puerto correcto):

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Debería ver el estado del sistema, la carga, la carga de la CPU, la carga de la memoria y la carga de intercambio

Supervisión de almacenamiento con Monit

A continuación, se requiere que tenga un Monit instancia con un adecuado /etc/monit/monitrc expediente. Monit las configuraciones para varios servicios se cargan desde /etc/monit/conf.d carpeta. Para la supervisión del espacio de accionamiento con Monit, create aMonit` archivo de configuración usando el siguiente comando:

sudo /etc/monit/conf.d/storagespace

Copie el siguiente contenido, guárdelo y salga

# add each drive you want to monitor below
check filesystem Ubuntu with path /dev/sda1
    if space usage > 90% then alert
check filesystem Home with path /dev/sda3
    if space usage > 90% then alert
check filesystem Media with path /dev/sdb1
    if space usage > 90% then alert

El código anterior controlará el espacio del disco duro en 3 particiones en 2 unidades. Si alguno de ellos está lleno en más del 90%, recibirá una alerta.

También puede monitorear servicios específicos.

Monitorear el servidor Apache con Monit

Configuración de la supervisión del servidor Apache con Monit Es con Monit’s Plantillas de configuración prefabricadas. Todo lo que tiene que hacer es copiar la plantilla existente de /etc/monit/monitrc.d para /etc/monit/conf.d carpeta.

sudo cp /etc/monit/monitrc.d/apache2 /etc/monit/conf.d/

En lugar de copiar, también puede crear un enlace simbólico. El proceso del servidor web Apache crea apache2.pid. El monitor de código anterior apache2.pid archivo y si no existe, Monit intentará reiniciar Apache. Un reinicio activará una alerta por correo electrónico. Si el reinicio falla varias veces, Monit deja de monitorear el servidor Apache.

También puedes echar un vistazo a León marino Puede configurar alertas personalizadas para el uso de CPU, memoria, etc. Además, también puede agregar sus propias métricas y configurar notificaciones para ellas. Además, puede programar los comandos para que se ejecuten a intervalos específicos y ver sus resultados en una pantalla de línea de tiempo. Puede encontrar más información aquí.

Si te animas, puedes dejar una crónica acerca de qué te ha parecido esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *