User Tools

Site Tools


supervisor

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
supervisor [2014/06/21 19:44] – [Reference guide] kobesupervisor [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-====== Supervisor ====== 
  
-Supervisor e' uno strumento pratico e semplice per demonizzare dei normali processi //foreground//. 
- 
-In ''/etc/supervisor/conf.d/'' ci sono i file di configurazione (con sintassi ''.ini''), in particolare nella direttiva "command" viene richiamato il binario o lo script da lanciare.  Per convenzione beFair, nel caso di script si consiglia di metterli in ''/usr/local/bin/''. 
- 
-Altri 2 parametri molto importanti sono ''autostart'' e ''autorestart'', ovvero il processo viene lanciato al boot, e viene rilanciato nel caso in cui crasha.  Questo e' possibile perche' Supervisor e' lui stesso un 
-demone vero e proprio (che va settato per essere lanciato al boot della macchina). 
- 
-Per cui se si fa un reboot del server, dovrebbe partire tutto in automatico: Supervisor + i processi che gestisce. 
- 
-In sostanza e' come se ci fossero 2 livelli: 
- 
-  Demone init (SysV, systemd..) --> Supervisor --> gf_deploy 
-                                --> gf_testcase 
- 
-A titolo di esempio, i file di Gasista Felice: 
- 
-- ''/etc/supervisor/conf.d/gf_deploy.conf'' (file di Supervisor) 
-  [program:gf_deploy] 
-  command = /usr/local/bin/gf_deploy.sh run_gunicorn 
-    -b unix:/var/run/gf_deploy.sock 
-    -w 10 
-  process_name = %(program_name)s 
-  user = gf_deploy 
-  group = gf_deploy 
-  autostart = true 
-  autorestart = true 
-  stdout_logfile = /var/log/gf_deploy.log 
-  redirect_stderr = true 
- 
-- ''/usr/local/bin/gf_deploy.sh'' (wrapper a Django) 
-  #!/bin/bash 
-   
-  export WORKON_HOME=/usr/local/venvs 
-  export DJHISTORY_HOME=/usr/local/venvs/gf-deploy/src/django-pro-history 
-  export PYTHONPATH=/usr/lib/python2.7/dist-packages 
-   
-  source /etc/bash_completion.d/virtualenvwrapper 
-  workon gf-deploy 
-   
-  cd /usr/local/src/gasistafelice/gasistafelice 
-  /usr/bin/env python manage.py $@ 
- 
-===== Utilizzo ===== 
- 
-Dopo aver lanciato il demone Supervisor e aver aggiunto i relativi file di configurazione, e' possibile caricarli (simile a ''service daemon_name reload''): 
-  # supervisorctl reread 
-  # supervisorctl update 
- 
-Per vedere lo stato di un processo: 
-  # supervisorctl status gf_deploy 
- 
-Per entrare nella "console": 
-  # supervisorctl 
- 
-Prima di dare comandi, viene stampato lo stato di tutti i processi.  A questo punto e' possibile usare gli stessi comandi, senza ripetere ''supervisorctl'' all'inizio. 
- 
-Per avviare a mano un processo: 
-  # supervisorctl start gf_deploy 
- 
-Per riavviare un processo: 
-  # supervisorctl restart gf_deploy 
- 
-Nota:  una volta dato ''reread && update'', i processi vengono 
-lanciati in automatico se hanno impostato ''autostart = True'' nel file di configurazione. 
supervisor.1403379890.txt.gz · Last modified: 2014/10/28 11:28 (external edit)