ubuntu server 16.04: impossibile far avviare automaticamente il supervisore


43

Ho installato il supervisore sul server Ubuntu 16.04.

$ sudo apt-get install supervisor
$ sudo update-rc.d supervisor defaults

Dopo il riavvio, il supervisore non si è avviato automaticamente. Controllato lo stato:

qinking126@nas:~$ sudo service supervisor status
[sudo] password for qinking126:
● supervisor.service - Supervisor process control system for UNIX
   Loaded: loaded (/lib/systemd/system/supervisor.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: http://supervisord.org

Non sono sicuro del perché sia ​​inattivo (morto). Cosa devo controllare per farlo riparare?


2
Sembra che tu stia usando systemd. Fa questo Ask Ubuntu risposta di aiuto?
Jeff Schaller

1
@JeffSchaller grazie mille. aiuta. tutto ciò di cui ho bisogno è eseguire "systemctl abilita SERVICE.service"
qinking126

Risposte:


61

Sono convinto che questo problema sia un bug di packaging nel pacchetto Supervisor in Ubuntu 16.04 e sembra essere stato causato dal passaggio a systemd:

  • Questo problema è già stato segnalato a monte sul tracker dei problemi del progetto Supervisor (dove non è possibile risolvere nulla) nel numero 735 .

  • Sono stato morso da questo problema qualche giorno fa e sono rimasto sorpreso di scoprire che questo problema non è mai stato segnalato ai manutentori del pacchetto, anche se Ubuntu 16.04 è stato rilasciato molto tempo fa e questo rompe la retrocompatibilità e il comportamento previsto. Questo è il motivo per cui ho deciso di segnalare questo problema ai manutentori del pacchetto nel bug 1594740 .

Ho documentato una semplice soluzione nel bug 1594740 che non richiede la creazione di alcun file di configurazione: è sufficiente abilitare e avviare il demone Supervisor dopo l'installazione del pacchetto:

# Make sure Supervisor comes up after a reboot.
sudo systemctl enable supervisor

# Bring Supervisor up right now.
sudo systemctl start supervisor

Non sono così sicuro che questo verrà risolto in Ubuntu 16.04, ma almeno ora c'è un posto centrale per raccogliere reclami e documentare soluzioni alternative (nel bug 1594740 , non nel numero 735 ).

Se qualcuno è stato morso da questo problema, considera di esprimere la tua preoccupazione nel bug 1594740 per convincere i manutentori del pacchetto a risolvere questo problema. Grazie!

Aggiornamento (24-03-2017): ieri una correzione per questo problema è stata rilasciata agli aggiornamenti xenial a seguito del bug 1594740, quindi le nuove installazioni non dovrebbero più imbattersi in questo problema.



1

Ecco un esempio di un file in cui puoi inserire il tuo / lib / systemd / system /

[Unit]
Description=Supervisord Service

[Service]
Restart=on-failure
RestartSec=42s
User=ubuntu
ExecStart=/usr/local/bin/supervisord -n -c /etc/supervisord.conf

[Install]
WantedBy=multi-user.target

la posizione di configurazione predefinita di Ubuntu è a/etc/supervisord/supervisord.conf
Antti Haapala

@AnttiHaapala Non per l'installazione di Ubuntu 16.04. La posizione corretta è: /etc/supervisor/supervisord.conf (nota la mancanza di "d" se qualcuno si sta chiedendo)
Rishi,

@ Yoshi9143 hai ragione: D
Antti Haapala,

1

L'ho rimosso come supervisore e installato di nuovo. Quindi ha funzionato per me.

sudo apt-get purge supervisor
sudo apt-get install supervisor
cp path/to/file.conf /etc/supervisor/conf.d/
sudo supervisorctl reread
sudo supervisorctl update

0

apt-get install supervisor su Ubuntu 16.04.2, installa il supervisor 3.2.0 e si avvia automaticamente al riavvio.

pip install supervisor - aggiorna gli aggiornamenti a 3.3.1 e non si avvia più.

L'aggiornamento funziona Ubuntu 16.04.1


0

Su CentOSho risolto eseguendo un processo cron all'avvio che esegue supervisord:

per creare il processo cron eseguito crontab -enel terminale e quindi incollarlo @reboot /bin/supervisord( deve essere percorso al supervisord ) alla fine dei lavori e salvarlo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.