Monit es una herramienta gratuita de código abierto y muy útil que monitorea y administra automáticamente el proceso del servidor , archivos , directorios , sumas de verificación , permisos , sistemas de archivos y servicios como Apache , Nginx , MySQL , FTP , SSH , Sendmail , <strong>etc.en</strong> un sistema basado en <strong>UNIX / Linux.</strong> sistemas y proporciona una excelente y útil funcionalidad de monitoreo a los administradores del sistema.
El monit tiene una interfaz web fácil de usar donde puede ver directamente el estado del sistema y configurar los procesos utilizando el servidor web HTTP (S) nativo o mediante la interfaz de línea de comandos. Esto significa que debe tener un servidor web como Apache o Nginx instalado en su sistema para acceder y ver la interfaz web de monit.
Lea también : 10 herramientas de supervisión del rendimiento de Linux
Qué puede hacer Monit
Monit tiene la capacidad de iniciar un proceso si no se está ejecutando, reiniciar un proceso si no responde y detener un proceso si utiliza muchos recursos. Además, también puede usar Monit para monitorear archivos , directorios y sistemas de archivos para cambios , cambios de suma de verificación , cambios de tamaño de archivo o cambios de marca de tiempo . Con Monit puede monitorear el puerto TCP / IP de los hosts remotos , los protocolos del servidor y el ping . Monit mantiene su propio archivo de registro y alerta sobre cualquier condición de error crítico y estado de recuperación.
Este artículo está escrito para describir una guía simple sobre la instalación y configuración de Monit en sistemas operativos RHEL , CentOS , Fedora , Ubuntu , Linux Mint y Debian Linux, pero también debería ser fácilmente compatible con Scientific Linux .
Paso 1: Instalar Monit
De forma predeterminada, la herramienta Monit no está disponible en los repositorios base del sistema, debe agregar y habilitar el repositorio epel de terceros para instalar el paquete monit en sus sistemas RHEL / CentOS . Una vez que haya agregado el repositorio de epel, instale el paquete ejecutando el siguiente comando yum . Para Ubuntu / Debian / Linux Mint, el usuario puede instalarlo fácilmente usando el comando apt-get como se muestra.
En RedHat / CentOS / Fedora /
# yum install monit
En Ubuntu / Debian / Linux Mint
$ sudo apt-get install monit
Paso 2: configurar Monit
Monit es muy fácil de configurar, de hecho, los archivos de configuración se crean para ser muy fáciles de leer y para que los usuarios los entiendan más fácilmente. Está diseñado para monitorear los servicios en ejecución cada 2 minutos y mantiene los registros en ” / var / log / monit “.
Monit tiene su interfaz web que se ejecuta en el puerto 2812 mediante el servidor web. Para habilitar la interfaz web, debe realizar cambios en el archivo de configuración de monit. El archivo de configuración principal de monit ubicado en /etc/monit.conf en ( RedHat / CentOS / Fedora ) y el archivo / etc / monit / monitrc para ( Ubuntu / Debian / Linux Mint ). Abra este archivo con el editor de su elección.
# vi /etc/monit.conf
$ sudo vi /etc/monit/monitrc
A continuación, descomente la siguiente sección y agregue la dirección IP o el nombre de dominio de su servidor, permita que cualquiera se conecte y cambie el usuario y la contraseña de monit o puede usar los predeterminados.
set httpd port 2812 and use address localhost # only accept connection from localhost allow localhost # allow localhost to connect to the server and allow admin:monit # require user 'admin' with password 'monit' allow @monit # allow users of group 'monit' to connect (rw) allow @users readonly # allow users of group 'users' to connect readonly
Una vez que lo haya configurado, debe iniciar el servicio monit para volver a cargar los nuevos ajustes de configuración.
# /etc/init.d/monit start
$ sudo /etc/init.d/monit start
Ahora, podrá acceder a la interfaz web de monit navegando a ” http: // localhost: 2812 ” o ” http://example.com:2812 “. Luego ingrese el nombre de usuario como ” admin ” y la contraseña como ” monit “. Debería obtener una pantalla similar a la siguiente.
Monit la interfaz web
Paso 3: agregar servicios de monitoreo
Una vez que la interfaz web de monit esté configurada correctamente, comience a agregar los programas que desea monitorear en el archivo /etc/monit.conf en ( RedHat / CentOS / Fedora ) y / etc / monit / monitrc para ( Ubuntu / Debian / Linux Mint ) en El fondo.
A continuación se muestran algunos ejemplos de configuración útiles para monit, que pueden ser muy útiles para ver cómo se está ejecutando un servicio, dónde guarda su archivo pid y cómo iniciar y detener un servicio, etc.
apache
check process httpd with pidfile /var/run/httpd.pid group apache start program = "/etc/init.d/httpd start" stop program = "/etc/init.d/httpd stop" if failed host 127.0.0.1 port 80 protocol http then restart if 5 restarts within 5 cycles then timeout
Apache2
check process apache with pidfile /run/apache2.pid start program = "/etc/init.d/apache2 start" with timeout 60 seconds stop program = "/etc/init.d/apache2 stop"
Nginx
check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/nginx stop"
MySQL
check process mysqld with pidfile /var/run/mysqld/mysqld.pid group mysql start program = "/etc/init.d/mysqld start" stop program = "/etc/init.d/mysqld stop" if failed host 127.0.0.1 port 3306 then restart if 5 restarts within 5 cycles then timeout
SSHD
check process sshd with pidfile /var/run/sshd.pid start program "/etc/init.d/sshd start" stop program "/etc/init.d/sshd stop" if failed host 127.0.0.1 port 22 protocol ssh then restart if 5 restarts within 5 cycles then timeout
Una vez que haya configurado todos los programas para la monitorización, compruebe la sintaxis de monit en busca de errores. Si encuentra algún error, corríjalo, no es tan difícil averiguar qué salió mal. Cuando reciba un mensaje como ” Sintaxis del archivo de control OK “, o si no ve ningún error, puede continuar.
# monit -t
$ sudo monit -t
Después de corregir todos los errores posibles, puede escribir el siguiente comando para iniciar el servicio monit.
# /etc/init.d/monit restart
$ sudo /etc/init.d/monit restart
Puede verificar que el servicio monit se haya iniciado verificando el archivo de registro.
# tail -f /var/log/monit
$ sudo tail -f /var/log/monit.log
Salida de muestra
[BDT Apr 3 03:06:04] info : Starting monit HTTP server at [localhost:2812] [BDT Apr 3 03:06:04] info : monit HTTP server started [BDT Apr 3 03:06:04] info : 'tecmint.com' Monit started [BDT Apr 3 03:06:04] error : 'nginx' process is not running [BDT Apr 3 03:06:04] info : 'nginx' trying to restart [BDT Apr 3 03:06:04] info : 'nginx' start: /etc/init.d/nginx
Monit Captura de pantalla
Así es como se ve monit después de agregar todos los procesos para monitorear.
Monit Monitorear todo el proceso
Enlaces de referencia
Herramientas de monitoreo