-2

スーパーバイザーを使用して、django 1.8.8 でセロリを実行しています。設定。も使用django-supervisor==0.3.4 supervisor==3.2.0

しかし、すべてのプロセスを再起動すると、

unix:///tmp/supervisor.sock refused connection

どのプロセスも再起動できず、

python manage.py supervisor --config-file=setting/staging_supervisor.conf --settings=setting.staging_settings restart all

スーパーバイザ設定ファイル

[supervisord]
    logfile_maxbytes=10MB                                                       ; maximum size of logfile before rotation
    logfile_backups=3                                                           ; number of backed up logfiles
    loglevel=warn                                                               ; info, debug, warn, trace
    nodaemon=false                                                              ; run supervisord as a daemon
    minfds=1024                                                                 ; number of startup file descriptors
    minprocs=200                                                                ; number of process descriptors
    childlogdir=/logs/                    ; where child log files will live

    [program:celeryd_staging]
    environment=PATH="{{ PROJECT_DIR }}/../../bin"
    command={{ PYTHON }} {{ PROJECT_DIR }}/manage.py celeryd -l info -c 1 --logfile=/logs/staging-celeryd.log --settings=setting.staging_celery_settings
    redirect_stderr=false

    [program:celerybeat_staging]
    environment=PATH="{{ PROJECT_DIR }}/../../bin"
    command=/{{ PYTHON }} {{ PROJECT_DIR }}/manage.py celerybeat --loglevel=INFO --logfile=/logs/staging-celerybeat.log --settings=setting.staging_celery_settings
    redirect_stderr=false

    [group:tasks]
    environment=PATH="{{ PROJECT_DIR}}/../../bin"
    programs=celeryd_staging,celerybeat_staging

    [program:autoreload]
    exclude=true

    [program:runserver]
    exclude=true
4

2 に答える 2

1

解決策を得ました。スーパーバイザー プロセスは、django-supervisor パッケージを使用しているため、supervisord が仮想環境にあったため、リロードされませんでした。

スーパーバイザー プロセスをリロードすると、接続拒否エラーはなくなりました。

于 2016-11-18T19:44:27.823 に答える
0

/tmp/supervisor.sockあなた以外のユーザー(ルートなど)が所有する別のものが存在しないことを確認してください。

権限の問題でない場合は、これを Supervisord 構成に追加します。

[unix_http_server]
file = /tmp/supervisor.sock ;
chmod=0700 ;

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

これも役立つかもしれません: https://github.com/Supervisor/supervisor/issues/480#issuecomment-145193475

于 2016-11-17T19:31:32.910 に答える