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

前提条件

  • 如果是首次使用弹性伸缩,您需要参照界面提示开通弹性伸缩权限。具体操作,请参见管理弹性伸缩服务关联角色
  • 如果选择实例启动模板作为自动创建ECS实例的模板,您需要提前创建好实例启动模板。具体操作,请参见创建实例启动模板
  • 如果需要为伸缩组关联传统型负载均衡CLB(原SLB)实例,请确保满足以下条件:
    • 您持有一个或多个处于运行中状态的CLB实例。具体操作,请参见创建实例
    • CLB实例和伸缩组必须位于同一地域。
    • CLB实例至少配置一个监听。具体操作,请参见监听概述
    • CLB实例必须开启健康检查。具体操作,请参见配置健康检查
    • CLB实例和伸缩组的网络类型:
      • 如果CLB实例和伸缩组的网络类型均为专有网络,则必须是同一专有网络。
      • 如果CLB实例的网络类型为经典网络,但该CLB实例的后端服务器组中包含专有网络ECS实例,则该ECS实例必须与伸缩组位于同一专有网络。
        说明 除以上情况外,伸缩组在关联CLB实例时不限制彼此的网络类型。
  • 如果需要为伸缩组关联应用型负载均衡ALB服务器组,请确保满足以下条件:
    • 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。
    • ALB服务器组必须处于可用状态。
  • 如果需要为伸缩组关联RDS实例,请确保满足以下条件:
    • 您持有一个或多个处于运行中状态的RDS实例。更多信息,请参见什么是云数据库RDS
    • RDS实例和伸缩组必须位于同一地域。

背景信息

您在同一地域下拥有的伸缩组数量有限。如需查看或手动申请提升配额值,请前往配额中心

