1

这些是我在 AWS 文档中找到的步骤: 您可以使用 AWS 管理控制台或命令行创建 AMI。

下图总结了从正在运行的 EC2 实例创建由 Amazon EBS 支持的 AMI 的过程。从现有的 AMI 开始,启动一个实例,对其进行自定义,从中创建一个新的 AMI,最后启动一个新 AMI 的实例。

这些可以自动化吗?我不确定目前使用哪种服务,或者是否可能。任何想法表示赞赏

4

2 回答 2

4

有很多方法可以构建 AMI。AMI 是通过创建现有实例的映像来构建的。

此实例可以手动配置,也可以使用配置工具(例如AnsibleChefPuppet)进行配置。

通过使用这些工具,您可以自动构建服务器,以始终遵循一套可重现的指令。称为预烘焙/黄金 AMI 的工作流程涉及在新服务器上运行这些配置工具,然后从该服务器创建映像。然后将推出替换其他服务器。

亚马逊有一篇关于Golden AMI Pipeline的博客文章,有助于解释如何实现自动化。

AWS 最近还推出了一个名为EC2 Image Builder的工具,它允许完全自动化以及在创建 AMI 后对其进行验证。

于 2020-07-20T14:46:17.373 回答
1

我认为您可以在现有工具中尝试的最佳工具是packer。Packer 开箱即用,支持为Amazon EC2、CloudStack、DigitalOcean、Docker、Google Compute Engine、Microsoft Azure、QEMU、VirtualBox、VMware 等构建镜像。

现代、自动化

HashiCorp Packer 自动创建任何类型的机器映像。它通过鼓励您使用自动化脚本在 Packer 制作的映像中安装和配置软件来拥抱现代配置管理。Packer 将机器图像带入现代时代,释放未开发的潜力并开启新的机遇

这是包含完整生命周期的仓库

此 Packer AMI Builder 从最新的 Amazon Linux AMI 中创建一个新的 AMI,并且还提供了一个利用 AWS CodePipeline 来编排整个过程的 cloudformation 模板。 打包机

在此处输入图像描述

一切你需要的

git add .
git commit -m "SHIP THIS AMI"
git push origin master

ami-builder-packer

此 Packer AMI Builder 从最新的 Amazon Linux AMI 中创建一个新的 AMI,并且还提供了一个利用 AWS CodePipeline 来编排整个过程的 cloudformation 模板。

Packer 还提供跨云服务提供商 AMI builder AWS、Azure 和谷歌云等。

于 2020-07-20T16:03:03.740 回答