Назад | Перейти на главную страницу

Лямбда подключается к mongodb, который разрешает только подключение localhost в ec2

У меня есть MongoDB, который разрешает подключение только с локального хоста, работающего на моем ec2. В настоящее время только мое приложение nodejs, которое работает на том же экземпляре ec2, подключается к mongodb с помощью этой команды mongoose.connect('mongodb://user:pass@localhost:27017/mydb', {})

Сейчас я переношу свои коды на лямбда. Поскольку мой mongodb разрешает только соединение localhost, в настоящее время моя лямбда не сможет подключиться к моему mongodb, поэтому мне нужно открыть соединение MongoDB, чтобы разрешить подключение с внешнего IP-адреса? Но кто-то мне сказал (но он все равно не уверен в этом), что я могу просто использовать VPC, чтобы разрешить лямбда-соединение с моей MongoDB, без необходимости открывать мое соединение MongoDB или вносить какие-либо изменения в мою конфигурацию MongoDB. Он прав в этом?

Я только начал читать об этом VPC, потому что никогда не использовал его раньше, но я просто прошу здесь подтверждения или любых других альтернатив.

Спасибо

Простой ответ - НЕТ, вы не можете подключиться к MongoDB извне без включения удаленных подключений. Во-первых, вам нужно настроить MongoDB, отредактировать файл /etc/mongod.conf в разделе «Сетевые интерфейсы», чтобы обновить значение bindIp до 0.0.0.0. Теперь вам нужно создать VPC (если у вас его нет), назначить лямбда и EC2 одному и тому же VPC, создать группу безопасности и назначить этой группе лямбда и EC2. В строке подключения Nodejs убедитесь, что вы указали ссылку частный IP-адрес EC2.