Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 无法从AWS ECS任务向Twilio发送请求(awsvpc网络模式)_Amazon Web Services_Twilio_Amazon Ecs_Amazon Vpc_Aws Security Group - Fatal编程技术网

Amazon web services 无法从AWS ECS任务向Twilio发送请求(awsvpc网络模式)

Amazon web services 无法从AWS ECS任务向Twilio发送请求(awsvpc网络模式),amazon-web-services,twilio,amazon-ecs,amazon-vpc,aws-security-group,Amazon Web Services,Twilio,Amazon Ecs,Amazon Vpc,Aws Security Group,我使用的是AWS-ECS服务,集群上有5个正在运行的任务,它们以awsvpc网络模式启动 问题是任务应该向Twilio发送SMS代码的请求,但向Twilio的请求超时 const twilioClient = require('twilio')(accountSid, authToken) try { await twilioClient.messages.create({ body: `${code}`, from: phoneNumber,

我使用的是AWS-ECS服务,集群上有5个正在运行的任务,它们以
awsvpc
网络模式启动

问题是任务应该向Twilio发送SMS代码的请求,但向Twilio的请求超时

  const twilioClient = require('twilio')(accountSid, authToken)
  try {
    await twilioClient.messages.create({
      body: `${code}`,
      from: phoneNumber,
      to: userInput.phone
    })
  } catch (err) {
    console.log('Twilio Error: ', err)
    return false
  }
下面的错误显示了我登录CloudWatch时的错误

Twilio Error: { 
Error: ETIMEDOUT
at Timeout._onTimeout (/srv/node_modules/request/request.js:849:19)
ontimeout (timers.js:436:11)
at tryOnTimeout (timers.js:300:5)
at listOnTimeout (timers.js:263:5)
at Timer.processTimers (timers.js:223:10) code: 'ETIMEDOUT', connect: true
}
问题是,对于AWS ECS上的任务,相同的代码在默认网络模式下工作

我使用的是
EC2
模式,而不是
Fargate
模式。 期待在这方面得到正确的帮助。
干杯。

任务的安全组是什么样子的?现在,我让它接受
入站规则中任何位置的所有端口(0-65535),并允许通过所有端口(0-65536)发送到
出站规则中的任何位置
。可能需要编辑您的问题,以包括
aws ecs描述服务的输出--群集名称--服务名称--查询“服务[0].网络配置”
。另外,
aws ec2的输出描述安全组--group ids security\u group\u ID
aws ec2描述路由表
,因此可以看到ECS服务周围的所有网络位。基本上,我会查看任务是否有到internet的路由(通过IGW或公共IP),以及安全组是否允许。如果你使用NACL,它也有可能成为你的绊脚石。