DATASOURCE::ESS::ScalingRules

更新时间:
复制 MD 格式

DATASOURCE::ESS::ScalingRules类型用于查询多个伸缩规则及其详细信息。

语法

{
  "Type": "DATASOURCE::ESS::ScalingRules",
  "Properties": {
    "RefreshOptions": String,
    "ScalingRuleIds": List,
    "ShowAlarmRules": Boolean,
    "ScalingGroupId": String,
    "ScalingRuleAris": List,
    "ScalingRuleType": String,
    "ScalingRuleNames": List
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

RefreshOptions

String

否

是

当资源栈更新时,数据源资源的刷新策略。

有效值:

  • Never(默认值):更新堆栈时,从不刷新数据源资源。

  • Always:更新堆栈时,始终刷新数据源资源。

ScalingRuleIds

List

否

是

要查询的伸缩规则ID列表。

最多支持输入20组伸缩规则。

ShowAlarmRules

Boolean

否

是

是否返回伸缩规则关联的云监控报警任务。

取值范围:

  • true:返回伸缩规则关联的云监控报警任务。

  • false:不返回伸缩规则关联的云监控报警任务。

默认值:false。

ScalingGroupId

String

否

是

伸缩组的ID。

无

ScalingRuleAris

List

否

是

待查询伸缩规则的唯一标识符列表。

最多支持输入20组伸缩规则的唯一标识符。

ScalingRuleType

String

否

是

伸缩规则类型。

可能值:

  • SimpleScalingRule:简单规则。根据调整方式(AdjustmentType)和调整值(AdjustmentValue)调整ECS实例数量。

  • TargetTrackingScalingRule:目标追踪规则。根据预定义监控(MetricName)项动态计算需要扩缩容的ECS实例数量,尽量将预定义监控项的指标值维持在目标值(TargetValue)附近。

  • StepScalingRule:步进规则,根据阈值和指标值提供分步扩展方式。

  • PredictiveScalingRule:预测规则,基于机器学习能力分析伸缩组的历史监控数据预测未来监控指标值,并支持自动创建定时任务设置伸缩组边界。

ScalingRuleNames

List

否

是

待查询伸缩规则的名称列表。

最多支持输入20组伸缩规则的名称。

返回值

Fn::GetAtt

  • ScalingRules:伸缩规则详情列表。

  • ScalingRuleIds:伸缩规则ID列表。

属性名称

类型

描述

约束

ScalingRuleIds

List

伸缩规则ID列表。

无

ScalingRules

List

伸缩规则详情列表。

无

PredictiveScalingMode

String

预测规则的模式。

无

MinAdjustmentMagnitude

Number

伸缩规则最小调整实例数。

无

PredictiveValueBuffer

Number

PredictiveValueBehavior为PredictiveValueOverrideMaxWithBuffer时生效,预测值会按照该比例增加,当增加后的值大于初始最大值时,会采用增加后的值。

无

ScalingRuleAri

String

伸缩规则的唯一标识符。

无

ScaleOutEvaluationCount

Number

创建目标追踪规则后,会自动创建报警任务。

无

ScaleInEvaluationCount

Number

创建目标追踪规则后,会自动创建报警任务。

无

MetricName

String

伸缩规则关联的报警任务监控项名称。

无

PredictiveTaskBufferTime

Number

预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。

无

MaxSize

Number

伸缩组最大实例数。

无

StepAdjustments

String

步进规则的分步步骤。

无

ScalingRuleName

String

伸缩规则的名称。

无

DisableScaleIn

String

是否禁用缩容,仅适用于目标追踪规则。

无

PredictiveValueBehavior

String

预测规则最大值处理方式。

无

MinSize

Number

伸缩组最小实例数。

无

InitialMaxSize

Number

伸缩组实例数的上限。

无

Alarms

String

伸缩规则关联的云监控报警任务。

无

TargetValue

String

目标值。

无

EstimatedInstanceWarmup

String

新创建的实例做一系列准备措施,即预热所需要的时间,在预热时间内,已启动的实例将不影响伸缩组的监控指标。

无

ScalingRuleId

String

伸缩规则的ID。

无

Cooldown

Number

伸缩规则的冷却时间,仅适用于简单规则。

无

ScalingGroupId

String

伸缩组的ID。

无

ScalingRuleType

String

伸缩规则类型。

无

AdjustmentType

String

伸缩规则的调整方式。

无

AdjustmentValue

Number

伸缩规则的调整值。

无

MetricType

String

伸缩规则关联的报警任务的类型。

无

示例

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  ScalingRuleIds:
    Type: Json
    Description:
      en: The IDs of the scaling rules that you want to query.
    Required: false
    MinLength: 0
    MaxLength: 20
Resources:
  ExtensionDataSource:
    Type: DATASOURCE::ESS::ScalingRules
    Properties:
      ScalingRuleIds:
        Ref: ScalingRuleIds
Outputs:
  ScalingRules:
    Description: The list of scaling rules.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - ScalingRules
  ScalingRuleIds:
    Description: The list of scaling rule IDs.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - ScalingRuleIds
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ScalingRuleIds": {
      "Type": "Json",
      "Description": {
        "en": "The IDs of the scaling rules that you want to query."
      },
      "Required": false,
      "MinLength": 0,
      "MaxLength": 20
    }
  },
  "Resources": {
    "ExtensionDataSource": {
      "Type": "DATASOURCE::ESS::ScalingRules",
      "Properties": {
        "ScalingRuleIds": {
          "Ref": "ScalingRuleIds"
        }
      }
    }
  },
  "Outputs": {
    "ScalingRules": {
      "Description": "The list of scaling rules.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "ScalingRules"
        ]
      }
    },
    "ScalingRuleIds": {
      "Description": "The list of scaling rule IDs.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "ScalingRuleIds"
        ]
      }
    }
  }
}