2

我在亚马逊创建了一个集群和一个 DocumentDB 实例。当我尝试连接到我的本地 SSH (MacOS) 时,它会显示以下消息:

在此处输入图像描述

当我尝试 MongoDB Compass 社区时:

mongodb://Mobify:<My-Password>@docdb-2019-04-07-23-28-45.cluster-cmffegva7sne.us-east-2.docdb.amazonaws.com:27017/?ssl=true&ssl_ca_certs=rds-combined-ca-bundle.pem&replicaSet=rs0

它加载了很多分钟,最后得到了这个结果:

在此处输入图像描述

解决此问题后,我想知道是否可以将 documentDB 集群连接到另一个可用区域中的实例......我在俄亥俄州有我的 DocumentDB,我在圣保罗有一个 EC2......可能的?

4

2 回答 2

4

Amazon DocumentDB 集群部署在 VPC 中,以提供与 Internet 的强大网络隔离。要从 VPC 外部连接到您的集群,请参阅以下内容:https ://docs.aws.amazon.com/documentdb/latest/developerguide/connect-from-outside-a-vpc.html

于 2019-04-10T22:57:31.680 回答
1

AWS 文档数据库托管在具有自己特定子网和安全组的 VPC(虚拟私有云)上;基本上,驻留在 VPC 中的任何内容都不能公开访问。

文档数据库部署在 VPC 中。为了访问它,您需要创建一个 EC2 实例或 AWS Could9。

让我们从 EC2 实例访问它并使用 SSH 隧道访问 AWS 文档数据库。

  1. 创建任何配置的 EC2 实例(最好是 ubuntu)并选择托管文档数据库集群的同一 VPC。

  2. EC2完全初始化后,启动SSH隧道,将本地端口@27017与文档数据库集群主机@27017绑定。

ssh -i "<ec2-private-key>" -L 27017:docdb-2019-04-07-23-28-45.cluster-cmffegva7sne.us-east-2.docdb.amazonaws.com:27017 ubuntu@<ec2-host> -N

  1. 现在,您的 localhost 已通过端口 27017 连接到 ec2。从mongosh或连接mongo,输入您的集群密码,您将登录并执行任何查询。

mongosh --sslAllowInvalidHostnames --ssl --sslCAFile rds-combined-ca-bundle.pem --username Mobify --password

注意:SSL 将被弃用。使用 tls,只需将上述命令中的 SSL 替换为 tls 即可。

于 2021-08-14T00:20:07.140 回答