嗨,我正在运行一个大型 ec2 ubuntu 实例,该实例配置为自动扩展。每当大型实例上的负载增加时,它都会启动一个新实例。但启动的新实例不会有更新的代码。我的代码库在 github 中。如何配置新启动的实例以从 github 提取代码并保持自身更新。
请注意
答案1
Ubuntu 的 EC2 镜像支持cloud-init
,它就是为这类事情而设计的。它允许您运行脚本、安装包、配置系统等,并且受到 AWS 的良好支持。
答案2
如果您想在启动 Linux 实例后执行某些命令,您可以将所需的命令添加到/etc/rc.local
。此脚本在启动过程结束时执行。因此,每次启动新实例时,您都可以自动从 github 提取代码。
答案3
这确实是可能的。您可能想看看以下帖子,它提供了有关该主题的一些非常有用的信息:
http://lists.opscode.com/sympa/arc/chef/2011-07/msg00110.html
答案4
我会做类似这样的 crontab
@reboot git pull
每次实例启动时它都会执行“git pull”。