Auto-cura uma instância do EC2 com um Auto Scaling Group?

3

Estou tentando configurar uma instância do EC2 de correção automática usando um Grupo de escala automática e um script de inicialização de dados do usuário. Se o servidor atual tiver um problema em que ele não esteja mais acessível, a instância deverá ser encerrada e uma nova deverá ser substituída. Isso é bastante fácil, mas um requisito está se mostrando difícil.

Eu preciso que o servidor substituto tenha o mesmo IP privado que o servidor anterior. Meu pensamento é ter um IP privado secundário (isso é dentro de um VPC) atribuído ao servidor original e, em seguida, reatribui-lo ao novo servidor.

  1. Suponho que posso usar o aws-cli instalado durante o script de inicialização de dados do usuário para reatribuir o IP privado, mas como sei qual servidor está sendo substituído e reatribuir o IP dele ( por exemplo, se no futuro o pool de servidores for maior e 2 acontecerem ao mesmo tempo).

  2. Se o servidor original estiver sendo encerrado, será possível atribuir novamente o IP privado?

por James Simpson 27.01.2015 / 09:10

2 respostas

3

Depois de muita pesquisa e tentativa / erro, aqui está o que acabamos fazendo:

  1. Colocamos cada tipo de servidor em seu próprio Grupo de Auto Scaling com um script de shell de dados do usuário para configurar totalmente os servidores.
  2. Utilizamos tags para rastrear recursos em servidores que queríamos transferir (IP privado, IP elástico, EBS etc.).
  3. Na inicialização de uma instância de substituição, nosso script de dados do usuário consulta a AWS CLI para obter uma instância finalizada do mesmo tipo que possui as tags de recurso disponíveis.
  4. Usamos os dados nessas tags e o AWS CLI para reatribuir esses recursos ao servidor substituto e, em seguida, removemos os tags do servidor antigo.
  5. Como isso é tudo em uma VPC, o IP privado ainda está disponível para nós, já que é liberado de volta para a VPC após o encerramento da instância.

Já tivemos essa execução por alguns dias e parece estar funcionando muito bem (embora isso continue a ser visto quando uma instância realmente falha por algo diferente de terminá-la diretamente para teste).

    
por 29.01.2015 / 22:53
0

AWS anunciou recentemente o "Auto-Recovery for EC2 Instâncias "recurso. Tanto quanto eu entendo isso funciona basicamente o mesmo que um grupo de auto-dimensionamento, mas preserva instância IP e volumes etc.

No momento, esse recurso só está disponível para instâncias mais recentes e somente na região leste.

    
por 27.01.2015 / 11:10