本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
JSON为自定义指标构建
以下部分包含有关如何配置预测缩放以从中查询数据的示例 CloudWatch。有两种不同的方法可以配置此选项,您选择的方法会影响您JSON为预测性扩展策略构建时使用的格式。使用公制数学时,其格式会根据所执行的公制数学而JSON有所不同。
-
要创建可直接从提供的其他 CloudWatch 指标 AWS 或您发布到的指标中获取数据的策略 CloudWatch,请参阅包含自定义负载和扩缩指标的预测性扩缩策略示例(AWS CLI)。
-
要创建可查询多个 CloudWatch 指标并使用数学表达式根据这些指标创建新时间序列的策略,请参阅使用指标数学表达式。
包含自定义负载和扩缩指标的预测性扩缩策略示例(AWS CLI)
要使用创建带有自定义负载和扩展指标的预测性扩展策略 AWS 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
" } } ] } } ] }
有关更多信息,请参阅MetricDataQuery《Amazon A EC2 uto Scaling API 参考》。
注意
以下是一些其他资源,可以帮助您查找指标名称、命名空间、维度和指标 CloudWatch 统计信息:
-
有关 AWS 服务的可用指标的信息,请参阅《亚马逊 CloudWatch 用户指南》中发布 CloudWatch 指标的AWS 服务。
-
要使用获取指标的确切指标名称、命名空间和维度(如果适用) AWS CLI,请参阅列表 CloudWatch 指标。
要创建此策略,请使用该JSON文件作为输入运行put-scaling-policy命令,如以下示例所示。
aws autoscaling put-scaling-policy --policy-name
my-predictive-scaling-policy
\ --auto-scaling-group-namemy-asg
--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
如果成功,此命令将返回策略的 Amazon 资源名称 (ARN)。
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/my-predictive-scaling-policy",
"Alarms": []
}