阿里云里面需要确保ecs实例上任务处理完才能让弹性伸缩释放该实例吗?


--私人课件,不出版,不公开,禁止传播

想做好运维工作,人先要学会勤快;
居安思危,勤记而补拙,方可不断提高;
别人的资料用的再爽也是别人的;
自己总结的东西是你自身特有的一种思想与理念的展现;
精髓不是看出来的,精髓是记出来的;
请同学们在学习的过程中养成好的学习习惯;
勤于实践,抛弃教案,勤于动手,整理文档

根据业务需求和策略设置伸缩规则,在业务需求增长时自动为您增加ECS实例以保证计算能力,在业务需求下降时自动减少ECS实例以节约成本。弹性伸缩不仅适合业务量不断波动的应用程序,同时也适合业务量稳定的应用程序。

  • 根据客户业务需求自动调整ECS实例数量
  • 自动向负载均衡的后端服务器组中添加或移除相应的ECS实例。
  • 自动向RDS访问白名单中添加或移除ECS实例的IP。

  • 随需应变:根据需求“恰到好处”地分配资源,无需提前预测需求变化,实时应对需求突增。
  • 自动化:无需人工干预,自动创建和释放ECS实例,自动配置负载均衡和RDS访问白名单。
  • 伸缩模式丰富:多模式兼容,可同时配置定时、动态、自定义、固定、健康模式,可通过API对接外在监控系统。
  • 智能:智能调度云计算资源,应对各种复杂场景。

  • 某视频公司:春晚或每周五热门节目来临时,负载激增,需及时、自动扩展云计算资源。
  • 某视频直播公司:业务负载变化难以预测,需要阿里云自动根据CPU利用率、应用负载、带宽利用率作为衡量指标进行弹性伸缩。
  • 某游戏公司:每天中午12点及晚上6点到9点间需求增长,需要定时扩容。
  • 某电商:在大促中,临时激增大量云服务器需求,需要在数分钟内实现从创建到可用。

  • 弹性伸缩是根据用户的业务需求和策略,自动调整其弹性计算资源的管理服务。其能够在业务增长时自动增加 ECS 实例,并在业务下降时自动减少 ECS 实例。

  • 伸缩组是具有相同应用场景的 ECS 实例的集合。伸缩组定义了组内 ECS 实例数的最大值、最小值及其相关联的负载均衡实例和 RDS 实例等属性。

  • 伸缩配置定义了用于弹性伸缩的 ECS 实例的配置信息。

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

  • 伸缩规则成功触发后,就会产生一条伸缩活动。伸缩活动主要用来描述伸缩组内 ECS 实例的变化情况。

  • 用于触发伸缩规则的任务,如定时任务、云监控的报警任务。

  • 冷却时间是指,在同一伸缩组内,一个伸缩活动执行完成后的一段锁定时间。在这段锁定时间内,该伸缩组不执行其他的伸缩活动。

  • 伸缩组包含伸缩配置、伸缩规则、伸缩活动
  • 伸缩配置、伸缩规则、伸缩活动依赖伸缩组的生命周期管理,删除伸缩组的同时会删除与伸缩组相关联的伸缩配置、伸缩规则和伸缩活动。
  • 伸缩触发任务有定时任务、云监控报警任务等类型。
  • 定时任务独立于伸缩组存在,不依赖伸缩组的生命周期管理,删除伸缩组不会删除定时任务
  • 云监控报警任务独立于伸缩组存在,不依赖伸缩组的生命周期管理,删除伸缩组不会删除报警任务。

需要提前设置触发弹性伸缩的条件

业务升级时,弹性伸缩会自动完成底层资源升级,避免访问延时和资源超负荷运行。

业务需求下降时,弹性伸缩为您自动完成底层资源释放,避免资源浪费。

弹性伸缩提供健康检查功能,自动监控伸缩组内的ECS实例的健康状态,避免伸缩组内健康ECS实例低于设置的最小值

  • 创建好伸缩组、伸缩配置、伸缩规则、伸缩触发任务后,系统会自动化执行以下流程(以增加 ECS 实例为例):

