是否有一个Ansible模块用于创建基于AMI的“实例存储”?

时间:2017-02-22 14:50:14

标签: amazon-s3 amazon-ec2 ansible ami

从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证书和密钥,但是那个键是什么?那是......

  • 我必须使用openssl在
  • 实例上生成一个
  • 我从AWS生成/转换的那个,
  • 我用Putty生成的,或
  • 我的AWS账户中已存在的一个?

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

基本上我希望找到的是:有没有办法使用Ansible轻松创建基于instance-store的AMI,如果没有,是否有人可以参考自动化所需的步骤? / strong>谢谢!

1 个答案:

答案 0 :(得分:2)

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

它们无意在EC2实例上运行AWS特定的系统工具。

必须在EC2实例本身上运行

ec2-bundle-volec2-upload-bundle。它不能通过HTTP API调用。

我担心你需要编写一个自定义的剧本/角色来自动化这个过程。

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