伸缩组是具有相同应用场景的ECS实例集合。您可以通过伸缩组定义可容纳ECS实例数量的边界值、弹性扩张时创建ECS实例的模板、弹性收缩时移出ECS实例的策略等属性,让伸缩组按照您的需求维护一组ECS实例。

前提条件

  • 如果选择实例启动模板作为自动创建ECS实例的模板,您需要提前创建好实例启动模板,具体操作请参见创建实例启动模板
  • 如果需要为伸缩组关联负载均衡实例,请确保满足以下条件:
    • 您持有一个或多个处于运行中状态的负载均衡实例,具体操作请参见创建负载均衡实例
    • 负载均衡实例和伸缩组必须位于同一地域。
    • 如果负载均衡实例和伸缩组的网络类型均为专有网络,则必须位于同一专有网络。
    • 当负载均衡实例的网络类型为经典网络,伸缩组的网络类型为专有网络时,如果负载均衡实例的后端服务器组中包含专有网络ECS实例,该ECS实例必须与伸缩组位于同一专有网络。
    • 负载均衡实例配置至少一个监听,具体操作请参见监听概述
    • 负载均衡实例必须开启健康检查,具体操作请参见配置健康检查
  • 如果需要为伸缩组关联RDS实例,请确保满足以下条件:
    • 您持有一个或多个处于运行中状态的RDS实例,具体操作请参见什么是云数据库RDS
    • RDS实例和伸缩组必须位于同一地域。

背景信息

您能创建的伸缩组数量存在上限,更多信息请参见使用限制

