【发布时间】:2016-06-19 10:39:19
【问题描述】:
我正在使用 Amazon javascript/nodejs sdk。我可以使用以下代码成功启动现有实例,但弹性 IP 地址不会分配给实例,除非我重新运行代码。根据错误,这是因为实例尚未处于“已启动”状态,因此无法为其分配弹性 IP。
有没有办法在启动时为实例分配弹性 IP?
var ec2 = new AWS.EC2({region: 'us-east-1'});
ec2.startInstances({InstanceIds : ['i-xxxxxxxx'] },function (err, data) {
var params = {
InstanceId: 'i-xxxxxxxx',
PublicIp: '41.222.111.222'
};
ec2.associateAddress(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
return cb(null, data);
});
});
我能想到的唯一其他选择是在启动后等待几分钟,然后测试实例是否会接受弹性 IP。如果可能的话,我想避免这种情况。
感谢您的帮助!
【问题讨论】:
标签: javascript node.js amazon-web-services amazon-ec2