를 사용한 Auto Scaling Plans 예제 AWS CLI - AWS Command Line Interface

이 설명서는 의 버전 1 AWS CLI 전용입니다. 의 버전 2와 관련된 설명서는 버전 2 사용 설명서 를 AWS CLI참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용한 Auto Scaling Plans 예제 AWS CLI

다음 코드 예제에서는 Auto Scaling Plans와 AWS Command Line Interface 함께 를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.

주제

작업

다음 코드 예시에서는 create-scaling-plan을 사용하는 방법을 보여 줍니다.

AWS CLI

조정 계획을 생성하려면

다음 create-scaling-plan 예제에서는 이미 생성된 JSON 파일(config.json 이름)을 my-scaling-plan 사용하여 라는 조정 계획을 생성합니다. 조정 계획의 구조에는 라는 Auto Scaling 그룹에 대한 조정 지침이 포함되어 있습니다my-asg. 이 계획은 TagFilters 속성을 애플리케이션 소스로 지정하고 예측 조정 및 동적 조정을 활성화합니다.

aws autoscaling-plans create-scaling-plan \ --scaling-plan-name my-scaling-plan \ --cli-input-json file://~/config.json

config.json 파일의 콘텐츠:

{ "ApplicationSource": { "TagFilters": [ { "Key": "purpose", "Values": [ "my-application" ] } ] }, "ScalingInstructions": [ { "ServiceNamespace": "autoscaling", "ResourceId": "autoScalingGroup/my-asg", "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "ScheduledActionBufferTime": 300, "PredictiveScalingMaxCapacityBehavior": "SetForecastCapacityToMaxCapacity", "PredictiveScalingMode": "ForecastAndScale", "PredefinedLoadMetricSpecification": { "PredefinedLoadMetricType": "ASGTotalCPUUtilization" }, "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "MinCapacity": 1, "MaxCapacity": 4, "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 50 } ] } ] }

출력:

{ "ScalingPlanVersion": 1 }

자세한 내용은 AWS Auto Scaling 사용 설명서 를 참조하세요.

  • 자세한 API 내용은 명령 참조CreateScalingPlan의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 delete-scaling-plan을 사용하는 방법을 보여 줍니다.

AWS CLI

조정 계획을 삭제하려면

다음 delete-scaling-plan 예제에서는 지정된 조정 계획을 삭제합니다.

aws autoscaling-plans delete-scaling-plan \ --scaling-plan-name my-scaling-plan \ --scaling-plan-version 1

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 AWS Auto Scaling 사용 설명서 를 참조하세요.

  • 자세한 API 내용은 명령 참조DeleteScalingPlan의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 describe-scaling-plan-resources을 사용하는 방법을 보여 줍니다.

AWS CLI

규모 조정 계획을 위한 확장 가능 리소스를 설명하려면

다음 describe-scaling-plan-resources 예제에서는 지정된 조정 계획과 연결된 단일 확장 가능 리소스(Auto Scaling 그룹)에 대한 세부 정보를 표시합니다.

aws autoscaling-plans describe-scaling-plan-resources \ --scaling-plan-name my-scaling-plan \ --scaling-plan-version 1

출력:

{ "ScalingPlanResources": [ { "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "ScalingPlanVersion": 1, "ResourceId": "autoScalingGroup/my-asg", "ScalingStatusCode": "Active", "ScalingStatusMessage": "Target tracking scaling policies have been applied to the resource.", "ScalingPolicies": [ { "PolicyName": "AutoScaling-my-asg-b1ab65ae-4be3-4634-bd64-c7471662b251", "PolicyType": "TargetTrackingScaling", "TargetTrackingConfiguration": { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/f37c06a68c1748aa/targetgroup/my-target-group/6d4ea56ca2d6a18d" }, "TargetValue": 40.0 } } ], "ServiceNamespace": "autoscaling", "ScalingPlanName": "my-scaling-plan" } ] }

자세한 내용은 AWS Auto Scaling 사용 설명서의 Auto Scaling이란 무엇입니까?를 참조하세요. AWS Auto Scaling

다음 코드 예시에서는 describe-scaling-plans을 사용하는 방법을 보여 줍니다.

AWS CLI

조정 계획을 설명하려면

다음 describe-scaling-plans 예제에서는 지정된 조정 계획의 세부 정보를 표시합니다.

