集群部署,SLB让业务更高效、稳定

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 随着DT数据时代的到来,用户访问急剧增加,如何保障业务系统的稳定性、连续性是很多企业的重点考虑。阿里云推出负载均衡服务,能够通过简单的配置,即可实现集群部署,提供企业系统对外服务能力。

1. 企业背景

在“互联网+”时代,创新层出不穷,许多企业伴随着业务的良好运营,数据量和访问量都出现快速增长。然而,在传统的信息化建设中,业务系统通常采用单机部署的模式,往往不能跟上业务的发展,系统会出现各种故障,如下:

  • 服务能力滞后:客户端请求急剧增加,服务端配置较低,导致应用加载缓慢,严重影响系统的对外服务能力;
  • 系统稳定性差:用户访问量较大,服务配置升级、扩容较难,容易出现服务端负载过大,导致业务系统出现宕机,影响对外服务的连续性。

    image

其实,业务系统的高性能、连续性和高可用一直都是企业的生命线,我们很难想象系统由于访问过高导致突然宕机会出现什么后果,如游戏、支付等。因此,对于高并发、大流量的访问,我们需要实时做好充分的应对方案。

2.阿里云集群解决方案

2.1 负载均衡简介

生活中,假如我们的手机使用的是联通号码,如果出现通讯相关的疑问,如查询话费余额、安装宽带,我们就会呼叫10010,接着会收到后台一位客服工作人员的对应服务,如果此时有人也呼叫10010,则联通同样会有对应的客服提供服务。其外,如果是浙江号码,对应的是浙江区域的客服,如果是辽宁号码,对应的则是辽宁区域的客服,换而言之,我们呼叫的是10010,而10010则可以通过设定的规则和策略将用户转发给后台不同的客服来提供服务,而不仅仅是一个人提供服务,从而提高对用户服务的满意。

image

与拨打10010类似,企业在信息化建设中也需要考虑如何保障系统运行的高效性、稳定性和可靠性。在传统中,企业往往采用单台服务器部署应用,一旦访问过多,单台服务器负载过高,则会导致服务器宕机,系统出现瘫痪。于是,我们开始考虑能否用多台服务器对外提供服务,这样就可以提高服务端的服务能力。但是,出现一个问题:用户访问只需要一个流量入口,如果后端有多台服务器,那么,如何将流量分发至后端多台服务器呢?
迎合市场需求,负载均衡应运而生,作为客户端和服务端的中间层,它作为用户的所有访问请求入口,然后基于设定的转发规则和转发策略,将访问流量分发至后端服务器进行计算和分析,最后将结果返回至客户。如此以来,负载均衡不仅可以解决服务器单节点宕机导致服务不可用的问题,而且可以将多台服务器并行工作,从而提供对外的服务能力,应对高并发、大流量的请求访问。

image

或许,有些人不是很理解,为什么选择多台服务器对外提供服务,而不是选择升级单台服务器的配置。其实,这是“1+1>2”的过程。如下图所示,2台2core 4G的服务器和单台4core 8G的服务器在性能上几乎没有差别,然而,如果4core 8G的服务器出现故障,业务系统是否正常对外提供服务?如果由于业务激增,访问量急剧增加,那么4core 8G的服务器是否可以快速升级而不影响业务系统的正常对外提供服务?答案是,显然不能。基于负载均衡的业务集群化部署,一方面可以通过多台服务器提供服务,消除单点故障,另外一方面可以通过快速扩容后台服务器个数,提高对外的访问服务能力。

image

在传统的解决方案中,负载均衡的功能可以由硬件设备实现,如F5,但是价格昂贵,可能一台就几十万,同时F5也有自己的性能瓶颈,一旦达到性能上限后,需要购买更多的设备,且硬件扩展性受到了限制。

image

2.2 阿里云负载均衡服务

为了解决企业对负载均衡高性能、低成本的需求,阿里云推出负载均衡服务(Server Load Balancer,简称SLB),SLB是对多台云服务器进行流量分发的负载均衡服务,将后端多台服务器做一个池化,共同对外提供服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性,并且SLB还可以跨可用区部署。

image

阿里云负载均衡SLB由三部分组成,分别是负载均衡实例、监听和后端服务器。

  • 负载均衡实例:一个负载均衡实例是一个运行的负载均衡服务,用来接收流量并将其分配给后端服务器;
  • 监听:监听用来检查客户端请求并将请求转发给后端服务器,监听也会对后端服务器进行健康检查;
  • 后端服务器:一组接收前端请求的ECS实例,可以单独添加ECS实例到服务器池,也可以通过虚拟服务器组或主备服务器组来批量添加和管理;

阿里云负载均衡采用集群部署,通过控制系统可进行统一资源管控,支持四层(TCP和UDP协议)和七层(HTTP和HTTPS协议)。其中,四层基于“LVS+keepalived”的实现,不仅可以保障系统的冗余性,提高整体可用性,而且LVS自生攻击防御来提高整体安全性;七层基于Tengine实现,在nginx的基础上做了优化,增加很多高级功能和特性。

image

相较于传统硬件负载均衡和其他软件负载均衡,阿里云负载均衡有着无可比拟的优势,包括如下:

  • 安全

    • SLB基于LVS在四层做了全面优化,能够提供最高5G的DDOS防护能力;
    • SLB基于ngix在七层做了优化,具备多维度的CC防护能力;
  • 高可用

    • SLB采用模块全集群部署模式,无单点故障,支持同城容灾和异地容灾,可用性高达99.95%;
    • 基于SLB的应用集群部署,可以根据业务发展进行动态扩容,在流量波动较大情况下不中断对外服务;
  • 低成本

    • SLB提供预付费和按量付费两种计费模式,根据业务场景购买,进一步降低成本;

      • 与传统硬件负载均衡相比,该部分成本能够节约60%以上;

        image

