开发者社区> 弹的飞起> 正文

弹性伸缩组支持设置期望实例数

简介: 介绍 期望实例数是指伸缩组内想要保持的ECS实例总数,可以在创建伸缩组时设置,其数值介于伸缩组最小实例数和最大实例数之间,各种伸缩模式都会改变这个值。伸缩组在设置期望实例数后会自动支持伸缩活动并行执行。
+关注继续查看

介绍

期望实例数是指伸缩组内想要保持的ECS实例总数,可以在创建伸缩组时设置,其数值介于伸缩组最小实例数和最大实例数之间,各种伸缩模式都会改变这个值。伸缩组在设置期望实例数后会自动支持伸缩活动并行执行。

通过设置期望实例数可以解决以下问题:

  • 对于以往的伸缩组,用户需要自己维护伸缩组内实例数,如果伸缩活动出现失败,用户需要手动重试。
  • 伸缩组同一时间只支持一个伸缩活动,伸缩活动执行可能比较耗时,这期间用户无法调整伸缩组实例数。
  • 串行执行伸缩活动导致伸缩组的利用率低。比如扩缩容进行时,健康检查触发的伸缩活动就无法执行。

期望实例数的变化规则

  • 期望实例数的值始终介于伸缩组最小实例数和最大实例数之间。
  • 用户创建和修改伸缩组时可以指定期望实例数。
  • 用户如果只修改伸缩组最大实例数或最小实例数,期望实例数会自动调整介于两者之间,比如期望实例数为2,只调整最小实例数为3,则修改完成后desire值和最小实例数都为3.
  • 伸缩组会定时检查当前期望实例数与当前伸缩组中服务中、保护中和备用中的总实例数(以下简称稳态实例数)的差距来触发期望实例数检查任务,如果期望实例数大于稳态实例数则触发扩容任务,反之触发缩容任务。
  • 手动执行伸缩规则和定时任务将不再直接触发扩缩容实例,而是修改伸缩组的期望实例数。
  • 报警任务和手动添加实例,在扩缩容的同时会修改期望实例数。
  • 手动移出/移除实例,可以设置DecreaseDesiredCapacity参数来决定缩容的同时是否修改期望实例数,当DecreaseDesiredCapacity设置为true时,实例会被移出/移除并且期望实例数会相应的减少;反之,期望实例数不会变化。
  • 手动执行伸缩规则、定时任务、报警任务的场景下,新的期望实例数会以稳态实例数为基础进行变化。比如当前伸缩组期望实例数为2,当前稳态实例数为2,用户执行扩容3台的伸缩规则,则新的期望实例数为当前稳定态实例数和扩容变化数之和,结果为5;如果当前期望实例数为2,当前稳态实例数为1,用户执行扩容2台的伸缩规则,则新的期望实例数为当前稳定态实例数和扩容变化数之和,结果为3。
  • 手动添加、手动移出/移除实例时,新的期望实例数会在当前期望实例数上做相应减少。比如当前期望实例数为5,稳态实例数为3,手动添加1台实例,新的期望实例数为6。

并行伸缩活动介绍

  • 只有设置了期望实例数的伸缩组才可以支持伸缩活动并行。
  • 目前支持的并行伸缩活动有手动执行伸缩规则、定时任务、期望实例数检查任务、实例健康检查任务、最大最小值检查任务、手动移除/移出、手动添加实例,其中期望实例数检查任务、实例健康检查任务、最大最小值检查任务为系统自动触发。其余伸缩活动为非并行伸缩活动,常见的非并行伸缩活动为报警任务。
  • 并行伸缩活动执行时,可以允许其他并行伸缩活动执行,比如当前伸缩组在扩容时,用户可以手动移除实例。
  • 非并行伸缩活动执行时, 支持并行的伸缩活动会被拒绝执行。

举例说明

  • 场景一 连续执行不同的伸缩规则,没有期望实例数检查任务触发的情况下,查看期望实例数变化。当前期望实例数为4,稳态实例数为4,先执行增加4台的伸缩规则,查看伸缩活动详情如图:
    image.png

当前稳态实例为4,执行增加4台,因此期望实例数由4变为8。
紧接着执行增加1台实例的伸缩规则,查看伸缩活动详情如图:
image.png
当前稳态实例为4,执行增加1台,因此期望实例数由8变为5。

  • 场景二 执行两次不同的伸缩规则,查看伸缩活动并行情况。当前期望实例数为3,稳态实例数为3,先执行增加1台伸缩规则,期望值变为4
    image.png

