2017-07-07 154 views
0

我已经使用Cloud Formation创建了一个无服务器实例。我不想连接到现有的RDS。我已经看到了用于创建RDS实例的模板,但不能连接到现有的模板。我真的不想创建一个,我想使用现有的。从lambda无服务器连接RDS

我的第一个猜测和尝试是创建一个AWS :: RDS :: DBSecurityGroup,但似乎适用于为从其创建的RDS实例设置安全模板。我只想连接到已经存在的RDS。

我试着将IP添加到白名单中,但IP在每个请求上发生变化,因此无法正常工作。

我试着改变策略来添加完整的RDS访问,但是这似乎只允许管理,不能访问数据库。

"Policies": [ 
     "AWSLambdaFullAccess", 
     "AmazonRDSFullAccess" 
    ], 

入门代码从这里: https://carlos.mendible.com/2017/07/04/deploy-your-asp-net-core-web-api-to-aws-lambda/

+4

您是否将lambda放置在vpc内和rds可访问的子网中? – Ashan

+0

没有VPC,它是无服务器的。不,lambda和RDS不在同一个子网上。实际上,我的长期计划是在不同区域有一个中央RDS多个lambda实例访问它,因此我故意从不同区域进行测试。 –

回答

0

要从LAMBDA访问RDS,λ-需要被附连到VPC,也放置在访问RDS子网。

您可以将Lambda放置在仍然满足上述要求的不同可用区中。

注意:如果将RDS放置在私有子网中,并且您的Lambda还需要访问VPC之外的外部服务,则需要考虑为其设置NatGateway。