Проблема помилки розетки супервізора [закрито]


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

Я намагаюся налаштувати супервізор на своїй виробничій системі, але я потрапляю на цю помилку. Файл журналу супервізора порожній.

Коли я просто набираю supervisorctl, він скаржиться:

http://localhost:9001 refused connection

Наразі нічого не слухається на порту 9001, АФАКТ: lsof | grep TCPнічого не повертає.

Відповіді:


172

Ви повинні почати нагляд, перш ніж використовувати supervisorctl. У моєму випадку:

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

2
Вам не слід було б судо супервізор, але я зіткнувся з проблемами дозволів, які змусили мене відмовитися від вирішення цієї проблеми
келорек

1
Я виписав як келорек, але вище команда на мене не працювала.
Шарльям

Що повертається при натисканні клавіші Enter?
келорек

5
192.168.111.100:9001 відмовився від з'єднання
Чарльзмім

Чудовий чоловік, я змусив свого керівника працювати за віками!
Jaimin

37

Якщо ви розпочали нагляд зі спеціального контуру, наприклад:

sudo supervisord -c /mypath/supervisord.conf

Потім слід також запустити supervisorctl з тим же параметром, як цей:

sudo supervisorctl -c /mypath/supervisord.conf

2
це мені справді допомогло
Джастін М. Укар

12

Ви можете отримати цю проблему, якщо запустити Supervisor з відносною URL-адресою, -cа потім спробувати запустити supervisorctl з іншого каталогу.

Наприклад:

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

Рішенням було б завжди використовувати абсолютний шлях. наприклад:

Добре:

supervisord -c /etc/supervisor/supervisord.conf

Погано:

supervisord -c supervisord.conf

5

Ця проблема також виникає, коли використовується стара версія supervisord.confфайлу. Новіша версія супервізора використовує інший файл конфігурації. Вищезазначені рішення не працюють. У цьому випадку вам просто потрібно відновити файл конфігурації

echo_supervisord_conf > /etc/supervisord.conf

Сподіваюся, це комусь допоможе.


3

будь ласка, зробіть наступне:

sudo service supervisor start

пост, у якому все нормально, як b4 - є проблема з версією 1b

sudo supervisorctl reload


2

У Ubuntu 18.04 з пакетом дистрибуції

Ви, мабуть, зробили ту саму помилку, що і я створив файл конфігурації, /etc/supervisord.confколи мій менеджер сервісів ( systemd ) використовував конфігураційний файл/etc/supervisor/supervisord.conf

sudo rm /etc/supervisord.conf

Або

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

якщо ви хочете зберегти його

Тепер ви можете бігти sudo supervisorctl


Чому?

коли ви запускаєте supervisorctlйого вперше, шукає конфігураційний файл, розміщений у /etc/supervisord.conf, якщо його немає, він буде шукати файл за замовчуванням пакета, /etc/supervisor/supervisord.confце той, який фактично запускається systemd .

Systemd завжди використовує файл /etc/supervisor/supervisord.confнезалежно від наявності іншого файлу.

Ви можете перевірити, який файл використовується systemd , запустившиsudo systemctl status supervisor

введіть тут опис зображення Ви можете побачити в останньому рядку команду, де конфігураційний файл є жорстким кодом


-1

обидва supervisordі supervisorctlвикористовувати -cз абсолютним конфігураційним файлом шлях, переконайтеся, що обидві команди запускаються з однаковим конфігурацією

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.