如何在 Amazon EC2 实例上保留已安装的软件和配置?

如何在 Amazon EC2 实例上保留已安装的软件和配置?

我已经启动并运行了基础 Debian AMI,现在我需要知道维护它的最佳方法。我已经运行了更新(aptitude 更新/升级)并安装/配置了我的软件(Apache、Ruby 等),但如果我重新启动实例或启动一个新实例,我将不得不重新做所有这些工作。

重启后如何保留这些类型的东西?每次调整系统的某个小部分时,您是否都会构建一个新的 AMI?或者是否有某种方法可以在启动时为其提供一个脚本,以“实时”配置它?我知道我可以使用 Reductive Labs Puppet 风格的设置,但这对我目前的需求来说有点太多了(1-2 台服务器)。有什么最佳实践吗?

更新:我找到了关于使用用户数据的一些信息在实例启动时运行脚本。

答案1

使用弹性块存储直到一个月前,还只能使用 EBS 作为持久存储,您仍然必须从 AMI 启动 - 但现在可以直接从EBS启动

答案2

我使用两者的组合:用户数据脚本和 EBS。首先,我使用基本软件创建一个映像,然后使用自动运行脚本,服务器下载其配置,安装所需的软件并启动适当的服务。如果服务器管理数据,则自动运行脚本会从安装了 EBS 卷的服务器复制(通过 rsync 或 nfs)所有数据。

相关内容