Bootstrap脚本与自定义AMI的对比使得EC2易于重建

时间:2019-10-19 09:57:30

标签: amazon-web-services amazon-ec2 ec2-ami

我有一个支持EBS的EC2 Web服务器。我试图达到可以自动启动相同服务器(在软件和配置方面相同)的地步。

据我了解,有两种方法可以实现这一目标:

  1. 安装所有必需的软件,进行配置更改,然后从EBS卷创建自定义AMI。使用此AMI启动任何将来的实例。
  2. 使用原始的AMI并使用Bootstrap脚本安装所有必需的软件并进行必要的配置更改。

对我来说,创建自定义AMI而不需要编写脚本似乎一开始就容易得多。但是我知道对服务器的任何修改都将意味着创建一个新的AMI。我还可以看到引导脚本如何更加透明,并允许人们轻松检查将要安装/配置的内容。

我想知道是否有人可以指出这两种方法之间的优势/劣势。有没有一种被认为是最佳做法?

1 个答案:

答案 0 :(得分:2)

如果您创建自定义AMI:

  • 设置新服务器会更快。
  • 维护环境的统一很容易。
  • 如果进行任何修改,将很难更新AMI。

如果您使用引导脚本:

  • 进行任何更改都会更容易进行修改。
  • 很难维护环境的统一性(例如,可能面临版本控制问题)。
  • 配置新服务器的速度缓慢。

顺便说一句,如何将AMI用于不太可能发生变化的事情,然后使用引导脚本,例如用户数据来执行随时间变化的事情。