Problema de error de socket del supervisor [cerrado]


99
$ supervisorctl reread
error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib64/python2.6/socket.py line: 567

Estoy intentando configurar el supervisor en mi sistema de producción, pero aparece este error. El archivo de registro del supervisor está vacío.

Cuando escribo supervisorctl, se queja:

http://localhost:9001 refused connection

Nada está escuchando actualmente en el puerto 9001, AFACT: lsof | grep TCPno devuelve nada.

Respuestas:


172

Debe iniciar supervisord antes de poder usar supervisorctl. En mi caso:

sudo supervisord -c /etc/supervisor/supervisord.conf
sudo supervisorctl -c /etc/supervisor/supervisord.conf

2
No debería tener que sudo supervisorctl, pero encontré problemas de permisos que me hicieron renunciar a resolver ese problema
kelorek

1
Tengo lo mismo que kelorek pero el comando anterior no funcionó en mí.
Charlesliam

¿Qué regresa cuando presionas Enter?
kelorek

5
192.168.111.100:9001 conexión rechazada
Charlesliam

¡Excelente hombre, tengo a mi supervisor funcionando después de años!
Jaimin

37

Si comenzó supervisord con una ruta personalizada, como esta:

sudo supervisord -c /mypath/supervisord.conf

Entonces también debe iniciar supervisorctl con el mismo parámetro, así:

sudo supervisorctl -c /mypath/supervisord.conf

2
esto realmente me ayudó
Justin M. Ucar

12

Puede obtener este problema si inicia supervisor con una URL relativa para -cy luego intenta ejecutar supervisorctl desde un directorio diferente.

Por ejemplo:

supervisord -c supervisord.conf
supervisorctl start someapp ## works 
cd somedirectory
supervisorctl restart someapp ## http://localhost:9001 refused connection

La solución sería utilizar siempre la ruta absoluta. p.ej:

Bueno:

supervisord -c /etc/supervisor/supervisord.conf

Malo:

supervisord -c supervisord.conf

5

Este problema también ocurre cuando supervisord.confse usa una versión anterior de archivo. La versión más reciente de supervisor usa un archivo de configuración diferente. Las soluciones anteriores no funcionan. En este caso solo tienes que regenerar el archivo de configuración con

echo_supervisord_conf > /etc/supervisord.conf

Espero que ayude a alguien.


3

por favor haga lo siguiente:

sudo service supervisor start

publicar que todo es normal como b4 - hay un problema con la versión 1b

sudo supervisorctl reload


2

En Ubuntu 18.04 con el paquete de distribución

Probablemente cometió el mismo error que yo y creó el archivo de configuración /etc/supervisord.confmientras mi administrador de servicios ( systemd ) estaba usando el archivo de configuración/etc/supervisor/supervisord.conf

sudo rm /etc/supervisord.conf

O

sudo mv /etc/supervisord.conf /etc/supervisor/supervisord.conf

si quieres quedártelo

Ahora puedes correr sudo supervisorctl


¿Por qué?

cuando lo ejecuta supervisorctlprimero busca el archivo de configuración ubicado en /etc/supervisord.conf, si no está presente, buscará el archivo predeterminado del paquete, /etc/supervisor/supervisord.confeste es el que systemd realmente ejecuta.

Systemd siempre usa el archivo /etc/supervisor/supervisord.confindependientemente de la existencia del otro archivo.

Puede verificar qué archivo está usando systemd ejecutandosudo systemctl status supervisor

ingrese la descripción de la imagen aquí Puede ver en la última línea el comando donde el archivo de configuración está codificado


-1

Ambos supervisordy supervisorctlusar -ccon la ruta del archivo de configuración absoluta, asegúrese de que ambos comandos se inicien con la misma configuración.

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.