
Eu tenho uma configuração do AWS Elastic Beanstalk (PHP) com uma instância EC2 e uma instância RDS. É um ambiente de controle de qualidade. Estava funcionando bem, mas recentemente começou a falhar de forma consistente com o seguinte erro (não houve alterações no código):
"PDO::__construct(): php_network_getaddresses: getaddrinfo falhou: falha temporária na resolução de nomes Erro: Erro na conexão com o banco de dados pdo_mysql: tentativa de conexão falhou: SQLSTATEHY000 2002 php_network_getaddresses: getaddrinfo falhou: falha temporária na resolução de nomes"
Não há nada temporário nisso.
Se eu substituir o endereço IP da instância RDS no lugar do nome do host, ele funcionará bem na AWS.
Se eu acessar a instância AWS RDS da minha máquina de desenvolvimento local (fora da AWS) usando o nome do host, ele executará o mesmo código perfeitamente.
Nslookup para o nome do host RDS funciona bem na instância EC2.
Parei e iniciei a instância ec2 e reiniciei a instância RDS sem sucesso.
Vejo que há postagens esporádicas sobre falhas intermitentes de DNS da AWS, mas nada que pareça se adequar ao meu problema.
Alguém reconhece o problema? Alguém sabe que testes adicionais posso fazer para diagnosticar isso?
Obrigado
Responder1
Acontece que reiniciar o Apache corrigiu o problema pelo menos até a próxima vez que reiniciei a instância ec2. Obviamente há algum problema com minha versão da AMI (criada em agosto de 2013). Uma versão atualmente desenvolvida (dezembro de 2013) do Elastic Beanstalk não apresenta esse problema.