为了向广大SLB用户提供更加稳定可靠的负载均衡服务,近期阿里云对其SLB系统进行了升级,优先在杭州和青岛地域部署了同城容灾的本地高可用解决方案,下面就让我们一起来了解一下SLB同城容灾方案。
什么是同城容灾?
SLB集群本身,已经实现了各种冗余,包括电力、网络、服务器等。我们单集群可以防止“单路电力故障”、“单边网络故障”、“服务硬件故障”、“系统意外宕机”甚至“整(一)个机柜突然掉电、突然断网、突然宕机”等故障对用户对外服务造成的影响。
但是更大范围的故障,比如整个数据中心不可用,已经不能从SLB内部冗余来解决。
同城容灾方案,正是在这种需求之下制定的解决方案:即当整个数据中心故障、不可用时,要求SLB仍然有能力在较短的时间内恢复服务能力。
同城容灾的技术实现浅析
同城容灾的技术核心是依靠“BGP”,跟据BGP的“路由择径”的优先级特点,将SLB的VIP以不同的“优先级”同时在两个机房宣告(BGP路由发布);这样,平时“优先级高”的数据中心为客户提供服务,一旦该数据中心不可用,BGP会很快(最差的情况180秒内,正常情况下30秒内)收敛,此时,“低优先级”的数据中心就会代替故障的(高优先级)数据中心,继续为用户服务。
在SLB的应用场景下,同一地域(Region)下的两个数据中心(IDC机房)实现了互备的关系,正常情况下1/2的VIP高优先级的运行在不同的两个IDC下,当单个数据中心发生不可用时,会触发上述的故障迁移从而保证用户的服务可用性。
同城容灾的优势
- 与原有的单数据中心运行方式相比具有更高的本地可用性;
- 与直接暴露多数据中心让用户自行配置SLB并在其上部署智能DNS解决方案相比,易用性更高,整个灾备方案都由SLB系统为用户自行完成。
除了当前已经具备的同城容灾的高可用方案外,我们也建议用户可以结合自身的应用需要,利用阿里云的产品和服务搭建和部署更多高可用的方案,比如:
1.在SLB实例下绑定不同可用区的ECS,从而避免因为单个可用区的故障而导致对外服务的不可用;
注:随着阿里云数据中心的建设和规模不断扩大,在不久的将来ECS将使不同的地域均具备可供用户选择的多个可用区来部署自己的应用,我们也建议用户在针对已经支持了多可用区选择的地域中采取上述方案来提高应用的高可用。
2. 在不同的地域购买SLB和ECS实例并搭建相同的应用服务,在此之上通过阿里云解析来配置智能DNS,从而满足就近访问和跨地域灾备的需要。
未来,随着阿里云数据中心的不断建设和发展,我们也会在除了杭州和青岛之外的地域应用同城容灾方案,从而使用户基于阿里云SLB搭建的应用服务更稳定、更可靠!