在使用伸缩组后,您可以通过设置合适的伸缩策略提高资源利用率,从而降低成本,此时您还可以通过抢占式实例,以更低的价格使用ECS实例,从而进一步降低成本,本文为您介绍如何通过抢占式实例降低集群的成本。
仅ECS类型的伸缩组支持使用抢占式实例。
什么是抢占式实例?
抢占式实例是一种按需实例,性能与常规ECS实例无异,价格根据市场供需关系实时变化,相对于按量付费实例最高能节约90%的实例成本,抢占式实例的特性如下:
性能相同:在相同规格情况下,与按量计费实例除计费模式外无差别。
出价机制:您可以在创建抢占式实例时进行出价。阿里云会根据当前市场供需情况动态调整市场价格,如果您的出价低于市场价,实例会被回收。此外,支持使用自动出价,以按需计费的价格为上限,自动跟随市场价进行出价。
竞价机制:实例的价格根据市场供需关系实时变化,会将您的出价与市场价格进行对比,如果您的出价比市场价高且库存充足,可以创建出抢占式实例。
中断回收机制:抢占式实例存在中断回收机制,如果您的出价小于市场价或者库存不足,会中断实例并回收
保护期:您可以通过设定实例使用1小时,保护实例在创建后的一小时之内不被回收。
关于抢占式实例的更多信息,请参见什么是抢占式实例。
总结:在使用伸缩组时,可以使用单价更低的抢占式实例来降低成本。但需要牺牲一定的稳定性,即无法确保实例可以一直被使用或创建。
合理利用抢占式实例降低成本
使用较低单价的抢占式实例能够有效减少伸缩组内实例集群的成本。然而,由于其固有的不稳定性,您需要仔细评估这种变化对集群整体稳定性可能带来的影响。伸缩组的稳定性可以从两个关键方面来考量:
扩容稳定性:指在负载增加时,能够及时且可靠地启动新的实例以满足扩容需求。
引入抢占式实例时,可能会因为市场价格波动或库存不足导致实例无法自动被创建,影响扩容稳定性,但您可以通过设置一系列机制提升扩容稳定性。
实例稳定性:指保证已启动的实例能够持续稳定运行,不受非预期中断的影响。
引入抢占式实例意味着部分实例可能因市场价格波动或库存不足而被自动回收,这要求业务具备快速恢复的能力,并且能够在实例被中断后无缝切换到其他可用资源上。
在评估了引入抢占式实例可能带来的成本节约及其对集群稳定性的影响后,接下来的关键是找到一个平衡点,既能有效控制成本,又能确保服务的可靠性和性能。
设计平衡成本和稳定性的方案
您可以按照以下思路设计平衡成本和集群稳定性的方案。
设置合理的出价策略:通过设定略高于市场价格但低于按需价格的出价,增加获取抢占式实例的机会,同时减少因频繁中断而带来的管理负担。
混合使用多种实例类型:在伸缩组引入抢占式实例时,需要根据您业务的实际情况,调整抢占式实例和按需实例的配比,从而平衡成本和集群稳定性。
例如:您可以将按量的比例设置为可以保证业务稳定运行的最低容量,对于弹性的部分使用抢占式实例降低成本。
不同配比的伸缩组集群稳定性与成本的变化如图所示,随着抢占式在集群中的比例的升高,成本会降低,但稳定性也会降低。
进一步提升集群稳定性
除了设计合理的平衡成本和稳定性方案,您还可以通过以下几个配置进一步提升伸缩组内集群的稳定性。
| |
| |
| |
|
示例:已有伸缩组使用抢占式实例降低成本
如果您已有伸缩组,您可以参考以下步骤在伸缩组中引入抢占式实例。
步骤一:为伸缩组设置多可用区交换机
设置多可用区交换机可以组合多个可用区的库存,增加伸缩组可用的抢占式实例库存。
| |
| |
|
步骤二:为伸缩组设置成本优化策略
| |
| |
|
步骤三:修改伸缩配置
本文以修改伸缩配置为例,您也可以根据实际情况,创建新的伸缩配置,具体操作请参见创建ECS伸缩组。
| |
| |
| |
| |
| 以自动出价为例 |
|
(验证)步骤四:触发扩容
在配置完成后,您可以触发一次扩容操作,检验伸缩组是否可以按照预期创建抢占式实例。本文以通过修改期望实例数触发扩容为例。
相关参数
按量实例所占比例:70%。
组内最小按量实例数:2台
组内期望实例数:从0修改为12。
预期结果
按量付费实例数9台,抢占式实例数3台。
结果说明
组内最小按量实例数不计入按量实例所占比例,因此组内总按量实例数为
您可以在ECS控制台查看实例的付费模式。