У меня есть MongoDB Cluster в MongoDB Atlas, и я использую этот MONGO_URI, который они предоставили для подключения к нему. Формат примерно такой:
mongodb://<USERNAME>:<PASSWORD>@cluster0-shard-00-00-nnn.gcp.mongodb.net:27017,cluster0-shard-00-01-nnn.gcp.mongodb.net:27017,cluster0-shard-00-02-nnn.gcp.mongodb.net:27017/test?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin&retryWrites=true
Когда я запускаю программу node.js локально, я могу читать и записывать базу данных. Однако при развертывании в облаке Google я подключаюсь к нему. Вот что я вижу в консоли Google:
Mongoose connection "error" event fired with:
{ MongoError: connection 5 to cluster0-shard-00-02-32tq4.mongodb.net:27017 closed
at Function.MongoError.create (/srv/node_modules/mongoose/node_modules/mongodb-core/lib/error.js:29:11)
at TLSSocket.<anonymous> (/srv/node_modules/mongoose/node_modules/mongodb-core/lib/connection/connection.js:214:22)
at Object.onceWrapper (events.js:315:30)
at emitOne (events.js:121:20)
at TLSSocket.emit (events.js:211:7)
at _handle.close (net.js:557:12)
at Socket.done (_tls_wrap.js:356:7)
at Object.onceWrapper (events.js:315:30)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at TCP._handle.close [as _onclose] (net.js:557:12)
Я пытался добавить allow-mongodb
в брандмауэр с протоколами и портами, такими как tcp:27017
, направление ingress
, диапазоны IP-адресов 0.0.0.0/0
, и он все еще не работает. Может кто-нибудь сказать мне, что мне здесь не хватает?
P.S Я подозреваю, что мне нужно добавить IP-адрес моего кластера mongodb в брандмауэр, хотя я не уверен,