Я работаю над проектом Django, который использует Zappa для размещения безсерверного приложения на Lambda.Он использует базу данных Postgres на задней панели, и я могу использовать ее безупречно в течение некоторого времени.Недавно мне нужно было использовать urllib, и поэтому мне нужен был экземпляр NAT (микроэкземпляр EC2), чтобы Lambda мог выходить в Интернет.
Теперь, когда он настроен, он отлично работает на производстве, я вижу свой сайтхорошо, и все части взаимодействуют правильно.Тем не менее, локально Django не может подключиться, он получает эту ошибку:
django.db.utils.OperationalError: не удалось подключиться к серверу: истекло время ожидания соединения (0x0000274C / 10060)
Работает ли сервер на хосте "XXXXXXXXX.XXXXXXXXX.us-west-2.rds.amazonaws.com" (54.70.245.158) и принимает соединения TCP / IP через порт 5432?
Контурчерез шаги, которые я прошел, я создал сеть VPC с частными и общедоступными подсетями с помощью мастера.Я добавил еще 2 частных подсети в других зонах для доступности.Я перешел к своей функции Lambda и изменил подсети на новые подсети, а также перенес свои RDS в те же подсети (частные).Для моего RDS я создал новую группу безопасности для Postgres (порт 5432, входящий с источником 0.0.0.0/0).
Мой файл settings.py в Django остается прежним:
DATABASES = {
# AMAZON RDS Instance
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'XXXXXXXXX',
'USER': 'XXXXXXXXX',
'PASSWORD': 'XXXXXXXXX',
'HOST': 'XXXXXXXXXX.XXXXXXXXXX.us-west-2.rds.amazonaws.com',
'PORT': '5432',
}
}
Я не уверен, куда идти отсюда.Я могу честно сказать, что это вне моей зоны комфорта, и я не знаю, что я делаю.Я подозреваю, что есть что-то, что мне нужно сделать с группой безопасности, но я над головой и буду очень признателен за помощь.Спасибо!