1 伸缩触发任务会按照各自触发生效的条件来触发伸缩活动。
- 云监控任务会实时监控伸缩组内 ECS 实例的性能,并根据用户配置的报警规则(如伸缩组内所有 ECS 实例的 CPU 平均值大于 60%)触发执行伸缩规则请求。
- 定时任务会根据用户配置的时间来触发执行伸缩规则请求。
- 可以根据自己的监控系统及相应的报警规则(如在线人数、作业队列)来触发执行伸缩规则请求。
- 健康检查任务会定期检查伸缩组和 ECS 实例的健康情况,如发现有不健康的 ECS 实例(如 ECS 为非 Running 状态)会触发执行 移出该 ECS 实例 的请求。

2 系统自动通过 ExecuteScalingRule 接口触发伸缩活动,并在该接口中指定需要执行的伸缩规则的阿里云资源唯一标识符(Ari)。
如果是用户自定义的任务,则需要用户在自己的程序中调用 ExecuteScalingRule 接口来实现。

3 根据步骤 2 传入的伸缩规则 Ari(Rule Ari)获取伸缩规则、伸缩组、伸缩配置的相关信息,并创建伸缩活动。

  • 通过伸缩规则 Ari 查询伸缩规则以及相应的伸缩组信息,计算出需要增加的 ECS 实例数量,并获得需要配置的负载均衡和 RDS 信息。
  • 通过伸缩组查询到相应的伸缩配置信息,即获得了需要创建的ECS实例的配置信息(CPU、内存、带宽等)。
  • 根据需要增加的 ECS 实例数量、ECS 实例配置信息、需要配置的负载均衡实例和 RDS 实例创建伸缩活动。

4 在伸缩活动中,自动创建 ECS 实例并配置负载均衡和 RDS。
- 按照实例配置信息创建指定数量的 ECS 实例。
- 将创建好的 ECS 实例的内网 IP 添加到指定的 RDS 实例的访问白名单当中,将创建好的 ECS 实例添加到指定的负载均衡实例当中。

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

  • 定时模式:自定义自动伸缩发生的时间和频率,如每天 13:00增加 ECS 实例。
  • 动态模式:基于云监控性能指标(如 CPU 利用率),自动增加或减少 ECS 实例。
  • 固定数量模式:通过设置 最小实例数 (MinSize),即健康运行的ECS 实例最小数量,以保证可用性。
  • 自定义模式:通过 API 调用您的自有监控系统,您可以执行手工伸缩。
  • 手工添加或移出既有的 ECS 实例。
  • 健康模式:如 ECS 实例为非 Running 状态,弹性伸缩将自动移出或释放不健康的 ECS 实例。
  • 多模式并行:以上所有模式都可以组合配置。例如设置了每天 13:00 ~ 14:00 创建 20 个 ECS 实例以应对业务高峰,但实际需求有可能需要多于20个实例, 则您可以选择其他伸缩模式,与定时模式配合一起使用。

  • 伸缩组内部署在ECS实例的应用必须无状态并且可横向扩展。
  • 伸缩组内的ECS实例可能会被自动释放,因此不适合保存应用状态信息和相关数据等信息,例如会话记录(Session)、数据库或者日志等。如果有需要,可以保存状态信息到独立的状态云服务器ECS、保存数据到云数据库RDS或者集中日志存储到日志服务
  • 弹性伸缩无法自动将ECS实例添加到开放缓存Memcache实例访问白名单,需要自行添加。
  • 弹性伸缩无法纵向扩展,即弹性伸缩无法自动升降ECS实例的vCPU、内存和带宽等配置。

  • 同一个账号一个地域下最多创建 50 个伸缩组。
  • 一个伸缩组内最多创建 10 个伸缩配置。
  • 一个伸缩组内最多创建 50 个伸缩规则。
  • 一个伸缩组内最多创建 6 个事件通知。
  • 一个伸缩组内最多创建 6 个生命周期挂钩。
  • 一个伸缩组最多同时关联 5 个负载均衡实例。

  • 一个账号下最多创建 20 个定时任务

  • 一个伸缩配置下,最多可以选择 10 个实例规格。

