Supervisorctl - отказано в соединении (даже после указания пути -c)

1120
Milano Slesarik

Я не могу понять, как supervisorctlправильно бегать . На supervisordмоем бегеUbuntu 16.04 сервере работает.

supervisord.confПуть:

/home/django/Bedueno/supervisord.conf 

Когда я бегу

supervisorctl 

или же

supervisorctl -c /home/django/Bedueno/supervisord.conf 

консоль возвращается

django@Bedueno-beta-ubuntu-512mb-fra1-01:~$ supervisorctl -c /home/django/Bedueno/supervisord.conf  http://localhost:9001 refused connection supervisor> reread error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib/python2.7/socket.py line: 575 supervisor> 

Пробовал уже с sudo чем не помогло.

Знаете ли вы, где проблема?

supervisord.conf

[program:daphne] command=/home/django/Bedueno/beduenovenv/bin/daphne Bedueno.asgi:channel_layer --bind 0.0.0.0 -p 8001 ; directory=/home/django/Bedueno/ ; autostart=true ; autorestart=true ;  [program:daphne_worker] command=/home/django/Bedueno/beduenovenv/bin/python manage.py runworker ; directory=/home/django/Bedueno/ ; autostart=true ; autorestart=true ; [supervisord] [supervisorctl] 

РЕДАКТИРОВАТЬ

Я понял, что у меня есть два файла supervisord.pid и supervisord.log. Оба они находятся внутри /tmp/каталога и /home/django/Bedueno/тоже. supervisor.sockнаходится только внутри /tmp/каталога.

1
Таким образом, conf указывает на порт `8001`, а ошибка соединения основана на порте` 9001` .... кажется мне проблемой, верно? Убедитесь, что вы подключаетесь к правильному порту, который прослушивает трафик. Таким образом, `--bind 0.0.0.0 -p 8001` в конфигурации, но с ошибками`: 9001 отказано в соединении`. Pimp Juice IT 6 лет назад 0
@PimpJuiceIT 8001 - это порт для Дафни Асги. 9001 - это порт супервизоров, поэтому, на мой взгляд, он не может быть таким же. Milano Slesarik 6 лет назад 0
Итак, из веб-браузера на машине применимо, посмотрите, можете ли вы получить доступ к `http: // localhost: 8001`, а также попробуйте` http: // localhost: 9001`. Посмотрите, можете ли вы подключиться к этому порту через telnet и подтвердить его прослушивание, а также использовать netstat для подтверждения того, что ожидаемые порты прослушивают сервер. Я еще не эксперт по Linux, поэтому я просто указал на очевидное из того, что вижу в предоставленных вами деталях. Я бы протестировал, чтобы подтвердить, что «ожидаемый» порт прослушивается, чтобы начать со следующего, я полагаю. Pimp Juice IT 6 лет назад 0
telnet 127.0.0.1 9001 возвращает следующее: Попытка 127.0.0.1 ... telnet: Невозможно подключиться к удаленному хосту: соединение отклонено, и telnet 127.0.0.1 8001 Попытка 127.0.0.1 ... Подключена к 127.0.0.1. Milano Slesarik 6 лет назад 0
Просмотрите `netstat -ano` и посмотрите, нет ли каких-либо процессов, прослушивающих эти порты, из столбца ** Локальный адрес ** из раздела ** Активные подключения к Интернету (серверы и установлены) **. Вы должны увидеть `:`где-то там, так что если он не слушает что-то не так, я бы подумал, что, возможно, серверная служба не работает. Pimp Juice IT 6 лет назад 0
С портом 9001 ничего нет. Пробовал также sudo netstat | grep 9001, который ничего не возвратил. Milano Slesarik 6 лет назад 0
Разве в разделе `[supervisorctl]` и, возможно, в разделах `[supervisord]` файла ** supervisord.conf ** отсутствуют некоторые параметры? Посмотрите эти разделы здесь: http://supervisord.org/configuration.html, а также прочитайте http://supervisord.org/running.html, если это необходимо, чтобы убедиться, что вы не видите там ничего, что выглядит очевидным , Я думаю, что параметры конфигурации отсутствуют, и, возможно, поэтому он не запускается. Подумайте о том, чтобы поместить уровень ведения журнала в режим трассировки или отладки для этой первой ссылки и просмотреть журналы при попытке его запуска. Pimp Juice IT 6 лет назад 0

1 ответ на вопрос

1
Ram Patra

Если вы используете метод http, то обязательно проверьте следующее:

  1. Убедитесь, что supervisordработает
  2. Включите (не комментируйте) это в supervisord.confфайл:
    a)

    [inet_http_server]  port=127.0.0.1:9001 

    б)

    [supervisorctl] serverurl=http://127.0.0.1:9001 

    с)

    [rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface 

Примечание: хост и порт сервера inet и тот, к которому пытается подключиться supervisorctl, должны быть одинаковыми.