EC2竞价型实例:如何启动任务,如何阻止它们?

时间:2014-09-09 23:34:30

标签: amazon-web-services amazon-ec2

我有一个很长的批处理工作,我想在AWS EC2竞价型实例上运行,以节省资金。但是,我无法找到两个看似关键问题的答案:

  1. 创建新实例时,我需要将代码上传到其中,配置它并运行代码。如何自动创建并且不受欢迎的竞价型实例?

  2. 当一个实例停止时,我会更喜欢具有某种类型的通知,以便可以保存状态。 (这并不重要,因为如果突然终止批处理作业将正常运行 - 但最好是干净关闭。)

  3. 部署专案实例的标准方法是什么?有没有办法进行手动设置,将其转​​换为现场实例,然后让它休眠直到现货价格可用?

2 个答案:

答案 0 :(得分:6)

对于#1,如果您创建了一个AMI(亚马逊机器图像),您可以将预先安装的所有内容预先安装在休眠'您可以用作您开始的专色图像基础的图像:

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-getting-started.html

对于#2,当点实例使用SNS终止时,您会收到通知:

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-autoscaling-notifications.html http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASGettingNotifications.html

顺便说一句:您可以通知实例已终止,但只有 后才会终止。您无法通知实例即将关闭并正常保存状态 - 您需要设计解决方案,以便在意外关闭时正常运行。

  

无论您的出价有多高,您的竞价总会存在风险   实例将被中断。我们强烈建议不要出价   高于按需价格或使用Spot不适用于应用程序   容忍中断。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-protect-interruptions.html

答案 1 :(得分:1)

  1. 您可以使用用户数据设置从特定存储库下载脚本,并在第一次启动时运行它。

  2. 作为E.J.布伦南说:你可以使用SNS