【问题标题】:Automatic snapshot and create an AMI automatically自动快照并自动创建 AMI
【发布时间】:2013-03-12 03:14:09
【问题描述】:

我有几个在生产模式下运行的基于 ubuntu 的 ec2 实例。我的问题是,当流量增加时,我会手动启动实例,从 github 更新代码。

现在我必须配置自动缩放,以便每当 API 启动新实例时,它都会启动最新的 AMI 并附加到负载均衡器,否则我必须手动拉取代码。

在这里更清楚地说是我打算做的事情。

  1. 定期对实例进行快照,例如每天。
  2. 从快照中创建一个 AMI 并保留它。
  3. 创建快照时不应有任何停机时间。
  4. 在 Auto Scaling 配置中,它应该启动最新的 AMI 并将其附加到负载均衡器

请帮帮我

【问题讨论】:

    标签: linux ubuntu amazon-web-services amazon-ec2


    【解决方案1】:

    与其重新构建 AMI 并定期更改它,不如构建一个 AMI,它会在启动时自动从您的代码存储库中提取,之后可能会定期提取。这假设您的 AMI 的唯一区别是代码。

    例如,如果您使用 SVN,您可以使用 tag/latest 标记您最新的生产版本,并始终从该路径中提取。现在您有一个 AMI,它在启动时始终具有最新代码。您甚至可以每 5 分钟运行一次 cron 作业,以查看签出的标签和修订与您的 SVN 服务器报告的最新内容。如果这种情况发生变化,它会自行终止,自动缩放会启动替换;或者它只是进行 svn 更新并获取最新的更改并不断更新。

    有人担心构建会导致您的实例无法正常运行,但您应该能够在单元和集成测试中发现这一点。

    如何做到这一点?许多选项,但最好使用您的操作系统启动脚本。有很多方法可以自动访问您的代码存储库。我敢肯定还有其他关于 StackOverflow 的问题。

    【讨论】:

    • 如果网络服务器自动启动,您的 ELB 节点健康检查可能包括检查以确保代码已更新。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-13
    • 1970-01-01
    • 1970-01-01
    • 2018-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多