本着冗余和故障转移的精神,我想了解一些为 DR 设置 AWS Elastic Load Balancer 的策略,也就是说,这是否真的是一个问题?(单个 ELB 会将 LB 流量传输到 1..* 区域。)
我之所以问这个问题,是因为在提议的云架构中,单点故障可能只有一个 ELB。
谢谢。
答案1
ELB 被设计为不存在单点故障 —— “单个” ELB 具有多个 IP 地址,这些 IP 地址对应后台的多个 ELB 实例(它们所运行的技术不是公开信息,但是由于 EBS 问题,偶尔会出现 ELB 中断,这可能表明它们在后台是 EC2 实例,可能运行着类似 haproxy 的东西)。
只要您在 ELB 后面的多个 AWS 可用区中拥有实例(编辑:并且正如@MikeScott在评论中提醒我的那样,为该ELB启用了跨区域平衡),它应该一般来说与您自己构建的多数据中心解决方案一样具有容错能力 - AZ 大致对应于一个数据中心。
如果你真的想跨区域平衡,你需要在每个区域都使用一个 ELB,你可以使用Route53 的 DNS 故障转移也地理路由来在它们之间分配负载。但是,如果您的应用需要跨多个区域的数据库,这会增加一些相当明显的复杂性。