O que acontece com os serviços manuais do Upstart ao desligar?

3

Se estiver usando a palavra-chave manual em um script init ou substituir o Upstart, não está claro se o processo de encerramento dos serviços será iniciado ou se apenas será encerrado no encerramento.

Por exemplo, o tempo limite padrão do MySQL será estendido (dando tempo suficiente para liberar buffers, conforme especificado no script de inicialização) quando a substituição manual é usada? Caso contrário, seria preferível usar uma configuração start on never ou os serviços iniciados manualmente também precisam ser desligados manualmente?

O Cookbook Upstart tem pouco a dizer sobre o assunto.

    
por Oleg 21.01.2013 / 10:24

2 respostas

4

Acho que você deve ter esquecido algo, pois isso está bem claro no link que você forneceu:

  

5.2.1 Observações

     

Existem alguns pontos importantes relacionados ao desligamento do sistema:

     

[...]

     
  • O Upstart nunca para um trabalho sem a condição stop on .
  •   

[...]

     

5.2.2 Processo de encerramento

     

[...]

     

Um dos scripts executados é /etc/init.d/sendsigs .

     

Este script eliminará todos os processos restantes que ainda não foram interrompidos (incluindo processos Upstart).

Neste script sendsigs é explicado:

  

Upstart tem um método para definir um tempo limite de morte e, assim, o autor do trabalho pode   quer que esperemos mais de 10 segundos (como no caso do mysql).   (LP: # 688541)

     

Vamos aguardar até 300 segundos por qualquer trabalho no estado de parada / morte. Qualquer   matar timeout maior do que isso será substituído pela necessidade de   desligar. NOTA a reutilização de seq de cima, já que já esperamos   até 10 segundos para eles.

    
por gertvdijk 21.01.2013 / 16:20
3

A sub-rotina do manual refere-se ao início de um trabalho. Veja a Visão Geral Técnica Upstart: Sub-rotina Manual . Portanto, uma sub-rotina de parada definida no arquivo de configuração substituído será totalmente respeitada.

No caso do servidor MySQL, é mais importante definir / sobrescrever pré-início , < um post-start e matar timeout estrofes. Para detalhes, veja o mysql.conf padrão

cat /etc/init/mysql.conf

A entrada do blog Ubuntu Upstart para iniciar e parar o MySQL automático várias idéias sobre como melhorar o arquivo de configuração padrão do MySQL Upstart.

    
por Goran Miskovic 21.01.2013 / 21:17