Processar serviços de monitoramento

5

Estou pesquisando diferentes serviços que ajudam a manter processos em funcionamento (reinicialização automática em caso de falha). Quais você prefere e quais são seus elogios / sugestões? Aqui estão alguns métodos que encontrei:

  1. respawn em / etc / inittab
  2. supervise com daemontools
  3. runit
  4. upstart
  5. monit

Pessoalmente, eu tive uma experiência ruim com monit não reaproveitamento de processos corretamente, então eu tenho que recomendar contra ele. Atualmente estou usando daemontools e está funcionando muito bem até agora.

    
por Lin 09.10.2009 / 01:22

4 respostas

6

daemontools é realmente bem comprovado; a licença não é mais problemática, eu não acho.

E o seu FAQ compara com o inittab, sobre o qual você perguntou.

    
por 09.10.2009 / 06:54
1

Se você quiser simples, eu vou com runit . Ele irá reiniciar o serviço uma vez por segundo até que ele esteja consistentemente ativo, pode substituir os scripts em /etc/init.d com um pouco de trabalho prático e ter um tratamento consistente em todas as direções.

A única falha que eu tenho é descobrir serviços únicos (serviços que "iniciam" mas na verdade saem enquanto deixam um sinal de que estão "rodando", por exemplo, /etc/init.d/networking não é realmente um serviço, mas age como um), há um pouco de mão-de-pau que vai com isso para obter esse comportamento. A maioria das pessoas introduz uma ferramenta secundária para suspender o script de execução, ou loop infinito com um sleep , etc., para que ele não saia do script. Quando você emite sv stop <service> então TERMINA o shell e tudo continua "como normal".

    
por 20.08.2014 / 21:22
0

launchd resolve esse problema e muito mais. De acordo com o artigo da wikipedia :

The launchd daemon is essentially a replacement for init, rc, the init.d and rc.d scripts, SystemStarter (Mac OS X), inetd and xinetd, atd, crond and watchdogd.

É prolífico no mundo mac, mas é open source e não há razão para você não poder usá-lo no linux. O Ubuntu considerou usá-lo, mas a licença era incompatível na época (desde então, ele foi alterado para a licença Apache).

    
por 09.10.2009 / 01:30
0

O Quagga routing suite tem o watchquagga, que é adaptado às necessidades da suíte. Não tenho certeza se ele pode ser usado com qualquer daemon genérico.

    
por 16.10.2009 / 22:59