Supervisors

209 views

Published on

Petita introducció a sistemes de supervisió: daemontools, supervisord, upstart.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
209
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Supervisors

  1. 1. Supervisors Alba ferrer @dawnlua Sudoers barcelona març 2013
  2. 2. Què son els supervisors?  Programes que vigilen altres programes  Cedeixes la gestió del programa al supervisor:  Aixecar  Aturar  Reiniciar  Recarregar  ...
  3. 3. Quines opcions tenim?  Daemontools  Supervisord  Upstart  Runit  Launchd  ...
  4. 4. Daemontools  http://cr.yp.to/daemontools.html  DJB  Senzill i lleuger  Fàcil de configurar  Possibles problemes d'instal·lació
  5. 5. Daemontools - configuració  Els programes es configuren al directori /services (o /etc/services).  En un directori propi amb una estructura concreta.{posar estructura de directoris}  Fitxer `run`.  Directori de logs.  Directori supervise.  Fitxer down.
  6. 6. Daemontools - funcionament svc -opt servei  Opt: bàsicament signals  Servei: programa (o programes que gestiona daemontools)
  7. 7. Daemontools - funcionament  -u: Up.  -d: Down.  -o: Once.  -p: Pause.  -c: Continue.  -h: Hangup. -a: Alarm. -i: Interrupt. -t: Terminate. -k: Kill. -x: Exit.
  8. 8. Daemontools - funcionament  Svc -u /etc/services/roy  Svc -t /services/moss  Svc -d /etc/services/jenny
  9. 9. Daemontools - components  Supervise  El veritable supervisor
  10. 10. Daemontools - components  Readproctitle  log en memòria que rota automàticament i que s'inspecciona amb un `ps`.  mostra els errors que puguin haver. cal netejar-ho un cop s'ha vist l'error, perquè no marxa sol i pot confondre la propera vegada.
  11. 11. Daemontools - components  Tai64nlocal  converteix els timestamps de tai64n a human-readable  {posar exemple} tai64nlocal < current | less
  12. 12. Daemontools - components  svscanboot  svscan  svok  svstat
  13. 13. Supervisord  http://supervisord.org/  No pretèn executar-se com un "process id 1".  Més enfocat a clients/projectes, més llibertat i control de cada servei.  Model client-servidor.  Python.
  14. 14. Supervisord - configuració  Configuració a /etc/supervisord.conf  Seccions:  [supervisord]  [program:foo]  [ ]
  15. 15. Supervisord - components  supervisord  el servidor.  és qui arrenca els serveis, respòn a les peticions de clients, re-arrenca els serveis caiguts, etc.
  16. 16. Supervisord - components [supervisord] logfile = /var/log/servei loglevel = error pidfile = /var/run/servei.pid minprocs = 5 {comprovar} user = usuari environment = KEY1=value1, KEY2=value2
  17. 17. Supervisord - components  supervisorctl  command-line client.  mode prompt disponible.  permet connectar als diferents processos que s'estan executant i gestionar-los enviant signals  connexió via socket UNIX o socket TCP.
  18. 18. Supervisord - components [supervisorctl] serverurl = http://localhost:9001 username = usuari password = passw0rd prompt = iSupervise history_file = /tmp/superhistory
  19. 19. Supervisord - components [program:foo] command = /usr/local/bin/servei
  20. 20. Upstart  http://upstart.ubuntu.com  Intenta substituir el procés init.  Inicialment per Ubuntu, però pensat per totes les distros.

×