实例配置来源是伸缩组扩容ECS实例或ECI实例时使用的实例配置模板。自动扩容时,伸缩组根据实例配置来源创建ECS实例或ECI实例,并将创建的实例添加到伸缩组。
实例配置来源的种类
实例配置来源包括实例启动模板和伸缩配置两种。其中,实例启动模板只适用于伸缩组类型为ECS的伸缩组。
伸缩组内只能有一项生效的实例配置来源。例如,选用一条新的伸缩配置后,当前生效的启动模板或伸缩配置会失效。
实例配置来源种类 | 适用的伸缩组类型 | 描述 |
---|---|---|
启动模板 | ECS | 实例启动模板是云服务器ECS的一项功能。如果希望使用实例启动模板,您需要先在云服务器管理控制台或者通过API创建实例启动模板。更多信息,请参见实例启动模板概述或者CreateLaunchTemplate。 |
伸缩配置 | ECS、ECI | 在弹性伸缩控制台,为伸缩组创建的实例模板。支持两种创建伸缩配置的方式:
|
实例配置来源的操作
实例配置来源常见的操作如下表所示。
阶段 | 场景 | 操作 | 相关文档 |
---|---|---|---|
创建伸缩组时 | 在扩容ECS实例或ECI实例时,希望使用的配置信息与现有某台实例在创建时使用的一致。 | 选择已有实例作为组内实例配置信息来源选项。伸缩组创建完成后会沿用该实例的部分参数,自动创建一条伸缩配置,并自动进入启用状态。
说明 伸缩配置(ECS)的镜像来源于该ECS实例的创建时使用的镜像,而不是基于该ECS实例生成新的镜像。如果ECS实例中镜像ID对应的镜像不存在,则无法使用该ECS实例作为模板。
|
|
希望使用现有的一个ECS实例启动模板作为模板扩容。 | 选择该实例的启动模板作为组内实例配置信息来源选项。伸缩组创建完成后自动进入启用状态。 | 创建伸缩组 | |
没有需要沿用的实例配置。 | 不设置组内实例配置信息来源(即选择从零开始创建)。伸缩组创建完成后进入停用状态。 | 创建伸缩组 | |
创建伸缩组后 | 伸缩组没有组内实例配置信息来源。 | 手动创建伸缩配置,或者修改伸缩组并选择实例启动模板。再启用伸缩组。 | |
需要使用其它伸缩配置。 | 创建并选用新的伸缩配置,或选用已有的伸缩配置。 | ||
需要使用其它ECS实例启动模板或实例启动模板版本。 | 修改伸缩组,选择其它ECS实例启动模板或ECS实例启动模板版本。 | 修改伸缩组 | |
需要手动或者自动更新伸缩配置中的镜像。 |
根据业务应用场景的不同,选择不同操作来更新伸缩配置中的镜像。 如果您需要频繁发布应用,建议使用自动方式更新伸缩配置中的镜像。除此之外的场景您可以选择手动方式更新伸缩配置中的镜像。 |
不同伸缩组的实例配置来源对比
当伸缩组类型为ECS时,您可以参考下表来选择适合的组内实例配置来源。
对比项 | 伸缩配置 | 实例启动模板 |
---|---|---|
参数校验 | 支持参数校验。缺少镜像等必须参数时无法创建伸缩配置,因此不会由于缺少必须参数导致创建ECS实例时失败。 | 实例启动模板不校验参数,所有参数都是可选的。如果指定模板中未包含镜像等必须参数,会导致使用该模板创建ECS实例时失败。 |
配置顺序 | 在创建伸缩组时选择已有实例供自动创建伸缩配置,或者在创建伸缩组后手动创建伸缩配置。 | 先在云服务器管理控制台或者通过API创建实例启动模板,然后在弹性伸缩控制台为伸缩组选择该启动模板作为组内实例配置信息来源选项。 |
演进方式 | 您可以针对不同需求创建多个伸缩配置。但对单个伸缩配置,您只能手动修改,且修改不可追溯。
说明 一个伸缩组内可创建的伸缩配置存在数量限制,请参见使用限制。
|
不支持修改,但可以创建并选择新的版本,通过版本管理体现演进过程。 |
多实例规格 | 支持选择多个实例规格。适用于只关注配置,而不限定于某一种特定规格的情况,扩容的成功率更高。
说明 一个伸缩配置内可选的实例规格存在数量限制,请参见使用限制。
|
初始的实例启动模板不支持,但您可以在弹性伸缩控制台修改启动模板,并使用扩展启动模板配置来选择多实例规格。 |
除伸缩配置级别的多实例规格外,在伸缩组级别,专有网络伸缩组还支持多可用区,有效规避单可用区库存不足的风险,提高扩容成功率。更多信息,请参见创建伸缩组。
参数设置对比
您可以在创建伸缩组时使用已有实例或启动模板作为组内实例配置信息来源,也可以在创建伸缩组后手动创建伸缩配置作为组内实例配置信息来源。三种方式支持设置的参数不同,如下表所示。
手动创建伸缩配置 | 基于已有实例创建伸缩组 | 基于启动模板创建伸缩组 |
---|---|---|
手动创建伸缩配置时,支持以下参数。具体参数含义,请参见CreateScalingConfiguration。
|
伸缩组支持沿用已有实例的部分参数,并自动创建一条伸缩配置。
说明 ECS实例支持的全部参数,请参见RunInstances。
|
伸缩组支持沿用实例启动模板的部分参数。
说明 实例启动模板支持的全部参数,请参见CreateLaunchTemplateVersion。
|