构造自定义指标的 JSON - Amazon EC2 Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

构造自定义指标的 JSON

以下部分包含有关如何配置预测缩放以从中查询数据的示例 CloudWatch。配置此选项有两种不同的方法,您选择的方法会影响您为预测性扩缩策略构造 JSON 时使用的格式。使用指标数学时,JSON 格式会根据所执行的指标数学进一步变化。

  1. 要创建可直接从提供的其他 CloudWatch 指标 Amazon 或您发布到的指标中获取数据的策略 CloudWatch,请参阅包含自定义负载和扩缩指标的预测性扩缩策略示例(Amazon CLI)

  2. 要创建可查询多个 CloudWatch 指标并使用数学表达式根据这些指标创建新时间序列的策略,请参阅使用指标数学表达式

包含自定义负载和扩缩指标的预测性扩缩策略示例(Amazon CLI)

要使用创建带有自定义负载和扩展指标的预测性扩展策略 Amazon CLI,请将的参数存储--predictive-scaling-configuration在名为的 JSON 文件中config.json

您可以将以下示例中的可替换值替换为您的指标和目标利用率值,从而开始添加自定义指标。

{ "MetricSpecifications": [ { "TargetValue": 50, "CustomizedScalingMetricSpecification": { "MetricDataQueries": [ { "Id": "scaling_metric", "MetricStat": { "Metric": { "MetricName": "MyUtilizationMetric", "Namespace": "MyNameSpace", "Dimensions": [ { "Name": "MyOptionalMetricDimensionName", "Value": "MyOptionalMetricDimensionValue" } ] }, "Stat": "Average" } } ] }, "CustomizedLoadMetricSpecification": { "MetricDataQueries": [ { "Id": "load_metric", "MetricStat": { "Metric": { "MetricName": "MyLoadMetric", "Namespace": "MyNameSpace", "Dimensions": [ { "Name": "MyOptionalMetricDimensionName", "Value": "MyOptionalMetricDimensionValue" } ] }, "Stat": "Sum" } } ] } } ] }

有关更多信息,请参阅 MetricDataQueryAmazon EC2 Auto Scaling API 参考中的。

注意

以下是一些其他资源,可以帮助您查找指标名称、命名空间、维度和指标 CloudWatch 统计信息:

要创建此策略,请使用 JSON 文件作为输入运行put-scaling-policy命令,如以下示例所示。

aws autoscaling put-scaling-policy --policy-name my-predictive-scaling-policy \ --auto-scaling-group-name my-asg --policy-type PredictiveScaling \ --predictive-scaling-configuration file://config.json

如果成功,此命令将返回策略的 Amazon Resource Name (ARN)。

{ "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-predictive-scaling-policy", "Alarms": [] }