Usando o cloud-init para modificar as propriedades do aplicativo usadas pelos scripts init

2

Eu perguntei anteriormente este pergunta sobre o pedido de scripts de inicialização. Acontece que essa não é a solução de que preciso (ou possivelmente a pergunta correta a ser feita) - foi um sucesso fantasma.

Meu sistema é uma instância do AWS EC2, executando o upstart (init) 0.6.5 como o serviço de inicialização.

Meu objetivo é criar uma AMI que, ao ser inicializada, use o ID da instância para configurar outros aplicativos que serão iniciados durante a inicialização. Isso é o que eu gostaria de acontecer:

  1. Inicialize uma nova instância de uma AMI, fornecendo um script como UserData
  2. O script UserData examina o ID da instância do novo servidor e modifica vários arquivos de configuração para outros aplicativos com o ID da instância (estou realmente usando apenas como identificador, nada muito exótico).
  3. DEPOIS que o processo cloud-init executa o UserData e modifica os arquivos de configuração, um dos meus aplicativos é iniciado.
  4. Quando o primeiro aplicativo for iniciado, vários aplicativos (dependentes do primeiro) serão iniciados.

O relevante (eu acho) começa ordens dos arquivos init da seguinte forma:

  • S50cloud-init-local
  • S51cloud-init
  • S52cloud-config
  • S80my-app-that-needs-to-start-first
  • S81a-app-que-começa-depois-da-primeira-app
  • S81uma outra aplicação que começa após a primeira aplicação
  • S98cloud-final

Através de alguns registros, eu só recentemente descobri que parece que minha funcionalidade UserData não está sendo executada até o S98cloud-final (eu já havia pensado que era feito no S51cloud-init). Eu não acredito que seria sensato para mim mover cloud-final mais cedo na seqüência de inicialização.

Eu poderia baixar e configurar todos os meus aplicativos através do processo cloud-init, mas eu não quero fazer isso - eu gostaria de ter uma AMI pré-carregada (com todos os meus aplicações nele, já configuradas no init).

Eu considerei colocar a inicialização para meus aplicativos no S99local, mas eles são aplicativos que devem poder ser iniciados / desligados independentemente, e eu preciso dos scripts de inicialização para qualquer reinicialização subseqüente.

Qual é a melhor prática para isso, ou alguma boa sugestão?

    
por ben_979 10.07.2017 / 22:00

0 respostas