#amazon-web-services #amazon-elastic-beanstalk
#amazon-web-services #amazon-elastic-beanstalk
Вопрос:
Я надеюсь, что смогу получить некоторую помощь с этой проблемой развертывания, с которой я столкнулся:
Я создал экземпляр RDS и могу видеть, что он «Доступен», посмотрев на панель мониторинга. Затем я использую интерфейс командной строки Elastic Beanstalk для развертывания своего приложения, и развертывание проходит успешно.
Однако, когда я получаю доступ к конечной точке, я получаю 502 Bad Gateway от nginx. После проверки журналов я вижу следующую ошибку из моего Node.js приложение:
Ошибка: время подключения x.x.x.x: 5432 (ip не указан)
Согласно документации AWS по этому вопросу, я попытался назначить автоматически сгенерированную группу безопасности из моего экземпляра Elastic Beanstalk моему экземпляру RDS, но я все еще получаю ту же ошибку.
Есть ли что-то, что я неправильно понял в документации здесь? Я был бы очень благодарен, если кто-нибудь сможет указать мне здесь правильное направление.
Заранее благодарю вас.
Ответ №1:
Удалось выяснить это после множества проб и ошибок. Оказывается, это было не так уж сложно.
- Перейдите в свою среду EB -> Конфигурация
- Нажмите «Редактировать» рядом с «Экземплярами»
- Запишите идентификатор группы безопасности, который выбран внизу
- Создайте новую группу безопасности, например, «my-eb-instance-rds-access».
- В разделе «Входящие правила» выберите «Добавить правило». Выберите любую службу БД, которую вы используете, и она должна автоматически заполнить порт. Установите для источника значение «Пользовательский», а затем щелкните в окне поиска. Выберите группу безопасности, имеющуюся в вашем экземпляре EB, которую вы отметили ранее.
- Нажмите «Создать группу безопасности»
- Найдите свой экземпляр RDS и нажмите «Изменить»
- Прокрутите вниз и найдите «Подключение». Затем выберите группу безопасности, которую вы только что создали, из выпадающего списка.
- Прокрутите страницу до конца и нажмите продолжить. Здесь я обнаружил, что существует два варианта: один, который обновляет изменения немедленно, а другой, который ожидает регулярного планового обслуживания. Я не эксперт, но я выбрал опцию «немедленно», поскольку база данных еще не используется в производстве, поэтому некоторое время простоя не было проблемой.
- Теперь ваш экземпляр EB должен иметь возможность подключаться! Это сработало для меня даже после повторного развертывания.
Отказ от ответственности: я ни в коем случае не эксперт. Это было сделано исключительно методом проб и ошибок. Если у кого-то есть какие-либо советы или улучшения, я был бы рад услышать их и отредактировать ответ.