文档

竞价集群

更新时间:

1. 背景

竞价实例是专为降低用户 ECS 计算成本而设计的一种按需实例。它的定价会根据市场上针对该实例的供需变化而浮动。因此,用户可充分利用竞价实例价格浮动的特性,在合适的时间购买该竞价实例资源,从而降低计算成本。

2. 限制

使用竞价实例必须明确以下几点:

  • 竞价实例的核时单价会浮动,会影响成本的精确预估;
  • 竞价实例存在被系统释放的可能。

3. 使用

使用竞价实例必须针对以下几个参数进行设置:

  • 资源类型(ResourceType):使用竞价实例的前提是资源类型必须设置为Spot
  • 竞价策略(SpotStrategy):设置为SpotAsPriceGo表示跟随当前系统出价;设置为SpotWithPriceLimit表示是否分配机器取决于当前价格与您出价情况;
  • 竞价上限(SpotPriceLimit):只有 SpotStrategy 被设置为SpotWithPriceLimit才有效,支持最大 3 位小数。

以下我们将展示通过 SDK 和命令行工具创建集群并设置竞价实例,ResourceType 设置为Spot,SpotStrategy 设置为SpotWithPriceLimit,SpotPriceLimit 设置为 0.1

3.1 SDK

使用 Python SDK 创建集群设置竞价实例样例:

  1. from batchcompute.resources import (
  2. ClusterDescription, GroupDescription
  3. )
  4. cluster_desc = ClusterDescription()
  5. group_desc = GroupDescription()
  6. group_desc.ResourceType = 'Spot'
  7. group_desc.SpotStrategy = 'SpotWithPriceLimit'
  8. group_desc.SpotPriceLimit = 0.1
  9. cluster_desc.add_group('group_name', group_desc)

3.2 命令行工具

使用命令行工具创建集群设置竞价实例样例:

  1. bcs cc cluster_1 -t ecs.sn1.large --resource_type Spot --spot_price_limit 0.1

修改集群竞价单价:

  1. bcs uc cls-xxxx --spot_price_limit 0.1