我已将该IP列入白名单,但是EC2实例仍未连接到Mongo Atlas上的数据库。是什么原因造成的?

时间:2020-01-15 07:04:00

标签: amazon-web-services amazon-ec2 mongodb-atlas

主题:从EC2实例连接到Mongo Atlas M10集群。

问题:我需要EC2实例来简单地连接到数据库并编写一些内容。为了测试这一点,我在node.js中有一个脚本,该脚本打开与数据库的连接,然后关闭:

var MongoClient = require('mongodb').MongoClient
... // have checked that I am using correct URI.
client = await mongodb.connect(uri, { useUnifiedTopology: true }); // timing out
... // and close

然后的问题是,这超时了:

(node:10080) UnhandledPromiseRejectionWarning: MongoTimeoutError: Server selection timed out after 30000 ms
at Timeout.setTimeout [as _onTimeout] (/home/ubuntu/scripts/node_modules/mongodb/lib/core/sdam/server_selection.js:309:9)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5)

(节点:10080)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。该错误是由于在没有catch块的情况下抛出异步函数而引起的,或者是由于拒绝了未经.catch()处理的诺言而引起的。 (拒绝ID:1) (节点:10080)[DEP0018] DeprecationWarning:已弃用未处理的承诺拒绝。将来,未处理的承诺拒绝将以非零退出代码终止Node.js进程。

我所做的事情: -我尝试使用其他版本的mongodb软件包。 -从另一台具有白名单IP的计算机连接到数据库。 -将EC2的IP列入白名单,然后仔细检查该地址。 -同时在两者之间设置VPC对等。 VPC允许lambda函数访问数据库,但不能访问实例。

问题: 在将IP地址列入白名单之后,您是否遇到过连接问题,或者对我可以尝试的事情有其他想法?

0 个答案:

没有答案