Como atualizar automaticamente instâncias do EC2 Linux sem tempo de inatividade alternando entre duas instâncias?

2

Em suma - OS Amazon Linux ou Ubuntu. Uma instância do EC2 (ou instância do OpsWorks?) Está sendo executada. Uma vez por dia, inicie a segunda instância, atualize-a com as atualizações de segurança mais recentes e instale meu aplicativo. Primeira instância do encerramento. Repita todos os dias ...

estados da documentação :

By default, AWS OpsWorks automatically installs the latest updates during setup... We recommend that you... Create and start new instances to replace your current online instances. Then delete the current instances. The new instances will have the latest set of security patches installed during setup.

Como automatizar este processo?

Eu sei, posso iniciar uma micro instância para gerenciar esse processo via CLI, mas eu preferiria usar alguma ferramenta interna da AWS, para que eu possa receber notificações sobre falhas, para adicionar alguma redundância (se a instância da CLI falhar) , tudo continua funcionando nas novas versões da API do CLI / AWS, etc.

Estou sentindo falta de uma abordagem elegante?

Atualização: é preferível usar o Elastic IP existente.

    
por Maris B. 01.07.2016 / 17:05

1 resposta

4

Use instâncias do EC2 atrás de um ELB.

Após o lançamento, seus nós devem baixar e instalar as atualizações de segurança mais recentes e fazer qualquer outra configuração necessária para que o aplicativo seja executado.

Para desativar suas instâncias, uma vez por dia:

  1. Crie um segundo nó EC2
  2. Espere que ele se configure e fique disponível
  3. Adicione o segundo nó ao ELB
  4. Remove o nó antigo do ELB
  5. Fotografe o nó antigo na cabeça

Todos os itens acima podem ser facilmente automatizados usando várias APIs da AWS, talvez até como um trabalho do Lambda.

    
por 01.07.2016 / 17:17