amazon-web-services - AWS lambda 放入私有子网后无法访问 DynamoDB?
问题描述
正如标题所示,我将我的 Lambda 函数放在私有子网中,现在它在扫描数据库时无法访问或超时。在此之前,它可以访问和扫描数据库。我应该怎么办?
解决方案
您的 DynamoDB 资源不在您的 VPC 中。由于您已将 Lambda 函数配置为连接到您的 VPC,因此您需要设置 NAT 网关或 NAT 实例以允许您的私有资源访问 Internet。正如文档所述:
AWS Lambda 使用您提供的 VPC 信息来设置 ENI,以允许您的 Lambda 函数访问 VPC 资源。每个 ENI 都从您指定的子网的 IP 地址范围内分配了一个私有 IP 地址,但没有分配任何公共 IP 地址。因此,如果您的 Lambda 函数需要 Internet 访问(例如,访问没有 VPC 终端节点的 AWS 服务),您可以在 VPC 内配置 NAT 实例,也可以使用 Amazon VPC NAT 网关。您不能使用连接到您的 VPC 的 Internet 网关,因为这要求 ENI 具有公共 IP 地址。
推荐阅读
- php - 无法解析的依赖解析[参数#1[
$var]] 类 App\View\Components\Header(View:laracurd\resources\views\welcome.blade.php) - android - 如何将 TextView 相对于另一个居中 - Android Studio
- firebase - 如何在 Recycler View 中实现多选,但为 firebase 数据库项目创建的回收器适配器来自 Recyler 上的服务器
- excel - 当我在 Excel 2010 中刷新我的数据透视表时,条件格式在除标题单元格之外的所有单元格中消失
- javascript - 当我单击使用 Tampermonkey 添加到电子邮件的按钮时,如何阻止 gmail 打开电子邮件?
- gtk - 样式化 Gtk.Label 对象
- r - 如何在R中添加分类变量时组合多列
- android - 更改 nativescript android api 版本
- python - Collections.counter() 计算字母而不是单词
- arrays - 为什么动态数组包含 null 而不是实际的字符串