You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将MongoDB Atlas集群连接至两个AWS VPC的连接问题排查

AWS Dev账号VPC与MongoDB Atlas对等连接排查思路

问题背景

我拥有两个AWS账号(AWSDev和AWSProd),以及同一MongoDB账号下的两个MongoDB Atlas集群。AWSProd的默认VPC与Atlas的对等连接已配置完成并添加路由表条目,运行正常;但AWSDev的默认VPC对等连接虽显示活跃,Lambda函数却无法连接集群。怀疑问题源于两个AWS VPC使用相同CIDR块,导致MongoDB Atlas路由表无法区分二者,仅能与第一个配置的AWSProd VPC通信。

已完成的排查操作:

  • 确认Lambda函数配置为在AWSDev默认VPC的子网和安全组下运行
  • 验证MongoDB连接字符串(含用户名和密码)正确

考虑在AWSDev账号创建新VPC重新部署,以下是额外的排查思路:


额外排查思路

  • 检查MongoDB Atlas的对等连接路由配置:登录Atlas控制台,查看对应集群的网络 peering 设置,确认AWSDev VPC的对等连接路由条目是否正确添加。由于两个VPC CIDR相同,需确认Atlas路由表是否存在重复的CIDR条目,是否优先匹配了先配置的AWSProd路由,导致Dev的连接请求被错误转发。
  • 验证AWSDev VPC的路由表配置:进入AWS Dev账号的VPC控制台,检查默认VPC子网对应的路由表,确认已添加指向MongoDB Atlas对等连接的路由条目——目标地址需设置为Atlas集群的CIDR段,下一跳选择对应的对等连接ID。
  • 核对安全组双向规则:
    • 检查AWSDev VPC中Lambda使用的安全组,是否允许出站访问MongoDB Atlas的默认端口(27017)或集群配置的自定义端口;
    • 检查MongoDB Atlas的网络访问列表,是否正确添加了AWSDev VPC对等连接对应的网络条目(即使CIDR与Prod重复,也要确认是否完成了Dev账号的对等连接授权)。
  • VPC内EC2连通性测试:在AWSDev默认VPC的相同子网和安全组下启动一台EC2实例,使用相同的MongoDB连接字符串尝试连接集群。若EC2也无法连接,说明问题出在VPC与Atlas的网络链路层面;若EC2能正常连接,则需排查Lambda的专属配置问题(如执行角色权限、ENI配额、环境变量等)。
  • 查看MongoDB Atlas连接日志:在Atlas控制台的集群日志中,筛选来自AWSDev VPC的连接请求,查看是否有拒绝记录或错误信息(如认证失败、网络超时等),精准定位问题节点。
  • 确认AWS对等连接的细节配置:检查AWSDev账号中对等连接的状态详情,确认双方的VPC ID、AWS账户ID是否匹配,若为跨区域对等连接,需确认跨区域路由配置是否正确生效。
  • 排查Lambda网络配置细节:确认Lambda已启用VPC访问权限,且所选子网的路由表包含指向对等连接的条目;同时检查Lambda的弹性网络接口(ENI)是否正常创建,是否存在ENI配额不足的情况。

内容的提问来源于stack exchange,提问作者Ben Zuill-Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 22:15:27