Instância EC2 inacessível (HTTP e SSH) após quantidade desconhecida de tempo

1

Eu tenho uma instância do Amazon Linux com apenas o Wordpress em execução (instalado usando o guia da Amazon). Depois de algum tempo (não sei exatamente quanto tempo, pelo menos algumas horas), a instância não pode ser acessada através de HTTP (tenta abrir o site para sempre) nem SSH (mensagem: ssh_exchange_identification: read: Connection reset by peer).

Quando entro no console, vejo que a luz está verde e tudo parece estar ok. Mesmo reiniciar a instância não ajudará no problema. A única solução é parar a instância e começar de novo, então todo o ciclo começa novamente: funciona por algumas horas e, de repente, não.

Talvez seja importante mencionar que comprei uma instância reservada do Linux correspondente à minha instância do EC2. Então estou usando isso. Alguma idéia que poderia me ajudar a corrigir esse problema?

Atualizar : Eu fiz um instantâneo da minha instância e coloquei em um novo volume, mas isso não resolveu o problema também.

Grupo de segurança atual (entrada):

  • HTTP e HTTPS de todos os lugares
  • SSH apenas do meu IP

Eu verifiquei o access_log na pasta httpd e ele contém poucas linhas, das quais alguns são sites russos estranhos (às vezes). O que é estranho porque meu site não está oficialmente on-line e não há nenhum link para ele em nenhum lugar.

    
por Nima 19.09.2017 / 13:54

3 respostas

1

Na minha opinião, o servidor ou o disco está corrompido e precisa ser totalmente substituído. Aqui está o que eu faria

Primeiro , você tem uma escolha na abordagem

  1. Configure um novo servidor Linux do Ubuntu 16.04 no EC2. Há um AMI, então é fácil. Eu acho que o Amazon Linux tem menos suporte e poucos pacotes disponíveis do que o Ubuntu. Use o EasyEngine ou similar para tornar isso mais simples.
  2. Use uma AMI do Wordpress predefinida, como Bitnami . Eu acho que eles ainda estão no Ubuntu 14.04, mas você pode facilmente fazer um upgrade para o 16.04.

Outra opção é usar o RDS ou o MySQL na instância. Eu uso o MySQL na instância porque é mais barato e funciona muito bem.

Próximo

  • Configure sua instância para executar o Wordpress, caso você não tenha usado uma AMI pré-fabricada. Verifique os trabalhos básicos de instalação antes de prosseguir.
  • Faça um dump do MySQL do servidor original e importe os dados para o banco de dados.
  • Copie seus dados para o novo servidor. Este será o diretório wp-content.
  • Haverá alguns ajustes e ajustes para que isso funcione corretamente.

Se isso não for confiável, talvez seja algo estranho em seu banco de dados. Exporte suas postagens e conteúdo via XML e importe-o. Eu ficaria surpreso se isso fosse necessário.

Misc

Para responder à sua pergunta acima, apenas abra o SSH no seu próprio IP.

    
por 29.09.2017 / 00:34
0

No console, em configurações, você deve encontrar uma pequena opção "Console Snapshot" que irá tirar uma "imagem" da saída do console.

Aposto que a instância caiu e agora está presa em algum estado de recuperação.

Isso acontece com pouca frequência. Se você considerar que a AWS tem 7x noves de resiliência EC2, você deve esperar que uma instância (alguma instância, em algum lugar) seja reprovada a cada 20 minutos.

    
por 27.09.2017 / 17:12
0

Eu enfrentei o mesmo problema, mas não com tanta frequência quanto você mencionou.

No meu caso, o servidor não respondia devido a pouca memória, e isso não é monitorado pelo console do Amazon AWS,

Alguns cron job não conseguiram fazer fork.

É bom verificar seus logs cron após o start-stop, você pode ver esta linha

crond[2656]: (CRON) can't fork (do_command): Cannot allocate memory 

Para evitar ainda mais esse problema, fui recomendado pelo Suporte da AWS para ter uma instância maior ou um arquivo de configuração, bem como configurar alarmes de terceiros

    
por 12.12.2017 / 17:23