У меня есть конфигурация AWS Elastic Beanstalk (PHP) с одним экземпляром EC2 и одним экземпляром RDS. Это среда контроля качества. Он работал хорошо, но недавно он начал последовательно выходить из строя со следующей ошибкой (изменений кода не было):
"PDO :: __ construct (): php_network_getaddresses: getaddrinfo failed: временный сбой в разрешении имен Ошибка: ошибка при подключении к базе данных pdo_mysql: неудачная попытка подключения: SQLSTATEHY000 2002 php_network_getaddresses: getaddrinfo failed: временный сбой в разрешении имен"
В этом нет ничего временного.
Если я заменю IP-адрес экземпляра RDS вместо имени хоста, он будет хорошо работать в AWS.
Если я получаю доступ к экземпляру AWS RDS с моей локальной машины разработки (вне AWS), используя имя хоста, он отлично выполняет тот же код.
Nslookup для имени хоста RDS хорошо работает с экземпляром EC2.
Я остановил и запустил экземпляр ec2 и безрезультатно перезагрузил экземпляр RDS.
Я вижу, что есть спорадические сообщения о периодических сбоях DNS AWS, но ничего, что, кажется, не соответствует моей проблеме.
Кто-нибудь распознает проблему? Кто-нибудь знает, какие дополнительные тесты я могу сделать, чтобы диагностировать это?
Спасибо
Оказывается, перезапуск apache устранил проблему, по крайней мере, до следующего перезапуска экземпляра ec2. Очевидно, есть проблема с моей версией AMI (построенной в августе 2013 года). Текущая версия Elastic Beanstalk (декабрь 2013 г.) не имеет этой проблемы.