擴展政策的範例 AWS CLI - Amazon EC2 Auto Scaling

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

擴展政策的範例 AWS CLI

您可以透過 AWS Management Console、 AWS Command Line Interface (AWS CLI) 或開發套件建立 Amazon EC2 Auto Scaling 政策。

下列範例說明如何使用 AWS CLI put-scaling-policy命令為 Amazon EC2 自動擴展規模建立擴展政策。將每個使用者輸入預留位置替換為自己的資訊。

若要開始使用編寫擴展政策 AWS CLI,請參閱目標追蹤擴展政策步進和簡易擴展政策中的介紹性練習。

範例 1:套用具備預先定義指標規格的目標追蹤擴展政策

aws autoscaling put-scaling-policy --policy-name cpu50-target-tracking-scaling-policy \ --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \ --target-tracking-configuration file://config.json { "TargetValue": 50.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ASGAverageCPUUtilization" } }

如需詳細資訊,請參閱 Amazon EC2 Auto Scaling API 參考PredefinedMetricSpecification中的一文。

注意

如果檔案不在目前目錄中,請輸入檔案的完整路徑。若要取得有關從檔案讀取 AWS CLI 參數值的更多資訊,請AWS CLI 參閱《 AWS Command Line Interface 使用指南》中的〈從檔案載入參數〉。

範例 2:套用具備自訂指標規格的目標追蹤擴展政策

aws autoscaling put-scaling-policy --policy-name sqs100-target-tracking-scaling-policy \ --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \ --target-tracking-configuration file://config.json { "TargetValue": 100.0, "CustomizedMetricSpecification": { "MetricName": "MyBacklogPerInstance", "Namespace": "MyNamespace", "Dimensions": [{ "Name": "MyOptionalMetricDimensionName", "Value": "MyOptionalMetricDimensionValue" }], "Statistic": "Average", "Unit": "None" } }

如需詳細資訊,請參閱 Amazon EC2 Auto Scaling API 參考CustomizedMetricSpecification中的。

範例 3:只針對擴增套用目標追蹤擴展政策

aws autoscaling put-scaling-policy --policy-name alb1000-target-tracking-scaling-policy \ --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \ --target-tracking-configuration file://config.json { "TargetValue": 1000.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" }, "DisableScaleIn": true }

範例 4:針對擴增套用步進擴展政策

aws autoscaling put-scaling-policy \ --auto-scaling-group-name my-asg \ --policy-name my-step-scale-out-policy \ --policy-type StepScaling \ --adjustment-type PercentChangeInCapacity \ --metric-aggregation-type Average \ --step-adjustments MetricIntervalLowerBound=10.0,MetricIntervalUpperBound=20.0,ScalingAdjustment=10 \ MetricIntervalLowerBound=20.0,MetricIntervalUpperBound=30.0,ScalingAdjustment=20 \ MetricIntervalLowerBound=30.0,ScalingAdjustment=30 \ --min-adjustment-magnitude 1

記錄政策的 Amazon Resource Name (ARN)。創建 CloudWatch 警報時需要 ARN。

範例 5:針對縮減套用步進擴展政策

aws autoscaling put-scaling-policy \ --auto-scaling-group-name my-asg \ --policy-name my-step-scale-in-policy \ --policy-type StepScaling \ --adjustment-type ChangeInCapacity \ --step-adjustments MetricIntervalUpperBound=0.0,ScalingAdjustment=-2

記錄政策的 Amazon Resource Name (ARN)。創建 CloudWatch 警報時需要 ARN。

範例 6:針對擴增套用簡易擴展政策

aws autoscaling put-scaling-policy --policy-name my-simple-scale-out-policy \ --auto-scaling-group-name my-asg --scaling-adjustment 30 \ --adjustment-type PercentChangeInCapacity --min-adjustment-magnitude 2

記錄政策的 Amazon Resource Name (ARN)。創建 CloudWatch 警報時需要 ARN。

範例 7:針對縮減套用簡易擴展政策

aws autoscaling put-scaling-policy --policy-name my-simple-scale-in-policy \ --auto-scaling-group-name my-asg --scaling-adjustment -1 \ --adjustment-type ChangeInCapacity --cooldown 180

記錄政策的 Amazon Resource Name (ARN)。創建 CloudWatch 警報時需要 ARN。