两分钟后ec2等待超时

时间:2016-01-29 17:46:12

标签: node.js amazon-web-services amazon-ec2 aws-sdk aws-lambda

我有一个简单的lambda函数,它检查实例状态但是超时。我将超时设置为2分钟。该角色拥有EC2的所有权限。

    ec2.waitFor('instanceRunning', {InstanceIds: ['someinstanceid'], DryRun:true}, function(err, data) {
      if (err)
      {
            console.log(err);
            context.fail(err);
      }
      else
      {
            console.log(data);
            context.succeed(data);
      }
    });

1 个答案:

答案 0 :(得分:0)

对于那些乘坐google来到这里的人:

可以像这样配置waitFor的行为:

let params = {
    InstanceIds: ["i-1234567890"],
    //Waiter configuration
    $waiter: {
        maxAttempts : 1000,
        delay: 10
    }
};

EC2.waitFor("instanceRunning", params, function(error, data){
    /***/
}.bind(this));

这里我将检查延迟配置为10秒,最多1000次尝试,即166分钟。

请注意,所有maxAttempts都需要失败,因此您知道该实例实际上无法启动,因此您可能需要仔细使用它。