在管理自己的集群(即不使用/不支付Amazon Autoscale,Rightscale,Scalr等的费用)的人们中,您如何在EC2上管理实例并处理(例如)故障转移?我想知道大多数人是否最终会像EC2 API一样最终编写自己的脚本脚本。
当然,这就是我们的方法:启动我们自己的基于Python Boto的监视/重新启动守护程序,该守护程序在异地运行,侦听实例中的UDP保持活动。发生故障时,我们将对卷进行快照,注册映像,启动新实例,删除旧卷等等。
每隔一段时间,当我入侵我们的脚本时,我认为必须已经有一些开源工具可以处理这些问题,并且没有(例如)Scalr的限制,但是我总是从Google回来空手。(诸如Scalr之类的东西在受支持的软件集/版本/配置中非常有限,并且具有操纵这些设置的专门且IMO繁琐的方式。)
另外,Linux-HA / Pacemaker生态系统(Heartbeat,ldirectord等)听起来似乎并不适合EC2。(但是后来我发现了这一点 -尽管我不确定这是否是高质量的解决方案)。