Scripts de inicialização e desligamento para servidores Java

Scripts de inicialização e desligamento para servidores Java

Estou tentando projetar um script de inicialização/desligamento elegante (Bash) para um aplicativo Java (JAR) que irei implantar em meu servidor Ubuntu 14.04. Estou procurando uma maneira limpa, compatível com Linux e Ubuntu, de iniciar o servidor da seguinte forma:

java -jar myapp.jar <lots off subsequent arguments>

E então, no script de desligamento, encontrar o PID do JAR, emitir um SIGSTOP para permitir que o aplicativo também faça um desligamento normal por conta própria e, finalmente, eliminar o PID quando estiver bom e pronto.

fiquei me perguntando seupstartpode ser um bom candidato para esse caso de uso e, em caso afirmativo, como? Caso contrário, quais são algumas outras abordagens que eu poderia adotar?

Responder1

SIGSTOP pausa o processo e não faz um desligamento limpo. Use SIGTERM.

Aqui está um rascunho de trabalho inicial para um processo java:

description "my java app"

start on runlevel [2345]
stop on runlevel [!2345]

respawn

exec java -jar myapp.jar <arguments>

isso deve funcionar bastante bem.

informação relacionada