操作步骤

  1. 登录弹性伸缩控制台
  2. 在左侧导航栏中,单击伸缩组管理
  3. 在顶部菜单栏处,选择地域。
  4. 在页面左上角,单击创建伸缩组
  5. 完成伸缩组配置,然后单击确认
    伸缩组属性说明如下表所示。
    伸缩组属性 属性适用的伸缩组网络类型 说明
    伸缩组名称 专有网络、经典网络 2~64个字符,以大小写字母、数字或中文开头,可包含英文句号(.)、下划线(_)和短划线(-)。
    组内实例配置信息来源 专有网络、经典网络 伸缩组支持以下来源类型:
    • 启动模板:扩容时使用实例启动模板中的实例配置信息。
    • 选择已有实例:提取已有ECS实例的配置信息创建一个默认伸缩配置,作为自动创建ECS实例的模板。提取的配置信息包括实例的实例规格、镜像、网络类型、安全组、登录密码、标签等。
    • 从零开始创建:不指定自动创建ECS实例的模板,伸缩组创建完成后进入停用状态。您需要继续创建伸缩配置或指定启动模板作为自动创建ECS实例的模板,然后才能启用伸缩组。
    您必须根据来源类型继续设置必要信息,如下所示:
    • 如果组内实例配置信息来源启动模板,继续选择已创建的实例启动模板和实例启动模板版本。
    • 如果组内实例配置信息来源选择已有实例,选择已创建的ECS实例。
    标签 专有网络、经典网络 添加标签便于搜索和聚合伸缩组,更多标签介绍请参见标签概述
    说明 此处的标签适用于伸缩组,如果您需要为伸缩组内ECS实例添加标签,请在伸缩配置或启动模板中设置。
    实例移出策略 专有网络、经典网络 当需要从伸缩组移出ECS实例并且有多种选择时,按该策略选择需要移出的ECS实例。如果按策略筛选后仍有多台ECS实例满足要求,则随机移出一台。
    支持两段设置先筛选再从结果中移出,但不支持为这两段设置相同的选项。各选项的含义如下所示:
    • 最早伸缩配置对应的实例:筛选添加时间最早的伸缩配置和启动模板对应的实例。手动添加的实例没有关联伸缩配置或启动模板,因此不会首先选出手动添加的实例。如果已移出全部关联的实例,仍需要继续移出实例,则随机移出手动添加的实例。
      说明 最早伸缩配置对应的实例中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。

      启动模板的版本号低不代表添加时间早,例如在创建伸缩组时选择实例启动模板lt-foress的版本2,然后修改伸缩组,选择实例启动模板lt-foress的版本1,则对伸缩组来说,启动模板lt-foress的版本2是最早的。

    • 最早创建的实例:筛选创建时间最早的实例。
    • 最新创建的实例:筛选创建时间最新的实例。
    • 无策略:仅在设置再从结果中移出时可选,表示不进行第二段筛选。
    例如,如果第一段设置为先筛选最早伸缩配置对应的实例,则第二段设置仅支持以下选项:
    • 无策略:不进行第二段筛选。
    • 最早创建的实例:在第一段筛选出的实例中,再筛选创建时间最早的实例。
    • 最新创建的实例:在第一段筛选出的实例中,再筛选创建时间最新的实例。
    暂停的流程 专有网络、经典网络 方便您在执行某些操作前主动暂停指定的流程,例如暂停健康检查流程后再去停止ECS实例,避免ECS实例被视为不健康而自动移出伸缩组。支持暂停的流程如下:
    • 扩容流程:伸缩组拒绝所有扩容动作。
    • 缩容流程:伸缩组拒绝所有缩容动作。
    • 健康检查:暂停将实例标记为不健康状态,并暂停移出不健康的ECS实例。
    • 定时任务:到定时任务的执行时间后,不会触发关联的伸缩规则。
    • 报警任务:报警任务进入报警状态后,不会触发关联的伸缩规则。

    更多说明,请参见暂停伸缩组流程恢复伸缩组流程

    开启伸缩组保护 专有网络、经典网络 开启伸缩组保护后,您不能在控制台或者通过API删除该伸缩组,有效避免误删除伸缩组。
    实例的健康检查 专有网络、经典网络 开启健康检查后,伸缩组会定期检查ECS实例的运行状态,如果发现一台ECS实例未处于运行中状态,则判定为不健康并移出该ECS实例。更多说明,请参见伸缩组内ECS实例的生命周期
    组内最小实例数 专有网络、经典网络 当前ECS实例数量低于下限时,伸缩组会自动添加ECS实例,使得伸缩组内的ECS实例数量等于下限。
    组内最大实例数 专有网络、经典网络 当前ECS实例数量超过上限时,伸缩组会自动移出ECS实例,使得伸缩组内的ECS实例数量等于上限。
    组内期望实例数 专有网络、经典网络 填写组内期望实例数即可开启期望实例数功能,伸缩组会自动将ECS实例数量维持在期望实例数,更多说明请参见期望实例数
    说明 只能在新建伸缩组时开启期望实例数功能,不支持通过修改已有伸缩组开启该功能。
    默认冷却时间(秒) 专有网络、经典网络 单位为秒,伸缩组发生伸缩活动后的默认冷却时间。在冷却时间内,伸缩组会拒绝由云监控报警任务触发的伸缩活动请求,其他类型任务触发的伸缩活动可以绕过冷却时间立即执行,例如手动执行任务、定时任务。
    网络类型 专有网络、经典网络 仅专有网络伸缩组支持多可用区扩容策略实例回收模式等属性,且不同网络类型的伸缩组支持添加的实例不同。
    • 专有网络
      • 创建伸缩配置时,只能选择支持专有网络的实例规格。
      • 手动添加已有ECS实例时,只能选择同一专有网络中的实例。
    • 经典网络
      • 创建伸缩配置时,只能选择支持经典网络的实例规格。
      • 手动添加已有ECS实例时,只能选择经典网络实例。
    说明 伸缩组创建完成后,不支持修改网络类型。
    多可用区扩容策略 专有网络 专有网络伸缩组支持以下扩容策略:
    • 优先级策略:先选择的交换机优先级高。当伸缩组无法在优先级较高的交换机所在可用区创建ECS实例时,会自动使用下一优先级的交换机创建ECS实例。
    • 均衡分布策略:在伸缩组关联多个交换机且交换机分布在两个以上可用区时生效,支持在交换机所在的可用区之间均衡分布ECS实例。如果由于库存不足等原因导致可用区之间ECS实例的数量不均衡,您可以执行再均衡分布操作来平衡ECS实例的分布情况,具体操作请参见ECS实例再均衡分布
    • 成本优化策略:在伸缩配置中指定了多个可选实例规格时生效,按vCPU单价从低到高尝试创建ECS实例。如果伸缩配置中计费方式选择抢占式实例,优先创建抢占式实例。由于库存等原因无法创建各实例规格的抢占式实例时,再自动尝试创建按量付费实例。

    如果您选择成本优化策略,还可以设置以下属性:

    • 组内最小按量实例数:伸缩组所需按量付费ECS实例的最小台数,默认为0台。如果伸缩组内的按量付费ECS实例的台数小于该值,将优先创建按量付费实例。
    • 按量实例所占比例:自动创建ECS实例时按量付费实例所占的比例,默认为70%。计算该值时,不包括组内最小按量实例数对应的台数。
    • 最低价的多个实例规格:价格最低的实例规格的个数,默认为1个。在伸缩配置中指定了多个可选实例规格时生效。创建抢占式实例时,伸缩组会在价格最低的几个实例规格之间均衡创建ECS实例。
    • 开启抢占式实例补偿:开启抢占式实例补偿后,在抢占式实例被回收前5分钟,伸缩组会主动创建新的抢占式实例,并替换掉将被回收的抢占式实例。
    实例回收模式 专有网络 专有网络伸缩组支持以下回收模式:
    • 释放模式:在弹性收缩时自动释放合适数量的ECS实例,在弹性扩张时创建新的ECS实例加入伸缩组。
    • 停机回收模式:使用停机回收模式可以提高扩缩容的效率。
      • 在弹性收缩时,自动创建的ECS实例将进入停机不收费状态。ECS实例处于停机不收费状态时,vCPU、内存和固定公网IP被回收,因此vCPU、内存和固定公网带宽不再收费,但是云盘、弹性公网IP等资源仍然保留并收费。这些处于停机不收费状态ECS实例形成了停机实例池。
        说明 如果ECS实例进入停机不收费状态前有固定公网IP,重新启动时会重新分配一个固定公网IP,但可能发生变化。
      • 在弹性扩张时,停机实例池内的ECS实例会优先进入运行中状态,在停机实例池内ECS实例数量不足以满足需求时,会继续自动创建新的ECS实例。但停机实例池内ECS实例不能保证成功进入运行中状态。如果由于库存等原因,处于停机不收费状态的ECS实例不能进入运行中状态,伸缩组会释放这些ECS实例并创建新的ECS实例,保证弹性扩张的结果达到预期。
    警告 请确保账号可用额度充足。如果账号欠费,所有后付费的ECS实例(包括按量付费实例和抢占式实例)都会停机,甚至被释放。欠费后伸缩组内ECS实例状态变化,请参见欠费说明
    专有网络 专有网络 选择已创建的专有网络。
    选择交换机 专有网络 选择专有网络后必须选择交换机。一个交换机只能属于一个可用区,您可以指定多个属于不同可用区的交换机,从而达到多可用区的效果。多可用区可以规避单可用区库存不足的风险,提高扩容成功率。
    添加已有实例 专有网络、经典网络 如果组内实例配置信息来源启动模板选择已有实例,您可以在创建伸缩组的同时添加已创建的ECS实例。

    如果同时设置期望实例数并添加已有实例,期望实例数会自动增加。例如,创建伸缩组时设置期望实例数为1,并添加2台已有实例,伸缩组创建完成后,2台已有实例添加至伸缩组,然后期望实例数变为3。

    您可以将已有实例的生命周期托管给伸缩组,选择将实例的生命周期托管给伸缩组复选框即可。
    • 如果托管给伸缩组,添加的已有实例因处于不健康状态等原因被自动移出伸缩组,或者被手动移出伸缩组时,会被自动释放。
    • 如果未托管给伸缩组,添加的已有实例移出伸缩组时,不会被自动释放。
    说明 支持将包年包月实例添加至伸缩组,但不支持托管包年包月实例。
    关联负载均衡 专有网络、经典网络 关联负载均衡实例后,加入伸缩组的ECS实例会自动添加为负载均衡实例的后端服务器。您可以指定ECS实例需要加入的服务器组,支持以下两种服务器组:
    • 默认服务器组:用来接收前端请求的ECS实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的ECS实例。
    • 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。
    说明 如果您同时指定了默认服务器组和多个虚拟服务器组,ECS实例会同时添加至这些服务器组中。

    一个伸缩组支持关联的负载均衡实例和虚拟服务器组数量有限,更多信息请参见使用限制

    关联RDS数据库实例 专有网络、经典网络 关联RDS数据库实例后,加入伸缩组的ECS实例的内网IP会自动加入RDS数据库实例的访问白名单,允许ECS实例和RDS数据库实例内网通信。

    一个伸缩组支持关联的RDS数据库实例数量有限,更多信息请参见使用限制

  6. 创建伸缩组对话框,单击关闭
    新创建的伸缩组出现在伸缩组列表中,但伸缩组处于启用状态时才可以将ECS实例添加至伸缩组,具体操作请参见启用伸缩组
    说明 如果组内实例配置信息来源从零开始创建,您需要先创建伸缩配置或指定启动模板才能启用伸缩组,具体操作请参见创建伸缩配置