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

AWS部署Serverless函数无法连接同VPC内Prisma Postgres RDS

AWS Lambda 连接同VPC私有子网RDS失败排查方案

报错核心为Prisma客户端无法连通RDS的5432端口,结合描述的网络架构,按以下优先级逐一排查即可定位问题:

1. 安全组规则(占此类问题80%以上)

  • RDS绑定的安全组入站规则:必须放通Lambda所绑定安全组的5432端口TCP访问。当前能通过公网EC2跳板连接RDS,仅代表RDS安全组放通了EC2的IP或对应安全组,和Lambda的访问权限无关。
  • Lambda绑定的安全组出站规则:若未做过自定义出站限制,默认全放通规则可满足需求;如果做过出站白名单配置,必须放通到RDS安全组的5432端口TCP出站权限。

注意:安全组授权时优先指定安全组ID作为源/目标,不要写死IP段,避免VPC内IP变动导致规则失效。

2. Lambda VPC配置校验

  • 子网配置校验:同VPC访问RDS的最优实践是将Lambda部署到和RDS相同可用区的私有子网。如果Lambda部署在公有子网,必须开启Lambda的公网IP自动分配并绑定弹性IP,否则公有子网内的Lambda没有网络转发能力,无法访问同VPC其他子网资源。
  • 路由表校验:Lambda所在子网关联的路由表中,目标为当前VPC网段的路由必须指向local(VPC默认路由),确保VPC内网流量不经过NAT网关、互联网网关转发,避免内网流量被路由到公网导致不通。

3. RDS网络配置校验

  • 子网组校验:确认RDS关联的数据库子网组确实覆盖Lambda部署的可用区,避免跨可用区路由缺失。可在和Lambda同子网的EC2实例上执行nslookup xxxx.yyyy.us-east-1.rds.amazonaws.com,核对返回的IP地址是否属于RDS所在私有子网的CIDR段,确认RDS域名解析到内网地址。
  • 访问控制校验:如果自定义过RDS的PostgreSQL参数组,需要核对pg_hba.conf对应的访问规则没有拦截VPC内网段的数据库连接请求,默认RDS配置是放通整个VPC内网访问的。

4. Lambda执行权限校验

Lambda接入VPC需要通过创建弹性网卡实现网络挂载,如果执行角色缺少对应的VPC操作权限,会出现弹性网卡创建失败、网络隐性不通的问题,需确保执行角色附带以下权限:

{
    "Effect": "Allow",
    "Action": [
        "ec2:CreateNetworkInterface",
        "ec2:DescribeNetworkInterfaces",
        "ec2:DeleteNetworkInterface",
        "ec2:AssignPrivateIpAddresses",
        "ec2:UnassignPrivateIpAddresses"
    ],
    "Resource": "*"
}

5. 连通性验证(排除应用层问题)

完成以上配置检查后,先部署测试函数验证底层网络连通性,排除Prisma配置、数据库账号密码等应用层问题,测试代码如下:

const net = require('net');
exports.handler = async () => {
  const socket = net.createConnection({
    host: 'xxxx.yyyy.us-east-1.rds.amazonaws.com',
    port: 5432
  });
  return new Promise((resolve) => {
    socket.on('connect', () => {
      socket.end();
      resolve('数据库5432端口连通成功');
    });
    socket.on('error', (err) => {
      resolve(`连通失败: ${err.message}`);
    });
    setTimeout(() => resolve('连接超时,网络层不通'), 5000);
  })
}

如果测试函数返回连通失败,可确定问题出在网络层,和Prisma客户端、数据库业务配置无关;如果连通成功,再排查Prisma的数据库连接串配置、数据库账号权限即可。


内容的提问来源于stack exchange,提问作者agusgambina

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 00:33:25