如果没有开通伸缩功能,在进入页面的时候直接点击开通按量付费。


扩容时使用实例启动模板中的实例配置信息
提取已有ECS实例的配置信息创建一个默认伸缩配置,作为自动创建ECS实例的模板。提取的配置信息包括实例的实例规格、镜像、网络类型、安全组、登录密码、标签等。
不指定自动创建ECS实例的模板,伸缩组创建完成后进入停用状态。需要继续创建伸缩配置或指定启动模板作为自动创建ECS实例的模板,然后才能启用伸缩组。
当前ECS实例数量超过上限时,弹性伸缩会自动移出ECS实例,使得伸缩组内的ECS实例数量等于上限。
当前ECS实例数量低于下限时,弹性伸缩会自动添加ECS实例,使得伸缩组内的ECS实例数量等于下限。
伸缩组会自动将ECS实例数量维持在期望实例数

单位为秒,伸缩组发生伸缩活动后的默认冷却时间。在冷却时间内,伸缩组会拒绝由云监控报警任务触发的伸缩活动请求,但其他类型任务触发的伸缩活动可以绕过冷却时间立即执行,例如手动执行任务、定时任务。

最早伸缩配置对应的实例 伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。筛选添加时间最早的伸缩配置和启动模板对应的实例。手动添加的实例没有关联伸缩配置或启动模板,因此不会首先选出手动添加的实例。如果已移出全部关联的实例,仍需要继续移出实例,则随机移出手动添加的实例。
筛选创建时间最早的实例。
筛选创建时间最新的实例。
仅在设置再从结果中移出时可选,表示不进行第二段筛选。
  • 开启伸缩组保护后,不能在控制台或者通过API删除该伸缩组,有效避免误删除伸缩组。如果要删除这个组
    那么需要先通过修改伸缩组规则把这个伸缩组保护关闭才可以。

  • 伸缩组创建完成以后,网络是不能更改的
创建伸缩配置时,只能选择支持专有网络的实例规格。 手动添加已有ECS实例时,只能选择同一专有网络中的实例。
创建伸缩配置时,只能选择支持经典网络的实例规格。手动添加已有ECS实例时,只能选择经典网络实例。

交换机,一个可用区只能属于一个交换机,可以多交换机,多可用区

先选择的交换机优先级高。当伸缩组无法在优先级较高的交换机所在可用区创建ECS实例时,会自动使用下一优先级的交换机创建ECS实例。
在伸缩组关联多个交换机且交换机分布在两个以上可用区时生效,支持在交换机所在的可用区之间均衡分布ECS实例。如果由于库存不足等原因导致可用区之间ECS实例的数量不均衡,可以执行再均衡分布操作来平衡ECS实例的分布情况
在伸缩配置中指定了多个可选实例规格时生效,按vCPU单价从低到高尝试创建ECS实例。如果伸缩配置中计费方式选择抢占式实例,优先创建抢占式实例。由于库存等原因无法创建各实例规格的抢占式实例时,再自动尝试创建按量付费实例。

- 成本优化选项细节参数说明

伸缩组所需按量付费ECS实例的最小台数,默认为0台。如果伸缩组内的按量付费ECS实例的台数小于该值,将优先创建按量付费实例
自动创建ECS实例时按量付费实例所占的比例,默认为70%。计算该值时,不包括组内最小按量实例数对应的台数。
价格最低的实例规格的个数,默认为1个。在伸缩配置中指定了多个可选实例规格时生效。创建抢占式实例时,弹性伸缩会在价格最低的几个实例规格之间均衡创建ECS实例。
是否开启抢占式实例补偿 开启抢占式实例补偿后,在抢占式实例被回收前5分钟,弹性伸缩会主动创建新的抢占式实例,并替换掉将被回收的抢占式实例



