跳至内容

为什么我无法连接到我的 Amazon DocumentDB 集群?

2 分钟阅读
0

我在尝试连接到我的 Amazon DocumentDB(兼容 MongoDB)集群时遇到了问题。

简短描述

Amazon DocumentDB 是一项仅限虚拟私有云 (VPC) 的服务,不支持使用公共端点。要进行连接,您必须使用 Amazon Elastic Compute Cloud (Amazon EC2) 实例或与您的实例位于相同 VPC 中的其他 AWS 服务。

要从不同 VPC 或 AWS 区域中的 EC2 实例或其他 AWS 服务访问 Amazon DocumentDB,请使用 Amazon Virtual Private Cloud (Amazon VPC) 对等连接AWS Transit Gateway。如果您必须从 AWS 网络外部访问您的 Amazon DocumentDB 集群,请使用 SSH 隧道AWS Client VPN

按照以下故障排除步骤来解决连接问题。

解决方法

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

数据库实例未处于 Available(可用)状态

检查您的集群是否至少有一个实例。您的实例集群必须处于 Available(可用)状态才能接受连接。

源无权访问集群

确认您用于连接到 Amazon DocumentDB 实例的源可以访问以下位置的集群:

执行以下操作,以免阻挡来自连接到数据库实例的源的流量:

  • 如有必要,配置安全组规则以允许源流量进出数据库实例。您可以指定 IP 地址、IP 地址范围或其他 VPC 安全组。
  • 如果您在 VPC 中使用网络 ACL,请添加规则以允许进出数据库实例的入站和出站流量。有关详细信息,请参阅网络 ACL 规则
  • 对于数据库实例用于入站和出站通信的端口,配置您的网络以允许流量进出这些端口。

**注意:**当您使用 SSH 隧道连接到 VPC 外部的 Amazon DocumentDB 集群时,请检查您用作堡垒主机的 EC2 实例。确保它具有所需的网络配置,以允许进出集群的流量。

Amazon VPC 子网路由表不允许流量

与您的集群子网关联的路由表必须具有通往源的有效路由。此外,与您的源子网关联的路由表必须具有通往集群的有效路由。

如果您的源和集群属于同一 VPC,请在子网的路由表中配置本地路由。如果您使用 VPC 对等连接进行连接,请确保两个 VPC 路由表都有指向对等 VPC 或子网 CIDR 数据块的路由。有关详细信息,请参阅路由选项示例

您的主数据库实例可能会失效转移到备用副本。如果副本使用不同的路由表,则流量可能无法正确路由。为避免此问题,请确保您的集群子网和源子网使用正确的路由表。

DNS 名称或端点不正确

确认您使用正确的 DNS 名称或端点连接到集群。然后确认端点的格式是否适合用于连接到数据库实例的客户端。

要解决 DNS 和连接问题,请参阅无法连接到 Amazon DocumentDB 端点

您使用了错误的凭证连接集群

确保在您连接到集群时输入正确的用户名和密码。如果您忘记了密码,则可以修改 Amazon DocumentDB 集群以重置密码

您的应用程序不使用 TLS 加密连接

默认情况下,Amazon DocumentDB 会为所有集群启用传输中加密。如果您的应用程序不使用 TLS/SSL 连接,则可以修改 TLS 集群参数值以关闭 TLS。

收到“unable to get local issuer certificate”错误消息

对于与证书颁发机构 (CA) 证书兼容的 MongoDB 驱动程序,您可能会收到“unable to get local issuer certificate”错误消息。如果您在启用 TLS 时连接到集群,请确保使用最新的公共证书捆绑包

重启后您无法连接到您的实例

当您重启实例时,该实例的私有 IP 地址可能会更改并导致连接问题。最佳做法是使用集群或实例端点。

多次连接后无法连接

如果无法再连接,则您的实例可能已达到其实例类的最大数据库连接配额。如需允许更多连接,请升级实例类。

最佳做法是从客户端对连接管理进行故障排除。检查您的连接池和相关的超时设置。设置必须足以让您管理与集群的连接数量。调整设置,以免达到连接配额。

您无法使用 AWS Client VPN 从本地系统进行连接

使用 VPN 时,您可能无法从本地系统连接到集群。AWS Client VPN 允许您从 VPC 连接到远程网络,并配置路由以通过连接传递流量。确保正确配置 AWS Client VPN

遇到间歇性连接问题

如果您的应用程序遇到间歇性连接问题,请检查集群上是否存在繁重的工作负载。例如,查看 Amazon CloudWatch 指标(例如 VolumeWriteIOPsVolumeReadIOPsOpcountersCommandCPUUtilizationDBLoad),了解可能由资源瓶颈引起的峰值。次优的查询计划可能会导致用户查询运行缓慢,资源争用可能会阻止用户查询。使用性能详情探查器日志来查找导致此问题的查询。

重要事项:性能详情将于 2025 年 11 月 30 日到期。您可以在 2025 年 11 月 30 日之前升级到数据库洞察的高级模式。如果您不进行升级,则使用性能详情的数据库集群将默认采用数据库洞察的标准模式。只有数据库洞察的高级模式才支持执行计划和按需分析。如果您的集群默认采用标准模式,则您可能无法在控制台上使用这些功能。要开启高级模式,请参阅开启适用于 Amazon RDS 的数据库洞察的高级模式开启适用于 Amazon Aurora 的数据库洞察的高级模式

相关信息

对连接问题进行故障排除

使用 CloudWatch 监控 Amazon DocumentDB

Amazon DocumentDB 中的安全性

AWS 官方已更新 2 个月前