aws autoscaling-plans describe-scaling-plans \ --scaling-plan-names scaling-plan-with-asg-and-ddb

출력:

{ "ScalingPlans": [ { "LastMutatingRequestTime": 1565388443.963, "ScalingPlanVersion": 1, "CreationTime": 1565388443.963, "ScalingInstructions": [ { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 50.0, "EstimatedInstanceWarmup": 300, "DisableScaleIn": false } ], "ResourceId": "autoScalingGroup/my-asg", "DisableDynamicScaling": false, "MinCapacity": 1, "ServiceNamespace": "autoscaling", "MaxCapacity": 10 }, { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "DynamoDBReadCapacityUtilization" }, "TargetValue": 50.0, "ScaleInCooldown": 60, "DisableScaleIn": false, "ScaleOutCooldown": 60 } ], "ResourceId": "table/my-table", "DisableDynamicScaling": false, "MinCapacity": 5, "ServiceNamespace": "dynamodb", "MaxCapacity": 10000 }, { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "dynamodb:table:WriteCapacityUnits", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "DynamoDBWriteCapacityUtilization" }, "TargetValue": 50.0, "ScaleInCooldown": 60, "DisableScaleIn": false, "ScaleOutCooldown": 60 } ], "ResourceId": "table/my-table", "DisableDynamicScaling": false, "MinCapacity": 5, "ServiceNamespace": "dynamodb", "MaxCapacity": 10000 } ], "ApplicationSource": { "TagFilters": [ { "Values": [ "my-application-id" ], "Key": "application" } ] }, "StatusStartTime": 1565388455.836, "ScalingPlanName": "scaling-plan-with-asg-and-ddb", "StatusMessage": "Scaling plan has been created and applied to all resources.", "StatusCode": "Active" } ] }

자세한 내용은 AWS Auto Scaling 사용 설명서의 Auto Scaling이란 무엇입니까?를 참조하세요. AWS Auto Scaling

다음 코드 예시에서는 get-scaling-plan-resource-forecast-data을 사용하는 방법을 보여 줍니다.

AWS CLI

로드 예측 데이터를 검색하려면

이 예제에서는 지정된 조정 계획과 연결된 확장 가능 리소스(Auto Scaling 조정 그룹)에 대한 로드 예측 데이터를 검색합니다.

aws autoscaling-plans get-scaling-plan-resource-forecast-data \ --scaling-plan-name my-scaling-plan \ --scaling-plan-version 1 \ --service-namespace "autoscaling" \ --resource-id autoScalingGroup/my-asg \ --scalable-dimension "autoscaling:autoScalingGroup:DesiredCapacity" \ --forecast-data-type "LoadForecast" \ --start-time "2019-08-30T00:00:00Z" \ --end-time "2019-09-06T00:00:00Z"

출력:

{ "Datapoints": [...] }

자세한 내용은 AWS Auto Scaling 사용 설명서AWS 의 IsAuto Scaling 항목을 참조하세요.

다음 코드 예시에서는 update-scaling-plan을 사용하는 방법을 보여 줍니다.

AWS CLI

조정 계획을 업데이트하려면

다음 update-scaling-plan 예제에서는 지정된 조정 계획에서 Auto Scaling 그룹의 조정 지표를 수정합니다.

aws autoscaling-plans update-scaling-plan \ --scaling-plan-name my-scaling-plan \ --scaling-plan-version 1 \ --scaling-instructions '{"ScalableDimension":"autoscaling:autoScalingGroup:DesiredCapacity","ResourceId":"autoScalingGroup/my-asg","ServiceNamespace":"autoscaling","TargetTrackingConfigurations":[{"PredefinedScalingMetricSpecification": {"PredefinedScalingMetricType":"ALBRequestCountPerTarget","ResourceLabel":"app/my-alb/f37c06a68c1748aa/targetgroup/my-target-group/6d4ea56ca2d6a18d"},"TargetValue":40.0}],"MinCapacity": 1,"MaxCapacity": 10}'

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 AWS Auto Scaling 사용 설명서의 Auto Scaling이란 무엇입니까?를 참조하세요. AWS Auto Scaling

  • 자세한 API 내용은 명령 참조UpdateScalingPlan의 섹션을 참조하세요. AWS CLI