本文以通过弹性供应组创建多台ECS实例用于机器学习或搭建购票网站、使用成本最低的多个资源池或优先使用指定的资源池创建多台ECS实例为例,为您介绍弹性供应组的相关配置。
通过控制台配置示例
示例一:机器学习
假设您计划在未来一周完成一项机器学习任务,用于分析住房抵押贷款的风险因素,对实例集群的需求如下:
- 目标地域:华东1(杭州)。 
- 实例配备NVIDIA V100 GPU计算卡,单实例的GPU显存不大于32 GB。 
- 目标容量:20台实例。 
- 尽量节省成本,只使用抢占式实例,可以接受集群规模不达标。 
- 任务结束后释放实例。 
考虑以上需求,弹性伸缩组的设置示例如下表所示。
| 配置区域 | 配置参数 | 示例说明 | 
| 容量配置 | 目标容量 | 由于目标容量为20台实例,且仅使用抢占式实例,设置如下: 
 | 
| 实例配置 | 实例配置 | 由于要求实例配备NVIDIA V100 GPU计算卡,单机GPU显存不大于32 GB: 
 根据可用区和实例规格情况,即可增加实例配置: 
 增加实例配置后,形成以下资源池: 
 | 
| 供应策略 | 选择成本最优策略。弹性供应组启动后,会使用成本最低的资源池交付实例集群。 | |
| 抢占式实例打断设置 | 由于需要尽量节省成本,可以接受集群不达标,因此选择直接释放。 | |
| 高级选项 | 供应组类型 | 由于需要尽量节省成本,可以接受集群不达标,因此选择一次性交付。 | 
| 启动时间、结束时间 | 按照计划的未来一周设置启动时间和结束时间。 | |
| 全局抢占式实例的价格上限 | 由于需要尽量节省成本,您可以选择设置价格,自行设置可接受的价格。 | |
| 组内实例关停设置 | 
 | 
示例二:购票网站
假设您需要搭建一个购票网站,提供覆盖日常和高峰时段的购票服务,对实例集群的需求如下:
- 目标地域:华东1(杭州)。 
- 单实例vCPU个数不大于8。 
- 目标容量:80 vCPU。 
- 最低容量:60 vCPU。 
- 在集群的最低容量基础上优化网站访问体验,尽量节省成本。 
- 具有容灾能力。 
考虑以上需求,弹性伸缩组的设置示例如下表所示。
| 配置区域 | 配置参数 | 示例说明 | 
| 容量配置 | 目标容量 | 由于目标容量为80 vCPU,最低容量为60,设置如下: 
 | 
| 按量实例容量 | 容量设置为60,使用按量实例容量满足最低容量需求。 | |
| 实例配置 | 实例配置 | 实例规格族考虑适合搭建Web前端服务器的c6,由于要求单实例vCPU个数不大于8: 
 根据可用区和实例规格情况,即可增加实例配置: 
 增加实例配置后,形成以下资源池: 
 | 
