我在AWS中创建了两个实例(一个是Live,另一个是Backup)。我的网站托管在Live实例上。我已经在默认设置上配置了Route 53、Health checks和Hosted zones。同时也添加了两个实例到负载均衡,两个实例的状态都是InService。
对于直播实例,公网IP和弹性IP相同。备份实例公网IP不同于直播,弹性IP为空。
我想要实现的是,当我的Live实例“状态检查”或“健康检查”失败时,备份实例应该被激活。
目前,当我手动停止Live实例进行测试时,备份实例应该会被激活。但它不是。如果我遗漏了任何步骤,请告诉我。
发布于 2015-09-02 23:19:49
您需要实现一个ELB可以调用的healthcheck REST API。您的备份实例可能会返回非200 HTTP状态。一旦它被激活,它就会开始返回HTTP 200。这将告诉ELB仅将呼叫路由到主节点。
同时,您的Route53应该指向ELB,而不是直接指向实例。
但是,通常情况下,您希望同时保持主实例和备份实例处于热状态,以获得最佳性能和故障转移。如果您不依赖于您的实例处于特定的状态,那么您可以充分利用AWS的优势--在本例中是主实例与备份实例。我会设计一个策略来保持这两个实例的使用。
https://stackoverflow.com/questions/32356333
复制相似问题