Instalar supervisor en ubuntu y configurarlo para mysql ?

Mantener%2Bservicios%2BActivos%2Bcon%2BSupervisord


Introducción
En algunos entornos en necesario tener programas que se mantenga activo, por ejemplo mysql,apache,nodejs.
Supervisor nos ayuda a mantener esos programas activos, con una sola configuración centralizada.


Instalación
La instalación de supervisor en Ubuntu y Debian es muy simple, en teoria este programa ya existe en los repositorios.
Antes que nada debemos de estar logueados como super usuario y ejecutar este comando:

sudo apt-get install supervisor

Una vez instalado supervisor hay que iniciarlo asi:

sudo service supervisor restart

Mantener mysql siempre activo con supervisor:

Creamos el archivo mysql.conf en el path “/etc/supervisor/conf.d/” asi:

sudo vim /etc/supervisor/conf.d/mysql.conf

En donde colocamos el siguiente texto:

[supervisord]
nodaemon=true
[program:mysql]
command=/usr/bin/pidproxy /var/run/mysqld/mysqld.pid /etc/init.d/mysql start
autostart=true
autorestart=true
user=root

Guardamos y cerramos

Reiniciamos supervisord para cargar las configuraciones previamente creadas en “/etc/supervisor/conf.d/mysql.conf”

supervisorctl reread

Actualizamos supervisord para que comience a supervisar los programas:

supervisorctl update

Para ver que programas se estan supervisando escribimos el siguiente cmando:

supervisorctl

Donde nos tiene que dar como resultado algo asi:

mysql                            RUNNING    pid 18721, uptime 13:35:40
supervisor>

supervisor> esta en espera de algun comando de supervisor por ejemplo podrias escribir esto:

supervisor> help

Y nos da este resultados

default commands (type help <topic>):
=====================================
add clear fg open quit remove restart start stop update
avail exit maintail pid reload reread shutdown status tail version

Y para salir de supervisor solo escribimos esto:

supervisor> exit

Probar el funcionamiento de supervisor
Obtenemos el id del procedimiento mysql con este comando:

service mysql status

Selecci%25C3%25B3n 147

Nos percatamos que el pid de mysql es 4956 (este pid es el resultado de mi servidor en tu servidor debe ser diferente) asi que si ejecuamos este comando para matar mysql:

kill 4956

Esperamos unos 5 segundos y ejecutamos el comando :

supervisorctl

Debe dar este resultado

supervisorctl
mysql RUNNING pid 20618, uptime 0:00:02

Si nos percatamos el pid ha cambiado a 20618 lo que significa es que mysql se reinicio gracias a supervisor

Fuentes:
https://www.digitalocean.com/community/tutorials/how-to-install-and-manage-supervisor-on-ubuntu-and-debian-vps
https://github.com/wiliamsouza/docker-mysql/blob/master/supervisord.conf


Deja un comentario

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