《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第4天——二、弹性伸缩AS

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第4天——二、弹性伸缩AS

1. 背景

 

场景1:某视频公司,春晚或每周五热门节目来临时,如临大敌,需要按负载自动弹性伸缩。

场景2:某视频直播公司,无法预估业务负载情况,需要根据CPU利用率、Load、带宽利用率,自动弹性伸缩。

场景3:某游戏公司,每天中午12点,每天晚上6点-9点,需要定时扩容。

 

image.png

基于以上问题,在不使用弹性伸缩时,一般会有两种解决方式:

 

image.png

 

1) 超配资源:根据业务需求最高点峰值配置资源,这种方式解决了资源不够的情况,但也造成了资源的浪费。

2) 人工伸缩:以人工操作增减资源,但由于人工操作有滞后的情况,在某些时间点业务负载高于资源配置,会造成系统不稳定。

 

因此,需要一种系统自动伸缩的方式来配置资源,满足业务需求的变化。

 

2. AutoScaling(AS)介绍

 

1) 什么是弹性伸缩AS(AutoScaling)

 

弹性伸缩(AutoScaling,简称AS)是一种服务,可以自动调整弹性计算资源(ECS),以满足业务需求的变化。

 

应用场景:弹性扩张、弹性收缩、弹性自愈(即健康检查)。

 image.png

 弹性扩张                                                 弹性自愈

2) 工作原理

 

image.png 

弹性伸缩工作原理

 

弹性伸缩本质上是一组ECS实例集合,它可以根据用户指定的扩缩容策略(比如基于某些监控指标),在业务非高峰时,自动完成实例的创建;在业务低谷时,自动释放多余实例,最终实现业务的高可用。

 

工作原理解析

 

如果某Web应用使用ECS实例处理业务请求,系统架构分为三层(如上图右侧虚线框)。其中,最上层的负载均衡,负责将客户端的请求转发给伸缩组内的ECS实例;中间层的伸缩组内的ECS实例,负责处理客户端请求;最下层的RDS数据库,负责存储来自ECS实例的业务数据。

 

通过弹性伸缩调整中间层ECS实例数量,从而自动调整业务请求能力,具体流程如下:

 

a) 弹性伸缩在符合各种任务模式下自动伸缩触发任务:

 

定时任务:创建定时任务,在指定时间执行指定伸缩规则。

自定义任务:手动进行弹性伸缩,包括手动执行伸缩规则,或者手动添加、移出或者删除已有的ECS实例。

健康检查任务:如果在伸缩组开启健康检查功能,伸缩组会定期检查ECS实例的运行状态,如果发现一台ECS实例未处于运行中状态,则判定该ECS实例为不健康实例并移出。

云监控任务:基于云监控性能指标(例如CPU使用率)创建报警任务,比如例如伸缩组内所有ECS实例的CPU平均值大于80%时触发报警。

 

b) 通过ExecuteScalingRule接口触发伸缩规则。

c) 创建伸缩活动:根据需要增加的ECS实例数量、实例配置信息、需要配置的负载均衡实例和RDS实例创建伸缩活动。

d) 在伸缩活动中,自动创建实例并配置负载均衡和RDS

e) 启动伸缩组的冷却功能,待冷却时间完成后,该伸缩组才能接收新的执行伸缩规则请求。

 

注意

冷却时间只适用于云监控的动态模式,其他模式不受影响。

 

3) AutoScaling的组成

 

伸缩组:具有相同应用场景的ECS的集合。定义组内ECS实例数的最大值、最小值及其相关联的SLB和RDS。

伸缩配置:用于弹性伸缩的ECS的配置。

伸缩规则:具体的扩展或收缩操作,例如加入或移出N个ECS实例。

触发任务:定时任务,报警任务。

伸缩活动:伸缩规则成功触发后,就会产生一条伸缩活动。

 

3. AutoScaling配置流程

 

1) 创建伸缩组

