是否有用于创建基于 'instance-store' 的 AMI 的 Ansible 模块?

Is there an Ansible module for creating 'instance-store' based AMI's?

从 EBS 支持的实例创建 AMI 非常容易,但是从基于 instance-store 的实例创建 AMI 似乎只能使用 CLI 手动完成。

到目前为止,我已经能够 bootstrap 使用 Ansible 从 HVM Amazon Linux AMI 创建一个基于 'instance-store' 的服务器,但我迷路了接下来的步骤......我正在尝试遵循这个:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-instance-store-ami.html#amazon_linux_instructions

显然我需要在实例上存储我的 x.509 证书和密钥,但那是哪个密钥?那是...

在那之后,我在 Ansible 中找不到任何对 ec2-bundle-vol 的引用。所以我想知道是否唯一的方法是使用 Ansible 的 command 模块。

基本上我希望找到的是:有没有一种方法可以使用 Ansible 轻松创建基于 instance-store 的 AMI,如果没有,是否有人可以参考必要的步骤自动化这个?谢谢!

一般来说,Ansible AWS 模块旨在通过与 AWS HTTP API 交互来管理 AWS 资源(即您可以在 AWS 管理控制台中执行的其他操作)。

它们不打算 运行 EC2 实例上的 AWS 特定系统工具。

ec2-bundle-volec2-upload-bundle 在 EC2 实例本身上必须是 运行。它不能通过 HTTP API.

调用

恐怕您需要编写自定义剧本/角色来自动化该过程。

另一方面,aws ec2 register-image 是 AWS API 调用并对应于 ec2_ami Ansible 模块。 不幸的是,此模块似乎不支持从 S3 存储桶注册图像。