2016-10-18 3 views
0

Я только что создал эту функцию в AWS Lambda, чтобы запустить несколько экземпляров. Однако, когда я запускаю тест, он запускает только один из экземпляров, а не все экземпляры массива. Это проблема с тем, как я определил свой массив в функции? Лямбда не бросила ошибку json, поэтому я решил, что все в порядке. Я использую формат времени выполнения Node.js 4.3.Функция AWS Lambda для запуска нескольких экземпляров

var AWS = require('aws-sdk'); 
exports.handler = function(event, context) { 
var ec2 = new AWS.EC2({region: 'us-west-1'}); 
ec2.startInstances({InstanceIds : (['i-a11111'],['i-a22222'],['i-a33333'],['i-a44444']) },function (err, data) { 
if (err) console.log(err, err.stack); // an error occurred 
else console.log(data); // successful response 
context.done(err,data); 
}); 
}; 

ответ

1

Из документации AWS JavaScript SDK, параметр InstanceIds должен быть массив строк: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#startInstances-property

Это должно быть правильный формат:

{ InstanceIds : ['i-a11111','i-a22222','i-a33333','i-a44444'] } 
+0

Спасибо. Прекрасно работает – jebjeb

+0

С удовольствием помог. Не стесняйтесь отмечать его как принятый ответ, чтобы завершить типичный рабочий процесс переполнения стека. ;-) – Fishizzle

+0

Выполнено. Еще раз спасибо. – jebjeb

Смежные вопросы