如何更新 EBS AMI 的快照?

如何更新 EBS AMI 的快照?

我有一个用于 Rails Web 服务器的 AMI。此 AMI 使用 EBS Snapshot 启动,所有基本功能都已准备好投入生产。

我现在需要更新 Web 服务器 (nginx.conf) 上的某些配置设置。我可以轻松地通过 ssh 进入一个框并更新设置,但之后启动的实例将没有这些设置,因为它们使用的是较旧的快照。

我该如何让新的 ec2 实例使用新设置启动?我猜我需要更新快照?我该如何更新所有 Web 服务器 ec2 实例使用的快照?

谢谢

答案1

一个选项是创建新的 AMI。现在这很容易,因为有许多可用的工具,例如这个 ruby​​ gem”构建-ubuntu-ami“。当构建新的 ami 时,您可以包含新的设置。

另一个选择是,您可以使用 chef/puppet/salt/ansible 等来使用当前 ami 更新所有实例。

更新:在所有云平台上创建图像的更好选择是打包机

答案2

您无法更新快照。您必须更新现有 AMI,然后拍摄新快照,然后注册它,这将为您提供新的 AMI ID。

我假设您的实例位于 AutoScaler 后面?如果是这样,那么您必须使用新的 AMI ID 更新启动配置。我发现管理此问题最简单的方法是使用Netflix 的《阿斯加德》

如果您正在使用 CloudFormation,那么您只需更新您的模板,CloudFormation 将为您创建新的启动配置并更新自动缩放器。

如果您只是手动启动实例,则请在执行此操作时使用新的 AMI ID。

相关内容