2) 创建伸缩配置

3) 启用伸缩组

4) 创建伸缩规则

5) 创建定时任务

6) 创建报警任务

 

4. 最佳实践:多种伸缩模式结合

 

各种伸缩模式无排他性,可以组合使用。

 

image.png 

 

5. 应用场景

 

场景1:高弹性web应用服务

 

业务类型

 

如果弹性Web应用服务存在明显的峰谷变化(比如视频应用每天晚上9点到12点之间访问量会突增),无需提前准备大量云服务器,只需通过配置弹性伸缩组及合适的伸缩策略,系统能根据设置的伸缩策略自动地调整(增加或减少)云服务器资源的数量,在确保Web应用稳定提供服务的同时,大大降低系统稳定行的成本。

image.png

 

场景2:高可用计算集群部署

 

业务类型

 

如果使用云服务器作为分布式大数据的计算节点,或服务检索服务器的后端计算集群,该计算集群需要具备高可用性,且能随着负载的变化动态调整的能力。只需通过配置弹性伸缩的动态伸缩模式,系统会根据指定指标(比如CPU使用率)的阈值自动地增加或减少云服务器的数量;同时,系统还会自动检测云服务器的健康状态,将不健康的实例移除,并启用新实例,确保该集群的高可用性。

 

image.png

相关文章
|
26天前
|
运维 持续交付 云计算
深入解析云计算中的微服务架构:原理、优势与实践
深入解析云计算中的微服务架构:原理、优势与实践
59 1
|
16天前
|
人工智能 运维 监控
阿里云联合中国信通院等单位发布首个云计算智能化可观测性能力成熟度模型标准
推动行业智能化落地,阿里云联合中国信通院及国内头部云厂商、观测厂商、各行业建设方,历时近 5 个月,共同编制《云计算智能化可观测性能力成熟度模型》,以规范和指导云计算环境下的智能可观测性建设实践,为企业实施云环境下的智能化可观测能力建设提供指导。
|
1月前
|
弹性计算 监控 大数据
云计算中的弹性伸缩:原理与实践
云计算中的弹性伸缩:原理与实践
|
1月前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
101 3
|
2月前
|
存储 应用服务中间件 云计算
深入解析:云计算中的容器化技术——Docker实战指南
【10月更文挑战第14天】深入解析:云计算中的容器化技术——Docker实战指南
86 1
|
2月前
|
存储 人工智能 弹性计算
阿里云何川:云计算,为数据基础设施的建设提速|数据对话
中国信通院工业互联网与物联网研究所特别策划“数据对话”专题,旨在通过专家的深度分析和独特视角,回答社会关切话题,探讨前沿技术和应用趋势。
|
2月前
|
云计算 开发者 Docker
揭秘云计算中的容器化技术——Docker的深度解析
【10月更文挑战第6天】揭秘云计算中的容器化技术——Docker的深度解析
|
2月前
|
存储 人工智能 弹性计算
阿里云何川:云计算,为数据基础设施的建设提速|数据对话
中国信通院工业互联网与物联网研究所特别策划“数据对话”专题,旨在通过专家的深度分析和独特视角,回答社会关切话题,探讨前沿技术和应用趋势。本期,我们邀请到阿里云弹性计算产品运营与生态合作负责人何川,围绕云计算如何加速数据基础设施建设及其未来发展趋势展开探讨。
|
1月前
|
弹性计算 人工智能 Serverless
阿里云ACK One:注册集群云上节点池(CPU/GPU)自动弹性伸缩,助力企业业务高效扩展
在当今数字化时代,企业业务的快速增长对IT基础设施提出了更高要求。然而,传统IDC数据中心却在业务存在扩容慢、缩容难等问题。为此,阿里云推出ACK One注册集群架构,通过云上节点池(CPU/GPU)自动弹性伸缩等特性,为企业带来全新突破。
|
弹性计算 缓存 运维
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
230 0

推荐镜像

更多