云端干货|降本必备—弹性伸缩的基本原理

弹性伸缩(Auto Scaling)是云商提供的、根据自身业务需求自动调整计算能力(即实例数量)的服务。使用该服务时,实例数量可根据工作负载自动进行伸缩,从而在业务需求增长时提供资源支持、在业务需求下降时降低成本。

那么,弹性伸缩的基本原理是怎样的?我们如何判断弹性伸缩的效果、进行优化?来一探究竟——

一.什么是弹性伸缩
弹性——服务器对业务量的变化应具备一定的容忍度;

伸缩——针对业务量的变化,系统需要在线对资源进行调整。伸缩完成以后,系统对外服务的能力应恢复到正常水平。

我们使用弹性伸缩需要达到2大目的:1.服务可靠;2.资源成本节省

首先,了解一下弹性伸缩服务的部署架构:

云端干货|降本必备—弹性伸缩的基本原理_第1张图片
请求从网关服务(即LoadBalance)进来后,到达应用(App)。应用所需要的云主机,往往交给伸缩组来管理。伸缩组会根据主机资源的使用情况,自动购买新机器、回收旧机器,从而让整个集群的资源使用率保持在预期的水平。

那么,伸缩组如何完成这一系列“炫酷”操作?

云端干货|降本必备—弹性伸缩的基本原理_第2张图片

“伸缩”主要集中在两个方向:

  1. 水平方向,通过加节点和减节点,在节点数上面进行调整来达到伸缩效果。
  2. 垂直方向:通过加配置和减配置,来达到伸缩效果。

云端干货|降本必备—弹性伸缩的基本原理_第3张图片

除此以外,如果想做好弹性,我们必须对资源的使用情况进行监控。如流程图所示,指标监控服务,负责从APP和集群进行实时的数据采集,采集到的结果会交给autoscaler(伸缩调度器)。Autoscaler会根据预定的策略进行判断(例如,基于CPU或者基于QPS),可能会设定一个伸缩的阈值,如果判断触发了扩缩容,Autoscaler会联系节点组购买机器或者回收机器。伸缩完成的节点,将会和网关进行同步,这样就完成了一个基本的弹性伸缩Web服务。

二.什么才是优秀的弹性伸缩方案?

弹性伸缩流程的每一个步骤,都以不同方式影响着弹性伸缩效果:

云端干货|降本必备—弹性伸缩的基本原理_第4张图片

首先,监测服务作为弹性伸缩的起点,其数据有效性、实时性,将影响伸缩的准确性和灵敏性;而监测指标的丰富程度,则决定了策略的可操作范围;

其次,Autoscaler的算法和策略直接决定了伸缩策略的效果。

再次,伸缩的力度和伸缩的速度会直接的影响到伸缩的效率、资源的使用率。

最后,应用作为服务本身的载体,其拉取速度、启动速度以及启动的成功率,直接决定了最终的结果。

云端干货|降本必备—弹性伸缩的基本原理_第5张图片

综上,一个优秀的弹性伸缩方案,应该尽量满足三个要素。

第一,可靠,它必须具备一定的突增压力的抵抗能力
第二,高效,它能够快速的调整到预期资源的使用量。
第三,经济,它必须在合理范围内尽量的去提高资源的使用率,减少浪费。

【弹性伸缩降本伴侣:SpotMax云资源优化服务】

对于用云企业来说,随着业务增长,用云成本将迅速增加,成为制约企业快速发展的“绊脚石”。SpotMax作为一款云资源优化服务,其中的MaxGroup工具能够充分发挥弹性伸缩的特点,帮助用云企业解决Spot实例被回收、可用资源不足的问题,从而在维护服务稳定的同时,降低用云成本。

以AWS为例,通常情况下,AWS的弹性伸缩(Auto Scaling)服务在Spot实例不足时,用户无法继续申请实例资源,导致资源长时间短缺,用户面临大流量冲击风险。而MaxGroup在发现autoscaling无法申请资源时,可以及时为用户补充on-demand实例,使服务所需要的资源充盈,而当能继续申请到Spot资源时,MaxGroup会主动将on-demand实例替换为Spot,在服务稳定的前提下,保障成本最低的目标。长期实践证明,SpotMax平均可帮助企业节省60%的用云成本,最多时可降本90%。

在云端,当资源可以按需伸缩,限制你想象的只有成本。SpotMax解决方案能够助力企业实现极致用云成本节省,释放业务增长潜力。想要了解更多?戳“下方链接”,一键get你的云成本节省秘籍!

了解SpotMax
了解MaxGroup

你可能感兴趣的:(云计算运维架构弹性伸缩)