伸缩规则的类型,创建成功后不可修改,选择简单规则。
调整至N台:执行伸缩规则后,伸缩组内实例的数量变为N台。最多能触发伸缩500台实例。 增加N台:执行伸缩规则后,伸缩组内实例的数量在当前基础上增加N台。增加的数量不可超过500。 增加N%:执行伸缩规则后,伸缩组内实例的数量在当前基础上增加N%。最多能触发伸缩500台实例。 减少N台:执行伸缩规则后,伸缩组内实例的数量在当前基础上减少N台。减少的数量不可超过500。 减少N%:执行伸缩规则后,伸缩组内实例的数量在当前基础上减少N%。最多能触发伸缩500台实例。
可选项,单位为秒。不填写则默认使用伸缩组的冷却时间
伸缩规则的类型,创建成功后不可修改,选择目标追踪规则
是否配合已有的预测伸缩规则 如果伸缩组内存在预测规则,可以选择继承预测规则的指标类型和目标值。
平均CPU使用率 内网入流量的平均值 内网出流量的平均值 公网入流量的平均值 公网出流量的平均值
云监控指标的目标值,目标追踪规则会将云监控指标值维持在目标值附近。
单位为秒。处于预热状态的实例正常加入伸缩组,但是不会向云监控上报监控数据。动态计算需要扩缩容的实例数量时,处于预热状态的实例不计入现有实例数量,以免造成指标值波动。
如果禁用缩容,目标伸缩规则只创建一个用于扩容的报警任务,因此不会从伸缩组移出ECS实例。如果允许缩容,目标伸缩规则会创建两个报警任务,一个用于扩容,一个用于缩容。
伸缩规则的类型,选择预测规则
是否配合已有的目标追踪规则
勾选是否配合已有的目标追踪规则后出现,可以继续选择一条目标追踪规则,自动沿用目标追踪规则的指标类型和目标值。
平均CPU使用率(%) 内网入流量的平均值(KB/Min) 内网出流量的平均值(KB/Min)
所选云监控指标的目标值,预测规则将综合目标值等因素计算出合适的实例数量。如果修改了目标值,伸缩组会清空现存的预测任务,并在一小时内创建新的预测任务。
预测并伸缩:产生预测结果并创建预测任务。 只预测不伸缩:产生预测结果,但不会创建预测任务。
伸缩组实例数上限,和最大值处理方式结合使用。 默认值为当前的伸缩组内最大实例数。
预测值会覆盖预设最大值:预测值大于预设最大值时,预测任务的实例数最大值采用预测值。 预设最大值会覆盖预测值:预测值大于预设最大值时,预测任务的实例数最大值采用预设最大值。 预测值会附加一定比例:和增加比例结合使用。
最大值处理方式为预测值会附加一定比例时出现,当前预测值会按照该比例增加,并作为新的预测值。例如,当前预测值为100,增加比例为10%,则预测任务的实例数最大值采用110。 增加比例的默认值为0%,最大值为100%。
预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。
伸缩规则的类型,创建成功后不可修改,选择步进规则。
系统监控:选择该项后,可以继续指定系统监控报警任务。 自定义监控:选择该项后,可以继续指定自定义监控报警任务。
指定一个报警任务,该报警任务的触发条件会作为分步步骤的参照条件。例如,CPU使用率平均值连续3次 >= 80%。
基于报警任务触发条件继续设置分步步骤,指定违例规模及相应操作,在报警任务触发后,弹性伸缩会根据违例规模执行相应操作
单位为秒。 处于预热状态的实例正常加入伸缩组,但是不会向云监控上报监控数据。动态计算需要扩缩容的实例数量时,处于预热状态的实例不计入现有实例数量,以免造成指标值波动 例如,步进规则的实例预热时间为300秒,增加了2台实例,则在实例创建完成后300秒内,计算伸缩组内CPU使用率平均值时不会计入这2台实例的指标值。

生命周期挂钩的作用就是在服务器进入服务之前,先挂起,我们可以更自由的去配置一些自己想要的服务


ECS实例保持挂起状态的时间。最小为30秒,最大为21600秒(6小时),必须为整数。


}

我要回帖

更多关于 阿里云服务器可以干嘛 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信