之后等待触发期期望实例数检查任务
image.png
接着执行移除2台实例的伸缩规则。由于上个扩容伸缩活动没有执行完,因此稳态实例数还是为3,期望值变为1。
image.png
之后等待触发期望实例数检查任务。
image.png
2个任务同时在进行中
image.png
由于当前期望实例数是1,当扩容2台的伸缩活动执行完成后稳态实例变为2,又会触发期望实例数检查任务,最终满足期望实例数等于稳态实例数。
image.png

  • 场景三 非并行任务执行场景。当前报警任务正在触发,报警任务为非并行伸缩活动
    image.png

执行伸缩规则,由于有非并行伸缩活动在执行因此被拒绝image.png

使用须知

  • 伸缩组支持期望实例数的功能目前在控制台灰度执行中。
  • 没有设置过期望实例数的伸缩组无法开启这个功能。
  • 设置期望实例数后的伸缩组无法将此参数置空。

与未设置期望实例数伸缩组的差异

  • 用户不需要自行维护伸缩组内实例数,设置期望实例数后,伸缩组会自动扩缩容以满足期望实例数,如果扩缩容失败系统也会自动重试。
  • 手动执行伸缩规则、定时任务将不再直接触发扩缩容实例,而是会修改伸缩组的期望实例数。之后期望实例数检查任务会自动扫描稳态实例数和期望实例数之间的差异从而触发扩缩容任务。
  • 手动移除/移出实例、手动添加实例和报警任务会直接触发扩缩容并修改期望实例数。
  • 伸缩组支持并行执行伸缩活动,具体支持场景参见上面的并行伸缩活动介绍。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【产品功能】配置网卡从此与关机无缘,弹性网卡支持热插拔功能
本文主要介绍了弹性网卡的热插拨功能改进,弹性网卡插拔对应的实例不再要求必须为 Stopped 状态,现在只要求是稳定状态( Running Stopped )即可。以及介绍了控制台、OpenAPI如何对弹性网卡进行热插拔操作。
4382 0
通过TAG将ECS实例(弹性扩缩容)自动加入云监控分组
基于阿里云弹性伸缩集成部署弹性服务ECS方案,同时基于云监控CMS利用标签实现ECS实例的自发现监控ECS实例,通过云监控CMS应用分组查看配置统一的监控告警服务、资源利用率、集中的报警管理,轻松实现ECS监控运维。也就是说,ECS+AutoScaling+TAG+CMS 实现自动化分组运维。
1456 0
好程序员web前端技术分享css3旧版弹性盒
 好程序员web前端技术分享css3旧版弹性盒1、display:box说明: (必须加前缀)设置弹性盒 使用如下属性,必须在父代设置display:box; 2、box-orient说明: 在父级上设置该属性,则子代按水平排列或竖直排列。
3034 0
Kubernetes弹性伸缩全场景解读(八) - 定时伸缩组件支持运维模式
## 前言 定时伸缩(cronhpa)是很多开发者在解决负载周期性时最常用的方法,通过类似crontab的语法可以在一个时间点定时触发伸缩活动。crontab的语义表达是很强大的,但是也存在语法复杂,执行计划容易被打断等问题。为了解决上述的问题,定时伸缩(cronhpa)提供了运维模式,支持通过运维页面来查看底层排队的定时任务,同时也提供了API接口用于开发者自研的平台接入与集成。 #
429 0
详解css3弹性盒模型(Flexbox)
详解css3弹性盒模型(Flexbox): http://segmentfault.com/a/1190000000707526   Flex 布局教程:语法篇: http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
809 0
Ecs实例名称及主机名称支持批量连续命名
实例批量命名、主机批量命名
2867 0
阿里云弹性容器实例产品 ECI ——云原生时代的基础设施
本文介绍了弹性容器实例 ECI 的技术优势,特别介绍了 ECI 在弹性、Serverless、安全和易用性等方面技术上的方案和采取的优化措施。
5952 0
新功能:阿里云负载均衡SLB率先支持TLS1.3
当下的互联网环境中HTTPS已经变得越来越不可或缺,而HTTPS本身也在不断的演进。随着TLS1.3发布,HTTPS的性能和安全性得到了进一步提升。今天我非常荣幸的告诉大家,阿里云负载均衡SLB支持TLS1.3,是全球第一个支持TLS1.3的公共云负载均衡服务。
2016 0
+关注
7
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载