AWS SQS 超时

问题描述 投票:0回答:1

我有一个 lambda Nodejs,它向 SQS 发送 SendMessage。

但是,这个命令会超时。没有错误信息。

lambda 和 sqs 位于同一 VPC 中,并且每个都有端点。

lambda 的策略允许它向 SQS 发送消息。

lambda 代码在其他帐户中运行良好。我没有看到这些帐户之间有任何区别。

您知道什么会导致此超时吗?

我尝试过

  • 设置端点
  • 呼叫其他现有的sqs
  • 呼叫不存在的 sqs
  • 重建 sqs、lambda 和角色

谢谢

node.js amazon-web-services aws-lambda amazon-sqs
1个回答
0
投票

请注意,Amazon SQS 不存在于 VPC“内部”。它可以通过 Internet 或通过 VPC 内的“SQS VPC 端点”访问。

如果您的 Lambda 函数不需要连接到 VPC 内的任何其他资源,那么您应该 断开 Lambda 函数与 VPC 的连接。这将使其自动访问互联网,并且应该能够调用 Amazon SQS。

如果您的 Lambda 函数

需要连接到 VPC 内的其他资源(例如 Amazon RDS 数据库),那么您将使用 SQS 的 VPC 终端节点来连接到 Amazon SQS。安全组配置应该是:

    Lambda 函数 (
  • Lambda-SG
    ) 上允许所有出站流量的安全组
  • VPC 终端节点 (
  • Endpoint-SG
    ) 上的安全组允许来自 
    Lambda-SG
     的端口 443 上的入站访问(即 
    Endpoint-SG
     应特别引用 
    Lambda-SG
    OR 该安全组可以允许来自以下位置的所有入站访问VPC 的 CIDR 范围甚至0.0.0.0/0
© www.soinside.com 2019 - 2024. All rights reserved.