伸缩组是具有相同应用场景的ECS实例集合。您可以通过伸缩组定义可容纳ECS实例数量的边界值、弹性扩张时使用的ECS实例模板、弹性收缩时移出ECS实例的策略等属性,让伸缩组按照您的需求维护一组ECS实例。
前提条件
- 如果是首次使用弹性伸缩,您需要参照界面提示开通弹性伸缩权限。
- 如果选择实例启动模板作为自动创建ECS实例的模板,您需要提前创建好实例启动模板。具体操作,请参见创建实例启动模板。
- 如果需要为伸缩组关联传统型负载均衡CLB(原SLB)实例,请确保满足以下条件:
- 如果需要为伸缩组关联应用型负载均衡ALB服务器组,请确保满足以下条件:
- 伸缩组的网络类型必须为VPC,且与ALB服务器组处于同一VPC。
- ALB服务器组必须处于可用状态。
- 如果需要为伸缩组关联RDS实例,请确保满足以下条件:
- 您持有一个或多个处于运行中状态的RDS实例。更多信息,请参见什么是云数据库RDS。
- RDS实例和伸缩组必须位于同一地域。
背景信息
您在同一地域下拥有的伸缩组数量有限。如需查看或手动申请提升配额值,请前往配额中心。
操作步骤
- 登录弹性伸缩控制台。
- 在左侧导航栏中,单击伸缩组管理。
- 在顶部菜单栏处,选择地域。
- 在页面左上角,单击创建伸缩组。
- 完成伸缩组配置,然后单击确认。
伸缩组属性说明如下表所示。
伸缩组属性 属性适用的伸缩组网络类型 说明 伸缩组名称 专有网络、经典网络 2~64个字符,以大小写字母、数字或中文开头,可包含英文句号(.)、下划线(_)和短划线(-)。 组内实例配置信息来源 专有网络、经典网络 伸缩组支持以下来源类型: - 启动模板:扩容时使用实例启动模板中的实例配置信息。
- 选择已有实例:提取已有ECS实例的配置信息创建一个默认伸缩配置,作为自动创建ECS实例的模板,提取的配置信息包括实例的实例规格、基础镜像、网络类型、安全组等。
- 从零开始创建:不指定自动创建ECS实例的模板,伸缩组创建完成后进入停用状态。您需要继续创建伸缩配置或指定启动模板作为自动创建ECS实例的模板,然后才能启用伸缩组。
说明 从 ECS控制台入口基于ECS实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。您必须根据来源类型继续设置必要信息,如下所示:- 如果组内实例配置信息来源为启动模板,您需要选择已创建的实例启动模板和实例启动模板版本。您还可以通过扩展启动模板配置选择多个实例规格,并为不同的实例规格指定权重。权重的具体内容,请参见使用性能指标作为弹性伸缩的度量单位。
- 如果组内实例配置信息来源为选择已有实例,选择已创建的ECS实例。
标签 专有网络、经典网络 添加标签便于搜索和聚合伸缩组,更多标签介绍请参见标签概述。 说明 此处的标签适用于伸缩组,如果您需要为伸缩组内ECS实例添加标签,请在伸缩配置或启动模板中设置。实例移出策略 专有网络、经典网络 当需要从伸缩组移出ECS实例并且有多种选择时,按该策略选择需要移出的ECS实例。如果按策略筛选后仍有多台ECS实例满足要求,则随机移出一台。 支持两段设置 先筛选和 再从结果中移出,但不支持为这两段设置相同的选项。各选项的含义如下所示:- 最早伸缩配置对应的实例:筛选添加时间最早的伸缩配置和启动模板对应的实例。手动添加的实例没有关联伸缩配置或启动模板,因此不会首先选出手动添加的实例。如果已移出全部关联的实例,仍需要继续移出实例,则随机移出手动添加的实例。
说明 最早伸缩配置对应的实例中提到的伸缩配置泛指组内实例配置信息来源,包括伸缩配置和启动模板。
启动模板的版本号低不代表添加时间早,例如在创建伸缩组时选择实例启动模板lt-foress的版本2,然后修改伸缩组,选择实例启动模板lt-foress的版本1,则对伸缩组来说,启动模板lt-foress的版本2是最早的。
- 最早创建的实例:筛选创建时间最早的实例。
- 最新创建的实例:筛选创建时间最新的实例。
- 无策略:仅在设置再从结果中移出时可选,表示不进行第二段筛选。
例如,如果第一段设置为先筛选 最早伸缩配置对应的实例,则第二段设置仅支持以下选项:- 无策略:不进行第二段筛选。
- 最早创建的实例:在第一段筛选出的实例中,再筛选创建时间最早的实例。
- 最新创建的实例:在第一段筛选出的实例中,再筛选创建时间最新的实例。
说明 伸缩组移出ECS实例还受伸缩组的 扩缩容策略影响。更多信息,请参见 设置移出实例的组合策略。暂停的流程 专有网络、经典网络 方便您在执行某些操作前主动暂停指定的流程,例如暂停健康检查流程后再去停止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实例,缩容时按vCPU单价从高到低尝试移出ECS实例。如果伸缩配置中计费方式选择抢占式实例,优先创建抢占式实例。由于库存等原因无法创建各实例规格的抢占式实例时,再自动尝试创建按量付费实例。
如果您选择成本优化策略,还可以设置以下属性:
- 组内最小按量实例数:伸缩组所需按量付费ECS实例的最小台数,默认为0台。如果伸缩组内的按量付费ECS实例的台数小于该值,将优先创建按量付费实例。
- 按量实例所占比例:自动创建ECS实例时按量付费实例所占的比例,默认为70%。计算该值时,不包括组内最小按量实例数对应的台数。
- 最低价的多个实例规格:价格最低的实例规格的个数,默认为1个。在伸缩配置中指定了多个可选实例规格时生效。创建抢占式实例时,伸缩组会在价格最低的几个实例规格之间均衡创建ECS实例。
- 开启抢占式实例补偿:开启抢占式实例补偿后,在抢占式实例被回收前5分钟,伸缩组会主动创建新的抢占式实例,并替换掉将被回收的抢占式实例。
实例回收模式 专有网络 在弹性收缩时,针对移出的ECS实例,专有网络伸缩组支持以下回收模式: - 释放模式:移出的ECS实例被释放,无资源被保留。在弹性扩张时,弹性伸缩创建新的ECS实例加入伸缩组。
- 停机回收模式:移出的ECS实例被停用,并触发节省停机效果,部分资源被保留并计费。在弹性扩张时,弹性伸缩优先将停用的ECS实例加入伸缩组,再根据扩张数量决定是否创建新的ECS实例加入伸缩组。该模式可以提高扩缩容的效率。
注意
- 请不要在ECS实例中保留应用数据、日志等,避免实例回收后数据丢失的风险。
- 停用的ECS实例可能会被释放:
- 如果您手动减少伸缩组的最大实例数,使现最大实例数比伸缩组内各状态(包括停用中)的ECS实例总数小,弹性伸缩优先释放停用的ECS实例。
- 因为库存不足或者账号欠费等原因,停用的ECS实例在加入伸缩组时可能会失败,失败后该ECS实例会被释放。
- 停机回收模式的作用受按量付费实例节省停机模式的影响,更多信息,请参见按量付费实例节省停机模式的“启用条件”、“适用资源”和“触发效果”部分。
专有网络 专有网络 选择已创建的专有网络。 说明 从 ECS控制台入口基于ECS实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。选择交换机 专有网络 选择专有网络后必须选择交换机。一个交换机只能属于一个可用区,您可以指定多个属于不同可用区的交换机,从而达到多可用区的效果。多可用区可以规避单可用区库存不足的风险,提高扩容成功率。 说明 从 ECS控制台入口基于ECS实例创建伸缩组时,弹性伸缩自动填入组内实例配置信息来源、网络类型相关的信息,请保持默认,无需修改。添加已有实例 专有网络、经典网络 如果组内实例配置信息来源为启动模板或选择已有实例,您可以在创建伸缩组的同时添加已创建的ECS实例。 如果同时设置期望实例数并添加已有实例,期望实例数会自动增加。例如,创建伸缩组时设置期望实例数为1,并添加2台已有实例,伸缩组创建完成后,2台已有实例添加至伸缩组,然后期望实例数变为3。
您可以将已有实例的生命周期托管给伸缩组,选择 将实例的生命周期托管给伸缩组复选框即可。- 如果托管给伸缩组,添加的已有实例因处于不健康状态等原因被自动移出伸缩组,或者被手动移出伸缩组时,会被自动释放。
- 如果未托管给伸缩组,添加的已有实例移出伸缩组时,不会被自动释放。
说明 支持将包年包月实例添加至伸缩组,但不支持托管包年包月实例。关联传统型负载均衡CLB(原SLB) 专有网络、经典网络 伸缩组关联CLB实例后,加入伸缩组的ECS实例会自动添加为CLB实例的后端服务器,处理来自CLB实例转发的访问请求。 您可以指定ECS实例需要加入的服务器组,支持以下两种服务器组:
- 默认服务器组:用来接收前端请求的ECS实例,如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的ECS实例。
- 虚拟服务器组:当您需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。
如果您同时指定了默认服务器组和多个虚拟服务器组,ECS实例会同时添加至这些服务器组中。
说明 一个伸缩组支持关联的CLB实例和虚拟服务器组数量有限。如需查看或手动申请提升配额值,请前往 配额中心。关联应用型负载均衡ALB服务器组 专有网络 伸缩组关联ALB服务器组后,加入伸缩组的ECS实例会自动添加为ALB服务器组的后端服务器,处理ALB实例分发的访问请求。您还需指定后端服务器的端口和权重,权重默认为50。权重越高,ECS实例将被分配到越多的访问请求。如果权重为0,则ECS实例不会收到访问请求。 如果您为伸缩组关联了多个ALB服务器组,加入伸缩组的ECS实例会同时添加至这些服务器组中。
说明 一个伸缩组支持关联的ALB服务器组数量有限。如需查看或手动申请提升配额值,请前往 配额中心。关联RDS数据库实例 专有网络、经典网络 伸缩组关联RDS数据库实例后,加入伸缩组的ECS实例的内网IP会自动加入RDS数据库实例的访问白名单,允许ECS实例和RDS数据库实例内网通信。 说明 一个伸缩组支持关联的RDS数据库实例数量有限。如需查看或手动申请提升配额值,请前往 配额中心。设置消息接收通知 专有网络、经典网络 在伸缩活动成功、失败或者被拒绝时,弹性伸缩支持通过短信、站内信和邮件发送消息通知。更多信息,请参见设置消息接收通知。 - 在创建伸缩组对话框,单击关闭。