Como faço para simular uma falha no servidor no Amazon EC2?

3

Obviamente, os servidores do Amazon EC2 ainda estão em execução no hardware físico e, portanto, podem ter falhas catastróficas. E, arquitetonicamente, eu deveria estar construindo um aplicativo que escala horizontalmente e contorna essas falhas.

Como posso simular uma instância do EC2 quebrando de repente? Este deve ter características de uma falha real do equipamento:

  • Os processos não terminam de forma limpa.
  • Os dados na memória não recebem chance de gravar em disco.
  • Arquivos (por exemplo, em volumes do EBS) não são limpos fechadas.
  • Os sockets abertos não são FIN, apenas são pendurados.
por Jeremy Wadhams 22.04.2013 / 22:17

1 resposta

1

Há um número enorme de maneiras que um sistema pode falhar, então você provavelmente não pode testar todos eles e tentar contorná-los.

Talvez você deva olhar para isso de outra perspectiva: procure os serviços que são essenciais e encontre uma forma de explicitamente matá-los aleatoriamente. Isso simula uma falha com a qual você se importa, independentemente da causa.

Por exemplo, se sua instância executar um servidor httpd e um servidor FTP, você poderá eliminar esses daemons ocasionalmente e certificar-se de que possa recuperá-los. Você pode até terminar programaticamente todo o servidor com a API da AWS, se quiser.

Isso também irá exercitar sua infraestrutura de monitoramento se a recuperação não funcionar :-)

    
por 23.04.2013 / 09:38