背景
原弹性伸缩ESS服务限定,生效的伸缩配置中只能对应一种实例规格,这样就会存在如果生效的配置中的实例规格的库存不足(高配实例规格通常更容易出现库存不足的情况)时, 用户配置好的伸缩规则以及伸缩组对应的报警任务或者定时任务都会失效。尤其是大客户在业务高峰时,需要争分夺秒的弹出高规格实例来应对业务流量时,该问题的影响便更加突出。
适用场景
- 对伸缩组弹出的实例只关注性能,而不限定于某一种特定规格
- 业务流量较大,一般用弹性伸缩伸缩高配的实例规格
- 对弹性伸缩ESS的弹出成功率有较高的成功率要求和较低的时延要求
多实例规格间的优先级
假设用户在生效的伸缩配置中配置了实例规格A和B,弹性伸缩在弹机器时,会按照配置时参数(InstanceTypes.N)的传入顺序,先用实例规格A弹机器,如果无法弹出,再用实例规格B,更多实例规格时,依此类推。可见,伸缩配置的多实例规格其实类似于备选模式而非随机模式。
最佳实践
这里就现有弹性伸缩ESS所支持的特性,推荐在创建伸缩组以及伸缩配置时,同时采用创建多可用区专有网络伸缩组以及创建多实例规格的伸缩配置。
说明如下:
- 1.在目标地域下创建好专有网络,以及多个可用区下的交换机
- 2.在目标地域下创建伸缩组,选择对应的专有网络,并选择多个交换机(尽量选择不同可用区的交换机,合理利用不同可用区的库存),详见创建多可用区专有网络
- 3.伸缩组创建完毕后,创建伸缩配置时,可勾选多个(不超过10个)实例规格,可按照cpu/内存/主频/内网带宽/内网收发包等不同维度选择相近的多个实例规格
- 4.多选的实例规格要求同属于io优化或非io优化,因为io优化与非io优化的购买配置相差较大,如果对应实例规格能同时选,也很难增加弹机器的成功率
- 5.伸缩配置创建完成后,【启用配置】->【启动伸缩组】->【配置伸缩规则】->【配置相关报警或定时任务】
控制台创建多实例规格
下面介绍下在弹性伸缩ESS控制台如何配置多实例规格的伸缩配置
1.进入目标伸缩组的伸缩配置页面,点击【创建伸缩配置】
2.在伸缩配置创建页面,选择多个实例规格(比如可选择cpu/内存相同的实例规格)
3.创建完成后,可在伸缩配置页面查看对应的多实例规格的伸缩配置
4.通过启用多实例规格的伸缩配置,就可以在遇到弹特定规格库存不足等情况时,自动为用户切换到备选的实例规格上,增加弹出机器的成功率
如果想查看多可用区以及多实例规格的SDK使用方式,可前往: