小编Jon*_*n E的帖子

Haproxy Load Balancer,EC2,编写我自己的可用性脚本

我一直在寻找心跳等高可用性解决方案,并在haproxy负载均衡器出现故障时保持故障转移.我意识到虽然我们希望高可用性,但是在这个时间点并不是真正要求在任何时候运行2个负载均衡器实例的支出程度,以便我们获得即时故障转移(特别是一磅)在我们的设置中将是多余的).

我的替代解决方案是,如果当前负载均衡器已停止工作,则从AMI启动新的负载均衡器EC2实例,并将其与我们的域名指向的弹性IP相关联.这应该确保停机时间仅限于启动新实例和关联弹性IP所需的时间,这是因为我们目前的情况似乎是高可用性的合理成本效益解决方案,特别是因为我们可以轻松地实现多个av区.我希望使用以下步骤执行此操作:

  1. 准备负载平衡器的AMI
  2. 启动作为负载均衡器的单个ec2实例,并为其分配弹性IP
  3. 让微服务器定期ping当前的负载均衡器(我们总是运行一个额外的微服务器)
  4. 如果ping超时,则使用负载均衡器AMI启动新的EC2实例
  5. 将弹性IP与新实例关联
  6. 关闭旧的负载均衡器实例
  7. 使用新实例重复步骤3

我知道如何在我的脚本中运行命令来启动和关闭EC2实例,将弹性IP地址与实例关联,并ping服务器.

我的问题是这里有什么合适的ping?标准ping是否足够定期,什么是良好的间隔?或者这是一种相当简单的方法,我应该做一个更聪明的健康检查?

如果有人预见到这种方法有任何问题,请随时发表评论

ping amazon-ec2 haproxy

4
推荐指数
1
解决办法
4908
查看次数

标签 统计

amazon-ec2 ×1

haproxy ×1

ping ×1