为了满足业务多样的需求,阿里- 云负载均衡服务SLB提供了丰富的功能,具体如下:

  • 多协议支持

    • 支持TCP/UDP协议和HTTP/HTTPS协议;
    • 针对HTTPS协议提供集中化式的证书管理,满足用户安全、可靠的传输要求;
  • 多层次容灾机制

    • 提供健康检查机制,系统定时检测后端服务器运行状况,一旦发现其异常,则不会向其转发流量,保证业务可用性;
    • SLB采用多可用区部署,一旦主可用区出现故障,备可用区自动切换;
    • SLB集群部署,各机器之间会话同步,支持热升级;
  • 灵活的调度

    • 支持轮询、加权轮询、最小连接数和hash调度算法,用户可基于实际需求进行选择;
    • 支持根据不同的URL和域名进行转发,提供应用系统的灵活性;
  • 超性能保障
    针对负载均衡实例,首家提出性能保障的云计算厂商,能够满足高性能需求的大客户,从此性能不再是瓶颈;

3.SLB应用场景

基于阿里云负载均衡服务的功能特性,其应用场景是非常丰富,主要概括为五大场景需求:高并发访问量的业务、扩展应用程序、消除单点故障(高可用性)、同城容灾和异地容灾。其中,高并发访问量的业务和扩展应用程序都是从业务层考虑,当业务访问量增加时,如何通过增加后端服务器的个数来提供对外服务能力,消除单点故障(高可用性)、同城容灾和异地容灾则是从应用容灾为出发点,实时保障业务的连续性、稳定性。

image

某互联网金融异地容灾案例分析
随着《网络安全法》的颁布,国家对网络安全极为重视,监管力度逐步加强。互联网金融作为重要的平台,网络安全尤其显得重要,一旦出现业务的中断则会给客户企业巨大的损失。金融平台经常发行某些活动,访问量会急剧增加,很容易将业务系统压垮,导致业务出现中断。为了解决业务连续性,该金融平台提出异地容灾的需求,我们给出阿里云异地容灾解决方案,如图所示。

image

业务系统采用异地三中心的部署架构,青岛和北京分别基于SLB部署一套业务系统,数据通过DTS和其他数据传输方式进行数据同步,其中,青岛采用全部署的方式,承载主要的业务访问,北京最小化部署一套业务系统,保证青岛可用区出现故障时该业务能够对外提供服务即可。用户访问经过DNS智能解析,流量导入青岛业务系统,如果青岛业务系统出现故障,DNS监控系统能够实时感知,秒级切换至北京的业务系统,此时再扩容北京系统ECS个数,满足访问需求,保证业务访问的稳定性。

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
1月前
|
负载均衡 安全 算法
|
2月前
|
弹性计算 运维 监控
高弹性、高可用、低成本的云上资源管理最佳实践
阿里云弹性计算团队十三位产品专家和技术专家共同分享云上运维深度实践,详细阐述如何利用CloudOps工具实现运维提效、弹性降本。
215 0
|
3月前
|
弹性计算 运维 Cloud Native
阿里云云原生弹性方案,用弹性解决集群资源利用率难题
本文主要介绍了通过弹性,实现成本优化,解决集群资源利用率难题。
92515 8
|
4月前
|
关系型数据库 Serverless 分布式数据库
PolarDB Serverless能力测评:秒级弹升、无感伸缩与强一致性,助您实现高效云数据库管理!
云原生数据库 PolarDB MySQL 版是阿里云自研产品,100%兼容 MySQL。PolarDB产品具有多主多写、多活容灾、HTAP 等特性,交易性能最高可达开源数据库的6倍,分析性能最高可达开源数据库的400倍,TCO 低于自建数据库50%。【评测用!】
70462 15
|
8月前
|
弹性计算 容灾 定位技术
构建弹性高可用的云计算环境:ECS的扩展与高可用性设计
本文深入研究了云服务器ECS的自动伸缩和高可用性设计,重点关注了弹性伸缩原理与应用、自动伸缩策略、负载均衡器的使用,以及跨地域容灾架构的建立。通过实际代码示例,读者能够全面了解如何在云计算环境中实现弹性的资源管理和高可用性的应用架构。
346 0
|
8月前
|
运维 数据挖掘 测试技术
函数性能探测:更简单高效的 Serverless 规格选型方案
函数性能探测:更简单高效的 Serverless 规格选型方案
|
9月前
|
弹性计算 人工智能 Kubernetes
应对突发流量,如何快速为自建 K8s 添加云上弹性能力
应对突发流量,如何快速为自建 K8s 添加云上弹性能力
|
12月前
|
缓存 运维 监控
稳定性与高可用保障的工作思路
稳定性与高可用保障的工作思路
108 0
|
负载均衡 容灾 NoSQL
【服务器系列】高可用方案
高可用的一些解决方案冷备双机热备同城双活异地双活异地多活。
319 0
【服务器系列】高可用方案
|
运维 Kubernetes 监控
微服务基础设施管理、高可用和弹性仍然很难保证
微服务基础设施管理、高可用和弹性仍然很难保证
111 0