1

我在 AWS 中创建了一个 DocumentDb 集群,并试图将其连接到我机器上的本地服务器。这是我的代码

    const mongoose = require('mongoose')
const fs = require('fs');
mongoose.Promise = global.Promise
var ca = [fs.readFileSync(__dirname+'\\rds-combined-ca-bundle.pem')];

const url = 'mongodb://**********:*****************@docdb-2019-07-30-08-45-53.cluster-czognfvnmvja.us-east-1.docdb.amazonaws.com:27017/?ssl=true&ssl_ca_certs=rds-combined-ca-bundle.pem&replicaSet=rs0'

mongoose.connect(url, {
    sslValidate: false,
    sslCA: ca,
    ssl:true,
    useNewUrlParser: true
}).then(() => {
    console.log("Connection Successfull")
}).catch((err) => {
    console.log("Error " + err);
})
  • 可能吗?(我已经读过,你需要在 AWS vpc 中才能连接。所以我必须将我的本地服务器移动到 EC2 吗?)
  • 如果是,那么我在上面的代码中做错了什么。
4

1 回答 1

3

如果您与 DocumentDB 不属于同一个 VPC,则无法按照您专门编写的方式访问。检查这篇文章

基本上,本文解释了如何通过 ssh 隧道与位于同一 VPC 中的 EC2 访问 DocumentDB。由于 EC2 位于 VPC 中,因此可以从 EC2 连接 DocumentDB,您的本地代码可以通过 EC2 连接 DB。

于 2019-07-30T13:33:12.727 回答