是否可以在没有 VPC 的情况下启动 RDS 实例?

Is it possible to launch an RDS instance without a VPC?

我正在尝试通过 Lambda 函数将记录插入到 RDS 中的 Postgres 数据库中。我的 Node.js lambda 函数在本地 运行 时正常工作,但在 AWS 中 运行 时数据库连接超时。

我阅读了几篇文章和教程,这些文章和教程表明 AWS Lambda 函数无法访问 VPC 内的 RDS 实例。例如:http://ashiina.github.io/2015/01/amazon-lambda-first-impression/

不幸的是;看来我无法创建一个存在于 VPC 之外的 RDS 实例。 At this dropdown I would expect to be able to select an option for "No VPC" or something along those lines.

这个选项被删除了吗?也许我错过了一步?

您可以创建可公开访问的 RDS 实例。然后您应该能够从 AWS 内部或外部的任何地方访问它。我相信这会解决您与 Lambda 的问题。当您通过 Web 控制台创建新的 RDS 实例时,系统会询问您是否需要公开访问这些实例。

或者您可以等待几周,因为 VPC 中的 Lambda 应该启用“later this year”。

编辑: 请注意,较新的 Amazon 帐户仅限于 VPC 资源。您不能再在 VPC 外部创建 EC2 或 RDS 实例。这就是为什么您不再看到 "No VPC" 选项的原因。

第二次编辑:Lambda 函数的 VPC 访问现已普遍可用。

这个问题已经有一段时间了,但是对于那些正在使用 MySQL 的人来说,现在您可以在没有 VPC 的情况下将 AWS Lambda 与 Aurora Serverless 连接起来,利用他们的新数据 API。查看此示例了解详细信息 https://coderecipe.ai/architectures/77374273