再聊负载均衡SLB的主备可用区和高可用部署最佳实践

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: 1.概述 阿里云负载均衡SLB的主备可用区提供了多个层级的高可用,可阅读《负载均衡SLB高可用的四个层次》。很多用户常常在下单选购时,对可用区的选择感到困惑。到底如何选择SLB的主备可用区,如何搭配不同可用区的ECS,来构建高可靠应用系统呢?针对这个问题我们来仔细的聊一聊。

1.概述

阿里云负载均衡SLB的主备可用区提供了多个层级的高可用,可阅读《负载均衡SLB高可用的四个层次》。但很多用户常常在下单选购时,对可用区的选择感到困惑。到底如何选择SLB的主备可用区,如何搭配不同可用区的ECS,来构建高可靠应用系统呢?客官请听下文分解。

首先,我们要搞清楚一个事实,负载均衡SLB的可用区设计的初衷,是用来抵御可用区(机房)级别的重大灾情的,比如机房整体掉电,机房出口光缆中断等,即当某个可用区整体不可用时,备可用区才派上用场,也就是说只在上述情况下,SLB的主备可用区才会发生倒换。而并非用户的某个实例出现故障,就会自动发生主备倒换的,这是一个很典型的误区。

image
图注:当可用区A整体不可用时,SLB才会发生主备倒换

那么主备可用区应该如何选择比较合适呢?对于SLB的主可用而言,主要看用户的ECS主要分布在那个可用区,SLB的主可用区和ECS的主可用区保持一致,将获得最小的访问延迟,但是我们并不推荐用户将所有后端ECS都放置与同一可用区中,这是因为一旦可用区出现灾情,用户所有的后端服务器全部都无法提供正常服务,应用系统就彻底瘫痪了。

下文我们分别针对单SLB实例和多SLB实例场景,介绍高可用部署的最佳实践。

2.单SLB实例场景下的高可用部署建议

SLB实例主可用区选择可用区A,备可用区选择可用区B,大部分ECS部署在可用区A,另外一少部分ECS部署在可用区B。这里为之所以将大部分ECS放置与可用区A,而少部分ECS放置于可用区B,是因为SLB绝大部分时间都是主可用区实例在工作(毕竟可用区级别的灾情是非常罕见的),而SLB和ECS处于同一可用区时,拥有最小的访问延迟;同时部署一小部分ECS与可用区B是为了万一出现了可用区A整体不可访问的情况时,可用区B还有ECS可以维持系统的正常工作。而如果所有的ECS都部署在可用区A,那么一旦出现可用区灾情时,整体服务就不可用了。

image

以上介绍的是单SLB实例的高可靠部署方案,虽然用户只购买了一个SLB实例,但是由于SLB本身提供了主备可用区的冗余,因此基本上消除了系统中的单点故障,对于一般的系统应用而言,这样的部署方案已经可以基本满足高可用需求。

但是对于特别重要的业务,对可用性要求极高的业务,单SLB实例的部署方案显得不足了,原因就是上面提到的,只有可用区整体不可用时,才会发生SLB主备切换,因为配置不正确、网络攻击或其他异常因素导致的用户实例不可用,这是由于不满足可用区整体不可用的条件,因此并不会触发主备切换动作,此时用户的业务就有可能受损了,对于这类用户而言,我们建议使用不同可用区多SLB实例的部署方案,详见下文。

3.多SLB实例场景下的高可用部署建议

对系统可用性要求特别高的用户,建议用户在可用区A和可用区B分别购买SLB实例,同样ECS也分别在可用区A和可用区B购买,将可用区A和可用区B的ECS分都挂载于不同可用区的SLB实例后端,前端再使用全球负载均衡(云解析DNS)进行调度,用户通过域名来访问服务。这样部署的好处如下,不论是可用区级别的故障,还是用户SLB实例级别的故障,或者是后端ECS的故障,系统都具备容灾能力,另外由于前端使用了云解析DNS,在遇到访问量突增时,还可以通过横向扩展SLB实例来提升系统的整体处理能力,另外随着企业的逐步发展,还可以通过在异地部署SLB和ECS来实现多地多活的云上业务架构,因此该方案是对系统高可用要求非常高的用户首选部署方案。

image

参考阅读:
《负载均衡SLB高可用的四个层次》
《结合云解析实现跨地域负载均衡》

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
6月前
|
弹性计算 负载均衡 NoSQL
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)(四)
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)
|
6月前
|
弹性计算 负载均衡 NoSQL
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)(二)
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)
|
6月前
|
弹性计算 负载均衡 NoSQL
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)(一)
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)
|
6月前
|
存储 负载均衡 调度
Docker 多主机部署:构建容器集群的最佳实践,助力高可用性与负载均衡
Docker 多主机部署:构建容器集群的最佳实践,助力高可用性与负载均衡
263 0
|
8月前
|
运维 负载均衡
【运维知识进阶篇】用阿里云部署kod可道云网盘项目(HTTPS证书+负载均衡+两台web)(三)
【运维知识进阶篇】用阿里云部署kod可道云网盘项目(HTTPS证书+负载均衡+两台web)(三)
219 0
|
6月前
|
弹性计算 负载均衡 NoSQL
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)(三)
【红包雨功能的】环境部署(弹性伸缩、负载均衡、Redis读写分离、云服务器部署)
|
3月前
|
Kubernetes 负载均衡 监控
Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
|
4月前
|
缓存 负载均衡 算法
【Nginx】静态资源部署、反向代理、负载均衡
【Nginx】静态资源部署、反向代理、负载均衡
73 0
|
4月前
|
缓存 负载均衡 应用服务中间件
Linux-----nginx的简介,nginx搭载负载均衡以及nginx部署前后端分离项目
Linux-----nginx的简介,nginx搭载负载均衡以及nginx部署前后端分离项目
209 2
|
7月前
|
存储 弹性计算 负载均衡
使用SLB+2ECS+NAS,部署电商web网站的高可用架构
如您需要开发电商网站并且对外提供服务,当您的业务上升时,您需要为应用考虑高吞吐,高并发,高可用等能力,来应对用户的并发访问,保证应用稳定。本场景主要介绍如何使用SLB,ECS和NAS搭建高可用电商网站,助您业务上升。
421 0

相关产品

  • 负载均衡