从EBS支持的实例创建AMI非常容易,但是从基于实例存储的实例做同样的事情似乎只能通过CLI手动完成。
到目前为止,我已经能够使用Ansible从HVM Amazon Linux AMI创建基于“实例存储”的服务器,但是我对以下步骤感到迷茫......我是试着遵循这个: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,如果没有,是否有人可以参考自动化所需的步骤? / strong>谢谢!
答案 0 :(得分:2)
一般而言,Ansible AWS模块旨在通过与AWS HTTP API交互来管理AWS资源(即您可以在AWS管理控制台中执行的操作)。
它们无意在EC2实例上运行AWS特定的系统工具。
必须在EC2实例本身上运行 ec2-bundle-vol
和ec2-upload-bundle
。它不能通过HTTP API调用。
我担心你需要编写一个自定义的剧本/角色来自动化这个过程。
另一方面,aws ec2 register-image
是AWS API调用,对应于ec2_ami
Ansible模块。
不幸的是,这个模块似乎不支持从S3存储桶中注册图像。