操作步骤

  1. 登录弹性伸缩控制台
  2. 在左侧导航栏中,单击伸缩组管理
  3. 在顶部菜单栏处,选择地域。
  4. 在页面左上角,单击创建伸缩组
  5. 完成伸缩组配置,然后单击确认
    伸缩组的配置说明如下表所示。
    配置项 说明
    伸缩组名称 2~64个字符,以大小写字母、数字或中文开头,可包含英文句号(.)、下划线(_)和短划线(-)。
    伸缩组类型 指定伸缩组内提供计算能力的实例的类型,弹性伸缩会根据该配置为伸缩组扩缩容对应的实例。
    • ECS:伸缩组内的实例都为ECS实例。
    • ECI:伸缩组内的实例都为ECI实例。
    组内实例配置信息来源 弹性伸缩使用该配置创建实例。伸缩组支持以下来源类型:
    • 启动模板:包含除了密码以外的任意配置信息,如密钥对、RAM角色、实例类型和网络设置等。仅伸缩组类型ECS时,支持配置该项。

      您需要选择已创建的实例启动模板和实例启动模板版本。为增加模板的灵活性,您还可以通过扩展启动模板配置选择多个实例规格。为实例规格指定权重,请参见使用性能指标作为弹性伸缩的度量单位

    • 选择已有实例:您需要选择已创建的实例,弹性伸缩会自动提取该实例的基础配置信息,创建一个默认伸缩配置。

      伸缩组类型ECS时,从ECS实例提取的伸缩配置包括该ECS实例的实例规格、网络类型、安全组、基础镜像等基础配置,不包括登录密码、标签。其中,基础镜像是已有实例使用的基础镜像,不包括该实例的数据信息,如应用程序。如果您想使伸缩配置包括该实例的所有系统配置和数据信息,请创建该实例的自定义镜像,并使用自定义该镜像更新伸缩配置的镜像。具体操作,请参见修改单个伸缩配置的镜像

    • 从零开始创建:先不指定自动创建实例的模板。等伸缩组创建完成后,再继续创建伸缩配置或指定启动模板。
    说明ECS控制台入口基于实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。
    标签 添加标签便于搜索和聚合伸缩组,更多信息,请参见标签概述
    说明 此处的标签适用于伸缩组,如果您需要为伸缩组内实例添加标签,请在伸缩配置或启动模板中设置。
    实例移出策略 当需要从伸缩组移出实例并且有多种选择时,按该策略选择需要移出的实例。如果按策略筛选后仍有多台实例满足要求,则随机移出一台。仅伸缩组类型ECS时,支持配置该项。
    该项支持两段设置先筛选再从结果中移出,但不支持为这两段设置相同的选项。各选项的含义如下:
    说明伸缩组类型ECI时,默认先筛选最早伸缩配置对应的实例,再从筛选结果中移出最早创建的实例。
    • 最早伸缩配置对应的实例:筛选添加时间最早的伸缩配置和启动模板对应的实例。手动添加的实例没有关联伸缩配置或启动模板,因此不会首先选出手动添加的实例。如果已移出全部关联的实例,仍需要继续移出实例,则随机移出手动添加的实例。
      说明 最早伸缩配置对应的实例中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。

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

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

    更多信息,请参见暂停伸缩组流程恢复伸缩组流程

    开启伸缩组保护 开启伸缩组保护后,您不能在控制台或者通过API删除该伸缩组,有效避免误删除伸缩组。
    实例的健康检查 开启健康检查后,伸缩组会定期检查实例的运行状态,如果发现一台实例未处于运行中状态,则判定为不健康并移出该实例。更多信息,请参见伸缩组内ECS实例的生命周期
    组内最小实例数 当前实例数量低于下限时,伸缩组会自动添加实例,使得伸缩组内的实例数量等于下限。
    组内最大实例数 当前实例数量超过上限时,伸缩组会自动移出实例,使得伸缩组内的实例数量等于上限。
    组内期望实例数 填写组内期望实例数即可开启期望实例数功能,伸缩组会自动将实例数量维持在期望实例数。更多信息,请参见期望实例数
    说明 只能在新建伸缩组时开启期望实例数功能,不支持通过修改已有伸缩组开启该功能。
    默认冷却时间(秒) 单位为秒,伸缩组发生伸缩活动后的默认冷却时间。在冷却时间内,伸缩组会拒绝由报警任务触发的伸缩活动请求,其他类型任务触发的伸缩活动可以绕过冷却时间立即执行,例如手动执行任务、定时任务。
    网络类型 仅专有网络伸缩组支持扩缩容策略实例回收模式关联应用型负载均衡ALB服务器组配置。
    说明ECS控制台入口基于实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。

    伸缩组的网络类型决定了伸缩组内实例的网络类型,即专有网络的伸缩组只能存在专有网络的实例,经典网络的伸缩组只能存在经典网络的实例。

    说明 伸缩组创建完成后,不支持修改网络类型。
    扩缩容策略 伸缩组类型ECS,且网络类型专有网络时,支持配置该项。具体策略如下:
    • 优先级策略:先选择的交换机优先级高。弹性伸缩优先在优先级最高的交换机所在可用区尝试扩缩容,如果无法扩缩容,则自动在下一优先级的交换机所在可用区进行扩缩容。
      说明伸缩组类型ECI时,默认扩缩容策略为优先级策略。
    • 均衡分布策略:在伸缩组关联多个交换机且交换机分布在两个以上可用区时生效,支持在交换机所在的可用区之间均衡分布ECS实例。如果由于库存不足等原因导致可用区之间ECS实例的数量不均衡,您可以执行再均衡分布操作来平衡ECS实例的分布情况。具体操作,请参见ECS实例再均衡分布
    • 成本优化策略:在伸缩配置中指定了多个可选实例规格时生效。扩容时弹性伸缩按vCPU单价从低到高尝试创建ECS实例,缩容时按vCPU单价从高到低尝试移出ECS实例。如果伸缩配置中计费方式选择抢占式实例,优先创建抢占式实例。由于库存等原因无法创建各实例规格的抢占式实例时,再自动尝试创建按量付费实例。

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

    • 组内最小按量实例数:伸缩组所需按量付费ECS实例的最小台数,默认为0台。如果伸缩组内的按量付费ECS实例的台数小于该值,将优先创建按量付费实例。
    • 按量实例所占比例:自动创建ECS实例时按量付费实例所占的比例,默认为70%。计算该值时,不包括组内最小按量实例数对应的台数。
    • 最低价的多个实例规格:价格最低的实例规格的个数,默认为1个。在伸缩配置中指定了多个可选实例规格时生效。创建抢占式实例时,伸缩组会在价格最低的几个实例规格之间均衡创建ECS实例。
    • 开启抢占式实例补偿:开启抢占式实例补偿后,在抢占式实例被回收前5分钟,伸缩组会主动创建新的抢占式实例,并替换掉将被回收的抢占式实例。
    实例回收模式 伸缩组类型ECS,且网络类型专有网络时,支持配置该项。具体回收模式如下:
    • 释放模式:移出的实例被释放,无资源被保留。在弹性扩张时,弹性伸缩创建新的实例加入伸缩组。
      说明伸缩组类型ECI时,默认回收模式为释放模式。
    • 停机回收模式:移出的ECS实例被停用,并触发节省停机效果,部分资源被保留并计费。在弹性扩张时,弹性伸缩优先将停用的ECS实例加入伸缩组,再根据扩张数量决定是否创建新的ECS实例加入伸缩组。该模式可以提高扩缩容的效率。
      注意
      • 请不要在实例中保留应用数据、日志等,避免实例回收后数据丢失的风险。
      • 停用的实例可能会被释放:
        • 如果您手动减少伸缩组的最大实例数,使现最大实例数比伸缩组内各状态(包括停用中)的实例总数小,弹性伸缩优先释放停用的ECS实例。
        • 因为库存不足或者账号欠费等原因,停用的实例在加入伸缩组时可能会失败,失败后该实例会被释放。
      • 停机回收模式的作用受按量付费实例节省停机模式的影响,更多信息,请参见按量付费实例节省停机模式的“启用条件”、“适用资源”和“触发效果”部分。
    专有网络 选择已创建的专有网络。
    说明ECS控制台入口基于实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。
    选择交换机 选择专有网络后必须选择交换机。一个交换机只能属于一个可用区,您可以指定多个属于不同可用区的交换机,从而达到多可用区的效果。多可用区可以规避单可用区库存不足的风险,提高扩容成功率。
    说明ECS控制台入口基于实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。
    添加已有实例 如果伸缩组类型ECS,且组内实例配置信息来源启动模板选择已有实例时,支持配置该项。

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

    您可以将已有实例的生命周期托管给伸缩组,选择将实例的生命周期托管给伸缩组复选框即可。
    • 如果托管给伸缩组,添加的已有实例因处于不健康状态等原因被自动移出伸缩组,或者被手动移出伸缩组时,会被自动释放。
    • 如果未托管给伸缩组,添加的已有实例移出伸缩组时,不会被自动释放。
    说明 支持将包年包月实例添加至伸缩组,但不支持托管包年包月实例。
    关联传统型负载均衡CLB(原SLB) 伸缩组关联CLB实例后,加入伸缩组的实例会自动添加为CLB实例的后端服务器,处理来自CLB实例转发的访问请求。

    您可以指定实例需要加入的服务器组,支持以下两种服务器组:

    • 默认服务器组:用来接收前端请求的实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的实例。
    • 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。

    如果您同时指定了默认服务器组和多个虚拟服务器组,实例会同时添加至这些服务器组中。

    说明 一个伸缩组支持关联的CLB实例和虚拟服务器组数量有限。如需查看或手动申请提升配额值,请前往配额中心
    关联应用型负载均衡ALB服务器组 网络类型专有网络时,支持配置该项。伸缩组关联ALB服务器组后,加入伸缩组的实例会自动添加为ALB服务器组的后端服务器,处理ALB实例分发的访问请求。您还需指定后端服务器的端口和权重,权重默认为50。权重越高,实例将被分配到越多的访问请求。如果权重为0,则实例不会收到访问请求。

    如果您为伸缩组关联了多个ALB服务器组,加入伸缩组的实例会同时添加至这些服务器组中。

    说明 一个伸缩组支持关联的ALB服务器组数量有限。如需查看或手动申请提升配额值,请前往配额中心
    关联RDS数据库实例 伸缩组类型ECS,支持配置该项。伸缩组关联RDS数据库实例后,加入伸缩组的ECS实例的内网IP会自动加入RDS数据库实例的访问白名单,允许ECS实例和RDS数据库实例内网通信。
    说明 一个伸缩组支持关联的RDS数据库实例数量有限。如需查看或手动申请提升配额值,请前往配额中心
    设置消息接收通知 在伸缩活动成功、失败或者被拒绝时,弹性伸缩支持通过短信、站内信和邮件发送消息通知。更多信息,请参见设置消息接收通知
  6. 创建伸缩组对话框,单击关闭
    新创建的伸缩组出现在伸缩组列表中,且伸缩组处于停用状态。

后续步骤

  1. 如果创建伸缩组时,配置组内实例配置信息来源从零开始创建,您需要创建并启用伸缩配置或指定启动模板。伸缩组类型不同 ,创建伸缩配置的具体操作不同:
  2. 启用伸缩组。具体操作,请参见启用伸缩组

    伸缩组处于启用状态时,才能实现弹性扩张和收缩。