使用自定义 AMI 部署 EC2 队列

Deploying EC2 Fleet with Custom AMI

我正在尝试针对我创建的自定义 AMI 部署 EC2 Fleet。我得到以下信息:

Repeated errors have occurred processing the launch specification "c5.large, ami-xxxxxxxx, Linux/UNIX, us-east-1b while launching spot instance". It will not be retried for at least 13 minutes. Error message: com.amazonaws.services.ec2.model.AmazonEC2Exception: Spot instance requests are not supported for this AMI. (Service: AmazonEC2; Status Code: 400; Error Code: UnsupportedOperation)

基本 AMI 部署得很好,但我从该基本 AMI 派生的自定义 AMI 却没有。为简洁起见,我们可以假设我的自定义 AMI 和基础 AMI 之间的唯一区别是少数 RPM 包和一些在 /root 中创建的文件,并且 AMI 是从源 EC2 实例创建的。

Amazon 的文档列出了以下 EC2 Fleet Limitations

The following limitations apply to EC2 Fleet:

  • EC2 Fleet is available only through the API or AWS CLI.
  • You need to create a separate EC2 Fleet for each region.

但是我似乎无法找到有关支持哪些 AMI 的任何信息。

EC2 队列是否支持自定义 AMI?如果有,有什么限制?

可以使用自定义 AMI 部署 EC2 队列。

目前部署 EC2 FleetsEC2 Spot Fleets 的唯一方法是通过aws ec2 create-fleet awscli 命令。

EC2 队列仍然是一个新构造,还不是一个功能齐全的服务。

我的问题原来是我试图使用 cloudformation 模板来部署 EC2::SpotFleet,而不是 EC2 队列。

对于哪些 AMI 可以部署为现货实例与按需实例相比,有更多限制。