Configuração do supervisor no AWS AMI Linux

Configuração do supervisor no AWS AMI Linux

Estou tentando fazer com que o supervisor trabalhe para garantir que meu sistema de filas esteja sempre funcionando.

Aqui estão as etapas que executei, que juntei de várias fontes: (Executado como root ou superusuário)

  1. Corrido:

    # easy_install supervisor
    # echo_supervisord_conf > /etc/supervisord.conf
    # vi supervisord.conf
    
  2. Colou o seguinte no final do arquivo:

    command=/usr/bin/php /path/to/AppName/artisan --env=production --timeout=240 queue:listen
    
  3. Corrido:

    # supervisord -c /etc/supervisord.conf
    # supervisorctl
    supervisor> status
    supervisor>
    

    Não exibe nada.

  4. Corrido:

    # service supervisord reload
    supervisord: unrecognized service
    

Responder1

para que o supervisord seja executado como um serviço, você precisa de um /etc/init.d/supervisordarquivo. eu useihttps://raw.githubusercontent.com/Supervisor/initscripts/master/redhat-init-equeffelec com mods para corresponder ao caminho em que easy_install colocou os binários em ( /usr/local/bin/) e para encontrar o pid e fazer login /var/run/e/var/log/

Responder2

Passei algumas horas nisso, tentando fazer com que o supervisor e o Amazon Linux AMI funcionassem bem. Eu estava sentindo exatamente os sintomas que você mencionou.

Algumas peculiaridades:

  • vá em frente e inclua -c /etc/supervisord.conf(ou qualquer que seja o seu caminho) em qualquer comando supervisordou supervisorctle certifique-se de executar sempre o mesmo usuário.
  • no seu /etc/supervisord.conf, ao anexar o comando, certifique-se de prefixar o nome com 'program:', assim:

    [program:queue]
    command=/usr/bin/php /path/to/AppName/artisan --env=production --timeout=240 queue:listen
    

Depois de fazer o acima, supervisorctl FINALMENTE reconheceu o processo/programa da fila.

Ainda não consegui sudo service supervisor restartreconhecer o supervisor como um serviço - suspeito que seja porque não tenho um script inicial que tenha visto mencionado em vários lugares. Não tenho certeza se preciso de um neste momento.

Algumas técnicas de depuração que usei:

  • ps aux | grep superpara ver se está funcionando
  • sudo vim para editar /etc/supervisord.confe , sudo /usr/local/bin/supervisorctl -c /etc/supervisord.confem seguida , , etc. para atualizar (em vez de editar .ebextensions e enviar para o pé de feijão elástico sempre)availreloadupdate

informação relacionada