2014-09-12 74 views
0

我们希望通过提供一个“黄金映像”(一个加入域名,拥有我们的安全软件,infra软件等)来限制用户可以访问的AMI。因此,我们通过采用AWS中的现有AMI来实现这一点,并按照我们通常的做法进行构建。动态构建AWS图像?

问题是来自AWS的基本AMI变化很频繁(即,微软补丁,类似的事情),这意味着我们的黄金形象已经过时。

有没有一种方法可以让用户只能访问拥有我们所有软件(即“金色图像”)的图像,而是动态构建它的图像,将我们的安全/基础软件添加到基础图像,并只允许用户访问该环境的最终用户?

回答

0

我的建议自动化也就是说,当你想“刷新”的形象:

  1. 创建最新的基本Windows映像的新EC2实例 http://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html

  2. 安装你的东西: 这里最好有puppet/chef/ansible /.../ powershell自动执行(如果可能的话从用户数据)。

  3. 从现有实例创建自定义AMI: http://docs.aws.amazon.com/cli/latest/reference/ec2/create-image.html

  4. 更新IAM策略来限制实例创建新AMI的快照: json { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1410544721000", "Effect": "Allow", "Action": [ "ec2:RunInstances" ], "Condition": { "ArnEquals": { "ec2:ParentSnapshot": "arn:aws:ec2:region::snapshot/snapshot-id" } }, "Resource": [ "*" ] } ] } 您可以在策略设置为使用CLI一组: http://docs.aws.amazon.com/cli/latest/reference/iam/put-group-policy.html

和所有的可以使用CloudFormation实现自动化......我建议你用手工做至少一次,并自动一步步。