| 供应策略 | 选择多可用区均衡策略。弹性供应组启动后,尝试在多个可用区中均衡地创建实例,规避单可用区库存不足导致实例创建失败,可以有效提高应用容灾能力。 | |
| 实例配置 | 抢占式实例打断设置 | 由于需要保证网站访问体验,从停机不收费状态恢复实例比新创建实例更快,因此选择停机不收费。 | 
| 高级选项 | 供应组类型 | 由于需要持续提供购票服务,因此选择持续保持。 | 
| 启动时间、结束时间 | 由于需要持续提供购票服务,指定弹性供应组立即启动并无限期保留。 | |
| 全局抢占式实例的价格上限 | 由于需要优化网站访问体验,所以需要保证集群内实例数量稳定,因此选择自动出价。 | |
| 组内实例关停设置 | 由于需要尽量节省成本,选中超过容量时关停供应组内实例。 | 
由于目标容量单位为vCPU个数,每台实例的权重和实例规格的vCPU个数有关,因此各实例规格还有对应的权重单价,示例如下表所示。
表中价格仅为示例,请以售卖页中的实时价格为准。
| 实例规格 | vCPU | 按量价格(元) | 权重 | 权重单价(元) | 
| ecs.c6.large | 2 | 0.39/时 | 2 | 0.195/时 | 
| ecs.c6.xlarge | 4 | 0.78/时 | 4 | 0.195/时 | 
| ecs.c6.2xlarge | 8 | 1.56/时 | 8 | 0.195/时 | 
弹性供应组在交付实例集群时,首先尝试满足多可用区均衡策略,在多个可用区中均衡地创建实例。同时尽量使用权重单价较低的方案,如果各实例规格的权重单价相同,则随机选择一种方案。
通过调用API配置示例
示例一:使用成本最低的多个资源池
如果您希望尽量降低成本,并降低单个资源池对应的抢占式实例被回收的影响,可以设置弹性供应组同时使用多个成本最低的资源池创建实例。
仅支持通过调用API CreateAutoProvisioningGroup接口完成该设置,请保证SpotAllocationStrategy取值为lowest-price,并设置SpotInstancePoolsToUseCount。例如,下表参数的效果为:
- 根据实例启动模板lt-bp1ivgo4p5now3px****扩展出5个资源池。 
- 目标容量为30台实例,全部为抢占式实例。 
- 创建抢占式实例时,使用成本最低的3个资源池,每个资源池各创建10台实例。 
| 参数 | 示例值 | 说明 | 
| TotalTargetCapacity | 30 | 目标容量30台实例。 | 
| SpotTargetCapacity | 30 | 抢占式实例容量30台实例。 | 
| PayAsYouGoTargetCapacity | 0 | 按量付费实例容量0台实例。 | 
| SpotAllocationStrategy | lowest-price | 抢占式实例采用成本优化策略。 | 
| PayAsYouGoAllocationStrategy | lowest-price | 按量付费实例采用成本优化策略。 | 
| SpotInstancePoolsToUseCount | 3 | 使用成本最低的3个资源池。 | 
| LaunchTemplateId | lt-bp1ivgo4p5now3px**** | 作为配置来源的实例启动模板的ID。 | 
| LaunchTemplateConfig.1.VSwitchId | vsw-bp1ygryo03m39xhsy**** | 扩展启动模板1(即资源池1)的交换机。 | 
| LaunchTemplateConfig.1.InstanceType | ecs.c6e.large | 扩展启动模板1(即资源池1)的实例规格。 | 
| LaunchTemplateConfig.1.WeightedCapacity | 1 | 扩展启动模板1(即资源池1)的实例规格权重。 | 
| LaunchTemplateConfig.2.VSwitchId | vsw-bp16hgf8f3kvtcbyu**** | 扩展启动模板2(即资源池2)的交换机。 | 
| LaunchTemplateConfig.2.InstanceType | ecs.c6e.xlarge | 扩展启动模板2(即资源池2)的实例规格。 | 
| LaunchTemplateConfig.2.WeightedCapacity | 1 | 扩展启动模板2(即资源池2)的实例规格权重。 | 
| LaunchTemplateConfig.3.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板3(即资源池3)的交换机。 | 
| LaunchTemplateConfig.3.InstanceType | ecs.c6e.2xlarge | 扩展启动模板3(即资源池3)的实例规格。 | 
| LaunchTemplateConfig.3.WeightedCapacity | 1 | 扩展启动模板3(即资源池3)的实例规格权重。 | 
| LaunchTemplateConfig.4.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板4(即资源池4)的交换机。 | 
| LaunchTemplateConfig.4.InstanceType | ecs.g6e.xlarge | 扩展启动模板4(即资源池4)的实例规格。 | 
| LaunchTemplateConfig.4.WeightedCapacity | 1 | 扩展启动模板4(即资源池4)的实例规格权重。 | 
| LaunchTemplateConfig.5.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板5(即资源池5)的交换机。 | 
| LaunchTemplateConfig.5.InstanceType | ecs.g6e.2xlarge | 扩展启动模板5(即资源池5)的实例规格。 | 
| LaunchTemplateConfig.5.WeightedCapacity | 1 | 扩展启动模板5(即资源池5)的实例规格权重。 | 
示例二:优先使用指定的资源池
当您希望优先使用指定资源池创建实例时,例如使用ecs.c6e.large的预留实例券,可以设置弹性供应组优先选择该规格,以享受折扣。
仅支持通过调用API CreateAutoProvisioningGroup接口完成该设置,请保证PayAsYouGoAllocationStrategy取值为prioritized,并将对应资源池的优先级设置为最高(即0)。例如,下表参数的效果为:
- 根据实例启动模板lt-bp1ivgo4p5now3px****扩展出5个资源池。 
- 目标容量为20台实例,包括10台抢占式实例和10台按量付费实例。 
- 创建按量付费实例时,优先使用ecs.c6e.large规格对应的资源池(即LaunchTemplateConfig.1)。 
| 参数 | 示例值 | 说明 | 
| TotalTargetCapacity | 20 | 目标容量20台实例。 | 
| SpotTargetCapacity | 10 | 抢占式实例容量10台实例。 | 
| PayAsYouGoTargetCapacity | 10 | 按量付费实例容量10台实例。 | 
| SpotAllocationStrategy | lowest-price | 抢占式实例采用成本优化策略。 | 
| PayAsYouGoAllocationStrategy | prioritized | 按量付费实例采用成本优化策略。 | 
| LaunchTemplateId | lt-bp1ivgo4p5now3px**** | 作为配置来源的实例启动模板的ID。 | 
| LaunchTemplateConfig.1.VSwitchId | vsw-bp1ygryo03m39xhsy**** | 扩展启动模板1(即资源池1)的交换机。 | 
| LaunchTemplateConfig.1.InstanceType | ecs.c6e.large | 扩展启动模板1(即资源池1)的实例规格。 | 
| LaunchTemplateConfig.1.WeightedCapacity | 1 | 扩展启动模板1(即资源池1)的实例规格权重。 | 
| LaunchTemplateConfig.1.Priority | 0 | 扩展启动模板1(即资源池1)的优先级,0为最高。 | 
| LaunchTemplateConfig.2.VSwitchId | vsw-bp16hgf8f3kvtcbyu**** | 扩展启动模板2(即资源池2)的交换机。 | 
| LaunchTemplateConfig.2.InstanceType | ecs.c6e.xlarge | 扩展启动模板2(即资源池2)的实例规格。 | 
| LaunchTemplateConfig.2.WeightedCapacity | 1 | 扩展启动模板2(即资源池2)的实例规格权重。 | 
| LaunchTemplateConfig.3.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板3(即资源池3)的交换机。 | 
| LaunchTemplateConfig.3.InstanceType | ecs.c6e.2xlarge | 扩展启动模板3(即资源池3)的实例规格。 | 
| LaunchTemplateConfig.3.WeightedCapacity | 1 | 扩展启动模板3(即资源池3)的实例规格权重。 | 
| LaunchTemplateConfig.4.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板4(即资源池4)的交换机。 | 
| LaunchTemplateConfig.4.InstanceType | ecs.g6e.xlarge | 扩展启动模板4(即资源池4)的实例规格。 | 
| LaunchTemplateConfig.4.WeightedCapacity | 1 | 扩展启动模板4(即资源池4)的实例规格权重。 | 
| LaunchTemplateConfig.5.VSwitchId | vsw-bp1oeawdo9tj2gvjp**** | 扩展启动模板5(即资源池5)的交换机。 | 
| LaunchTemplateConfig.5.InstanceType | ecs.g6e.2xlarge | 扩展启动模板5(即资源池5)的实例规格。 | 
| LaunchTemplateConfig.5.WeightedCapacity | 1 | 扩展启动模板5(即资源池5)的实例规格权重。 |