负载均衡SLB高可用的四个层次
首先,用户一定要开启并正确配置健康检查。SLB支持TCP/UDP/HTTP/HTTPS 四种协议,其中对TCP协议提供了TCP和HTTP两种健康检查方式,用户可以根据需要选择。对UDP协议,用户可以定义UDP健康检查端口,还可以根据自己定义健康检查请求和返回值来判断健康检查结果。对于HTTP和HTTPS协议,默认使用HTTP健康检查,用户可以定义一个健康检查URL,负载均衡的健康检查模块会通过HTTP HEAD来探测获取状态。关于健康检查详细信息可以参考健康检查原理说明
到负载均衡SLB的实例中。用户可能有疑问,如果一个可用区的ECS不可用了,那这个可用区的负载均衡是不是也会不可用?这个问题在稍后的第三层来说明。

从用户使用角度看,一定要在代码中加上相应的重试机制! 这样在上述情况出现时,会进一步降低对用户访问影响。
上面说的是在一个可用区内负载均衡转发集群的高可用,跨可用容灾层则要解决的是当一个可用区都不可用时,还能继续使用另外一个可用区的负载均衡继续提供服务。
从产品设计角度看:
从用户使用角度看:
首先,跨可用区容灾需要保证一个SLB实例的后端服务器ECS分布在多个可用区,即避免一个可用区不可用时,SLB后端的ECS都无法使用从而影响用户访问,这点在第一层 应用处理层中已经说明了。当然,如果还使用DB等产品,还需要考虑DB的跨可用区容灾问题,用户可以参考DB相关产品的说明。这里主要谈负载均衡本身以及和负载均衡紧密相关的后端服务器ECS的高可用问题。

传统的如F5的全局负载均衡(以前叫GTM,现在叫BIG-IP DNS)就有比较完善的解决方案,或者一些提供DNS服务的系统也有类似的功能。负载均衡SLB产品本身没有提供这样的能力,跨地域容灾的能力是通过云解析DNS产品来实现的,云解析DNS产品提供了全局负载均衡的能力,还有如健康检查,路由调度优化等功能,可以参考 全球负载均衡跨地域容灾解决方案
另外,对于跨可用区容灾可能需要使用在不同地域间同步数据或者跨地域私网调用,可以使用高速通道产品构建不同地域的通信链路
最后更新:2017-09-02 19:02:25