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

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

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

를 사용한 Auto Scaling 예제 AWS CLI

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

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

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

주제

작업

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

AWS CLI

Auto Scaling 그룹에 인스턴스를 연결하려면

이 예제에서는 지정된 인스턴스를 지정된 Auto Scaling 그룹에 연결합니다.

aws autoscaling attach-instances \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg

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

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

다음 코드 예시에서는 attach-load-balancer-target-groups을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹에 대상 그룹을 연결하는 방법

이 예시에서는 지정된 Auto Scaling 그룹에 지정된 대상 그룹을 연결합니다.

aws autoscaling attach-load-balancer-target-groups \ --auto-scaling-group-name my-asg \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Elastic Load Balancing 및 Amazon Auto Scaling을 참조하세요. EC2 Auto Scaling

다음 코드 예시에서는 attach-load-balancers을 사용하는 방법을 보여 줍니다.

AWS CLI

Classic Load Balancer를 Auto Scaling 그룹에 연결하려면

이 예제에서는 지정된 Classic Load Balancer를 지정된 Auto Scaling 그룹에 연결합니다.

aws autoscaling attach-load-balancers \ --load-balancer-names my-load-balancer \ --auto-scaling-group-name my-asg

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Elastic Load Balancing 및 Amazon Auto Scaling을 참조하세요. EC2 Auto Scaling

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

다음 코드 예시에서는 cancel-instance-refresh을 사용하는 방법을 보여 줍니다.

AWS CLI

인스턴스 새로 고침을 취소하려면

다음 cancel-instance-refresh 예제에서는 지정된 Auto Scaling 그룹에 대해 진행 중인 인스턴스 새로 고침을 취소합니다.

aws autoscaling cancel-instance-refresh \ --auto-scaling-group-name my-asg

출력:

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서인스턴스 새로 고침 취소를 참조하세요.

다음 코드 예시에서는 complete-lifecycle-action을 사용하는 방법을 보여 줍니다.

AWS CLI

수명 주기 작업을 완료하려면

이 예제에서는 지정된 수명 주기 작업이 완료되어 인스턴스 시작 또는 종료를 완료할 수 있음을 Amazon EC2 Auto Scaling에 알립니다.

aws autoscaling complete-lifecycle-action \ --lifecycle-hook-name my-launch-hook \ --auto-scaling-group-name my-asg \ --lifecycle-action-result CONTINUE \ --lifecycle-action-token bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

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

AWS CLI

예 1: Auto Scaling 그룹을 생성하는 방법

다음 create-auto-scaling-group 예시에서는 리전 내 여러 가용 영역의 서브넷에 Auto Scaling 그룹을 생성합니다. 지정된 시작 템플릿의 기본 버전으로 인스턴스가 시작됩니다. 참고로 종료 정책, 상태 확인 구성 등 대부분의 다른 설정에는 기본값이 사용됩니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12 \ --min-size 1 \ --max-size 5 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹을 참조하세요. EC2 Auto Scaling

예 2: Application Load Balancer, Network Load Balancer 또는 Gateway Load Balancer를 연결하는 방법

이 예제ARN에서는 예상 트래픽을 지원하는 로드 밸런서에 대한 대상 그룹의 를 지정합니다. 상태 확인 유형은 Elastic Load Balancing이 인스턴스를 비정상으로 보고하면 Auto Scaling 그룹이 인스턴스를 교체하도록 ELB를 지정합니다. 또한 이 명령은 상태 확인 유예 기간을 600초로 정의합니다. 유예 기간은 새로 시작된 인스턴스의 조기 종료를 방지하는 데 도움이 됩니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12 \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/943f017f100becff \ --health-check-type ELB \ --health-check-grace-period 600 \ --min-size 1 \ --max-size 5 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Elastic Load Balancing 및 Amazon Auto Scaling을 참조하세요. EC2 Auto Scaling

예 3: 배치 그룹을 지정하고 시작 템플릿의 최신 버전을 사용하는 방법

이 예시에서는 단일 가용 영역 내에 있는 배치 그룹에 인스턴스를 시작합니다. 이는 HPC 워크로드가 있는 지연 시간이 짧은 그룹에 유용할 수 있습니다. 또한 이 예시에서는 그룹의 최소 크기, 최대 크기, 원하는 용량을 지정합니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12,Version='$Latest' \ --min-size 1 \ --max-size 5 \ --desired-capacity 3 \ --placement-group my-placement-group \ --vpc-zone-identifier "subnet-6194ea3b"

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

자세한 내용은 Linux 인스턴스용 Amazon 사용 설명서의 배치 그룹을 참조하세요. EC2

예 4: 단일 인스턴스 Auto Scaling 그룹을 지정하고 시작 템플릿의 특정 버전을 사용하는 방법

이 예시에서는 최소 및 최대 용량을 1로 설정한 Auto Scaling 그룹을 생성하여 하나의 인스턴스가 실행되도록 합니다. 명령은 또한 기존 의 ID가 ENI 지정된 시작 템플릿의 v1을 지정합니다. eth0ENI에 기존 를 지정하는 시작 템플릿을 사용하는 경우 요청에 서브넷 ID를 지정하지 않고 네트워크 인터페이스와 일치하는 Auto Scaling 그룹의 가용 영역을 지정해야 합니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg-single-instance \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='1' \ --min-size 1 \ --max-size 1 \ --availability-zones us-west-2a

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹을 참조하세요. EC2 Auto Scaling

예 5: 다른 종료 정책을 지정하는 방법

이 예시에서는 시작 구성을 사용하여 Auto Scaling 그룹을 생성하고 가장 오래된 인스턴스부터 종료하도록 종료 정책을 설정합니다. 이 명령은 또한 키가 Role이고 값이 WebServer인 태그를 그룹과 해당 인스턴스에 적용합니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-configuration-name my-lc \ --min-size 1 \ --max-size 5 \ --termination-policies "OldestInstance" \ --tags "ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Role,Value=WebServer,PropagateAtLaunch=true" \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 종료 정책 작업을 참조하세요. EC2 Auto Scaling

예 6: 시작 수명 주기 후크를 지정하는 방법

이 예시에서는 인스턴스 시작 시 사용자 지정 작업을 지원하는 수명 주기 후크가 있는 Auto Scaling 그룹을 생성합니다.

aws autoscaling create-auto-scaling-group \ --cli-input-json file://~/config.json

config.json 파일의 콘텐츠:

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12" }, "LifecycleHookSpecificationList": [{ "LifecycleHookName": "my-launch-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationTargetARN": "arn:aws:sqs:us-west-2:123456789012:my-sqs-queue", "RoleARN": "arn:aws:iam::123456789012:role/my-notification-role", "NotificationMetadata": "SQS message metadata", "HeartbeatTimeout": 4800, "DefaultResult": "ABANDON" }], "MinSize": 1, "MaxSize": 5, "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "Tags": [{ "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "test", "Key": "environment" }] }

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

예 7: 종료 수명 주기 후크를 지정하는 방법

이 예시에서는 인스턴스 종료 시 사용자 지정 작업을 지원하는 수명 주기 후크가 있는 Auto Scaling 그룹을 생성합니다.

aws autoscaling create-auto-scaling-group \ --cli-input-json file://~/config.json

config.json의 콘텐츠:

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12" }, "LifecycleHookSpecificationList": [{ "LifecycleHookName": "my-termination-hook", "LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING", "HeartbeatTimeout": 120, "DefaultResult": "CONTINUE" }], "MinSize": 1, "MaxSize": 5, "TargetGroupARNs": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067" ], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" }

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

예 8: 사용자 지정 종료 정책을 지정하는 방법

이 예제에서는 Amazon Auto Scaling에 규모에 따라 종료해도 안전한 인스턴스를 알려주는 사용자 지정 Lambda 함수 종료 정책을 지정하는 EC2 Auto Scaling 그룹을 생성합니다.

aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name my-asg-single-instance \ --launch-template LaunchTemplateName=my-template-for-auto-scaling \ --min-size 1 \ --max-size 5 \ --termination-policies "arn:aws:lambda:us-west-2:123456789012:function:HelloFunction:prod" \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서Lambda를 사용하여 사용자 지정 종료 정책 생성을 참조하세요.

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

AWS CLI

예제 1: 시작 구성을 생성하려면

이 예제에서는 간단한 시작 구성을 생성합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서시작 구성 생성을 참조하세요.

예제 2: 보안 그룹, 키 페어 및 부트래핑 스크립트를 사용하여 시작 구성을 생성하려면

이 예제에서는 보안 그룹, 키 페어 및 사용자 데이터에 포함된 부트래핑 스크립트를 사용하여 시작 구성을 생성합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --security-groups sg-eb2af88example \ --key-name my-key-pair \ --user-data file://myuserdata.txt

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서시작 구성 생성을 참조하세요.

예제 3: IAM 역할로 시작 구성을 생성하려면

이 예제에서는 IAM 역할의 인스턴스 프로파일 이름으로 시작 구성을 생성합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --iam-instance-profile my-autoscaling-role

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

자세한 내용은 IAM Amazon Auto Scaling 사용 설명서의 Amazon EC2 인스턴스에서 실행되는 애플리케이션의 역할을 참조하세요. EC2 Auto Scaling

예제 4: 세부 모니터링이 활성화된 상태로 시작 구성을 생성하려면

이 예제에서는 EC2 세부 모니터링이 활성화된 시작 구성을 생성하여 1분 내에 EC2 지표를 CloudWatch 로 전송합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --instance-monitoring Enabled=true

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 인스턴스에 대한 모니터링 구성을 참조하세요. EC2 Auto Scaling

예제 5: 스팟 인스턴스를 시작하는 시작 구성을 생성하려면

이 예제에서는 스팟 인스턴스를 유일한 구매 옵션으로 사용하는 시작 구성을 생성합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --spot-price "0.50"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서스팟 인스턴스 요청을 참조하세요.

예제 6: EC2 인스턴스를 사용하여 시작 구성을 생성하려면

이 예제에서는 기존 인스턴스의 속성을 기반으로 시작 구성을 생성합니다. 배치 테넌시와 --placement-tenancy--no-associate-public-ip-address 옵션을 포함하여 퍼블릭 IP 주소를 설정할지 여부를 재정의합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc-from-instance \ --instance-id i-0123a456700123456 \ --instance-type m5.large \ --no-associate-public-ip-address \ --placement-tenancy dedicated

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서 EC2 인스턴스를 사용하여 시작 구성 생성을 참조하세요.

예제 7: Amazon EBS 볼륨에 대한 블록 디바이스 매핑을 사용하여 시작 구성을 생성하려면

이 예제에서는 디바이스 이름과 EBS gp3 볼륨 크기가 20인 Amazon /dev/sdh 볼륨에 대한 블록 디바이스 매핑을 사용하여 시작 구성을 생성합니다.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdh","Ebs":{"VolumeSize":20,"VolumeType":"gp3"}}]'

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

자세한 내용은 Amazon Auto Scaling 참조EBS의 섹션을 참조하세요. EC2 Auto Scaling API

JSON형식이 지정된 파라미터 값을 인용하는 구문에 대한 자세한 내용은 AWS 명령줄 인터페이스 사용 설명서에서 문자열로 인용 부호 사용을 참조하세요 AWS CLI.

예제 8: 인스턴스 스토어 볼륨에 대한 블록 디바이스 매핑을 사용하여 시작 구성을 생성하려면

이 예제에서는 를 인스턴스 스토어 볼륨ephemeral1으로 사용하여 디바이스 이름이 인 시작 구성을 생성합니다/dev/sdc.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdc","VirtualName":"ephemeral1"}]'

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

자세한 내용은 Amazon Auto Scaling 참조BlockDeviceMapping의 섹션을 참조하세요. EC2 Auto Scaling API

JSON형식이 지정된 파라미터 값을 인용하는 구문에 대한 자세한 내용은 AWS 명령줄 인터페이스 사용 설명서에서 문자열과 함께 인용 부호 사용을 참조하세요 AWS CLI.

예제 9: 시작 구성을 생성하고 시작 시 블록 디바이스가 연결되지 않도록 하려면

이 예제에서는 의 블록 디바이스 매핑AMI(예: )에 의해 지정된 블록 디바이스를 억제하는 시작 구성을 생성합니다/dev/sdf.

aws autoscaling create-launch-configuration \ --launch-configuration-name my-lc \ --image-id ami-04d5cc9b88example \ --instance-type m5.large \ --block-device-mappings '[{"DeviceName":"/dev/sdf","NoDevice":""}]'

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

자세한 내용은 Amazon Auto Scaling 참조BlockDeviceMapping의 섹션을 참조하세요. EC2 Auto Scaling API

따옴표 JSON형식의 파라미터 값을 위한 구문에 대한 자세한 내용은 AWS 명령줄 인터페이스 사용 설명서에서 문자열로 따옴표 사용을 참조하세요 AWS CLI.

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

AWS CLI

Auto Scaling 그룹에 대한 태그를 생성하거나 업데이트하려면

이 예제에서는 지정된 Auto Scaling 그룹에 두 개의 태그를 추가합니다.

aws autoscaling create-or-update-tags \ --tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Role,Value=WebServer,PropagateAtLaunch=true ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Dept,Value=Research,PropagateAtLaunch=true

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스 태깅을 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

예 1: 지정된 Auto Scaling 그룹을 삭제하는 방법

이 예시에서는 지정된 Auto Scaling 그룹을 삭제합니다.

aws autoscaling delete-auto-scaling-group \ --auto-scaling-group-name my-asg

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 인프라 삭제를 참조하세요. EC2 Auto Scaling

예 2: 지정된 Auto Scaling 그룹을 강제로 삭제하는 방법

그룹의 인스턴스가 종료될 때까지 기다리지 않고 Auto Scaling 그룹을 삭제하려면 --force-delete 옵션을 사용하세요.

aws autoscaling delete-auto-scaling-group \ --auto-scaling-group-name my-asg \ --force-delete

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 인프라 삭제를 참조하세요. EC2 Auto Scaling

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

AWS CLI

시작 구성을 삭제하려면

이 예제에서는 지정된 시작 구성을 삭제합니다.

aws autoscaling delete-launch-configuration \ --launch-configuration-name my-launch-config

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 인프라 삭제를 참조하세요. EC2 Auto Scaling

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

AWS CLI

수명 주기 후크를 삭제하려면

이 예제에서는 지정된 수명 주기 후크를 삭제합니다.

aws autoscaling delete-lifecycle-hook \ --lifecycle-hook-name my-lifecycle-hook \ --auto-scaling-group-name my-asg

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

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

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

AWS CLI

Auto Scaling 알림을 삭제하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 알림을 삭제합니다.

aws autoscaling delete-notification-configuration \ --auto-scaling-group-name my-asg \ --topic-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서알림 구성 삭제를 참조하세요.

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

AWS CLI

조정 정책을 삭제하려면

이 예제에서는 지정된 조정 정책을 삭제합니다.

aws autoscaling delete-policy \ --auto-scaling-group-name my-asg \ --policy-name alb1000-target-tracking-scaling-policy

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

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

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

AWS CLI

Auto Scaling 그룹에서 예약된 작업을 삭제하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 예약된 작업을 삭제합니다.

aws autoscaling delete-scheduled-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-scheduled-action

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

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

AWS CLI

Auto Scaling 그룹에서 태그를 삭제하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 태그를 삭제합니다.

aws autoscaling delete-tags \ --tags ResourceId=my-asg,ResourceType=auto-scaling-group,Key=Dept,Value=Research

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스 태그를 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

예제 1: 웜 풀 삭제

다음 예제에서는 지정된 Auto Scaling 그룹의 웜 풀을 삭제합니다.

aws autoscaling delete-warm-pool \ --auto-scaling-group-name my-asg

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling용 웜 풀을 참조하세요. EC2 Auto Scaling

예제 2: 웜 풀을 강제 삭제하려면

인스턴스가 종료될 때까지 기다리지 않고 웜 풀을 삭제하려면 --force-delete 옵션을 사용합니다.

aws autoscaling delete-warm-pool \ --auto-scaling-group-name my-asg \ --force-delete

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling용 웜 풀을 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

Amazon EC2 Auto Scaling 계정 제한을 설명하려면

이 예제에서는 AWS 계정의 Amazon EC2 Auto Scaling 제한에 대해 설명합니다.

aws autoscaling describe-account-limits

출력:

{ "NumberOfLaunchConfigurations": 5, "MaxNumberOfLaunchConfigurations": 100, "NumberOfAutoScalingGroups": 3, "MaxNumberOfAutoScalingGroups": 20 }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 서비스 할당량을 참조하세요. EC2 Auto Scaling

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

AWS CLI

사용 가능한 조정 유형을 설명하려면

이 예제에서는 사용 가능한 조정 유형을 설명합니다.

aws autoscaling describe-adjustment-types

출력:

{ "AdjustmentTypes": [ { "AdjustmentType": "ChangeInCapacity" }, { "AdjustmentType": "ExactCapacity" }, { "AdjustmentType": "PercentChangeInCapacity" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 조정 유형 조정을 참조하세요. EC2 Auto Scaling

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

AWS CLI

예 1: 지정된 Auto Scaling 그룹을 설명하는 방법

이 예시에서는 지정된 Auto Scaling 그룹을 설명합니다.

aws autoscaling describe-auto-scaling-groups \ --auto-scaling-group-name my-asg

출력:

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480f03:autoScalingGroupName/my-asg", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-1234567890abcde12" }, "MinSize": 0, "MaxSize": 1, "DesiredCapacity": 1, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 0, "Instances": [ { "InstanceId": "i-06905f55584de02da", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2a", "HealthStatus": "Healthy", "LifecycleState": "InService", "ProtectedFromScaleIn": false, "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-1234567890abcde12" } } ], "CreatedTime": "2023-10-28T02:39:22.152Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN":"arn", "TrafficSources": [] } ] }

예 2: 처음 100개의 지정된 Auto Scaling 그룹을 설명하는 방법

이 예시에서는 지정된 Auto Scaling 그룹을 설명합니다. 최대 100개의 그룹 이름을 지정할 수 있습니다.

aws autoscaling describe-auto-scaling-groups \ --max-items 100 \ --auto-scaling-group-name "group1" "group2" "group3" "group4"

샘플 출력은 예 1을 참조하세요.

예 3: 지정된 리전에서 Auto Scaling 그룹을 설명하는 방법

이 예시에서는 지정된 리전의 Auto Scaling 그룹을 최대 75개까지 설명합니다.

aws autoscaling describe-auto-scaling-groups \ --max-items 75 \ --region us-east-1

샘플 출력은 예 1을 참조하세요.

예 4: 지정된 개수의 Auto Scaling 그룹을 설명하는 방법

특정 개수의 Auto Scaling 그룹을 반환하려면 --max-items 옵션을 사용하세요.

aws autoscaling describe-auto-scaling-groups \ --max-items 1

샘플 출력은 예 1을 참조하세요.

출력에 NextToken 필드가 포함된 경우 그룹이 더 많습니다. 추가 그룹을 가져오려면 다음과 같이 후속 직접 호출에서 이 필드의 값을 --starting-token 옵션과 함께 사용하세요.

aws autoscaling describe-auto-scaling-groups \ --starting-token Z3M3LMPEXAMPLE

샘플 출력은 예 1을 참조하세요.

예제 5: 시작 구성을 사용하는 Auto Scaling 그룹 설명

이 예제에서는 --query 옵션을 사용하여 시작 구성을 사용하는 Auto Scaling 그룹을 설명합니다.

aws autoscaling describe-auto-scaling-groups \ --query 'AutoScalingGroups[?LaunchConfigurationName!=`null`]'

출력:

[ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480f03:autoScalingGroupName/my-asg", "LaunchConfigurationName": "my-lc", "MinSize": 0, "MaxSize": 1, "DesiredCapacity": 1, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a", "us-west-2b", "us-west-2c" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 0, "Instances": [ { "InstanceId": "i-088c57934a6449037", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2c", "HealthStatus": "Healthy", "LifecycleState": "InService", "LaunchConfigurationName": "my-lc", "ProtectedFromScaleIn": false } ], "CreatedTime": "2023-10-28T02:39:22.152Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN":"arn", "TrafficSources": [] } ]

자세한 내용은 AWS 명령줄 인터페이스 사용 설명서출력 필터링 AWS CLI을 참조하세요.

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

AWS CLI

예 1: 하나 이상의 인스턴스를 설명하는 방법

이 예시에서는 지정된 인스턴스를 설명합니다.

aws autoscaling describe-auto-scaling-instances \ --instance-ids i-06905f55584de02da

출력:

{ "AutoScalingInstances": [ { "InstanceId": "i-06905f55584de02da", "InstanceType": "t2.micro", "AutoScalingGroupName": "my-asg", "AvailabilityZone": "us-west-2b", "LifecycleState": "InService", "HealthStatus": "HEALTHY", "ProtectedFromScaleIn": false, "LaunchTemplate": { "LaunchTemplateId": "lt-1234567890abcde12", "LaunchTemplateName": "my-launch-template", "Version": "1" } } ] }

예 2: 하나 이상의 인스턴스를 설명하는 방법

이 예시에서는 --max-items 옵션을 사용하여 이 직접 호출과 함께 반환할 인스턴스 수를 지정합니다.

aws autoscaling describe-auto-scaling-instances \ --max-items 1

출력에 NextToken 필드가 포함된 경우 인스턴스가 더 많습니다. 추가 인스턴스를 가져오려면 다음과 같이 후속 직접 호출에서 이 필드의 값을 --starting-token 옵션과 함께 사용하세요.

aws autoscaling describe-auto-scaling-instances \ --starting-token Z3M3LMPEXAMPLE

샘플 출력은 예 1을 참조하세요.

예제 3: 시작 구성을 사용하는 인스턴스 설명

이 예제에서는 --query 옵션을 사용하여 시작 구성을 사용하는 인스턴스를 설명합니다.

aws autoscaling describe-auto-scaling-instances \ --query 'AutoScalingInstances[?LaunchConfigurationName!=`null`]'

출력:

[ { "InstanceId": "i-088c57934a6449037", "InstanceType": "t2.micro", "AutoScalingGroupName": "my-asg", "AvailabilityZone": "us-west-2c", "LifecycleState": "InService", "HealthStatus": "HEALTHY", "LaunchConfigurationName": "my-lc", "ProtectedFromScaleIn": false } ]

자세한 내용은 AWS 명령줄 인터페이스 사용 설명서출력 필터링 AWS CLI을 참조하세요.

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

AWS CLI

사용 가능한 알림 유형을 설명하려면

이 예제에서는 사용 가능한 알림 유형을 설명합니다.

aws autoscaling describe-auto-scaling-notification-types

출력:

{ "AutoScalingNotificationTypes": [ "autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_LAUNCH_ERROR", "autoscaling:EC2_INSTANCE_TERMINATE", "autoscaling:EC2_INSTANCE_TERMINATE_ERROR", "autoscaling:TEST_NOTIFICATION" ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹이 확장될 때 Amazon SNS 알림 받기를 참조하세요. EC2 Auto Scaling

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

AWS CLI

인스턴스 새로 고침을 설명하려면

다음 describe-instance-refreshes 예제에서는 상태 메시지 및 상태 이유(사용 가능한 경우)를 포함하여 지정된 Auto Scaling 그룹에 대한 모든 인스턴스 새로 고침 요청에 대한 설명을 반환합니다.

aws autoscaling describe-instance-refreshes \ --auto-scaling-group-name my-asg

출력:

{ "InstanceRefreshes": [ { "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b", "AutoScalingGroupName": "my-asg", "Status": "InProgress", "StatusReason": "Waiting for instances to warm up before continuing. For example: 0e69cc3f05f825f4f is warming up.", "EndTime": "2023-03-23T16:42:55Z", "PercentageComplete": 0, "InstancesToUpdate": 0, "Preferences": { "MinHealthyPercentage": 100, "InstanceWarmup": 300, "CheckpointPercentages": [ 50 ], "CheckpointDelay": 3600, "SkipMatching": false, "AutoRollback": true, "ScaleInProtectedInstances": "Ignore", "StandbyInstances": "Ignore" } }, { "InstanceRefreshId": "dd7728d0-5bc4-4575-96a3-1b2c52bf8bb1", "AutoScalingGroupName": "my-asg", "Status": "Successful", "EndTime": "2022-06-02T16:53:37Z", "PercentageComplete": 100, "InstancesToUpdate": 0, "Preferences": { "MinHealthyPercentage": 90, "InstanceWarmup": 300, "SkipMatching": true, "AutoRollback": true, "ScaleInProtectedInstances": "Ignore", "StandbyInstances": "Ignore" } } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 인스턴스 새로 고침 상태 확인을 참조하세요.

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

AWS CLI

예제 1: 지정된 시작 구성을 설명하려면

이 예제에서는 지정된 시작 구성을 설명합니다.

aws autoscaling describe-launch-configurations \ --launch-configuration-names my-launch-config

출력:

{ "LaunchConfigurations": [ { "LaunchConfigurationName": "my-launch-config", "LaunchConfigurationARN": "arn:aws:autoscaling:us-west-2:123456789012:launchConfiguration:98d3b196-4cf9-4e88-8ca1-8547c24ced8b:launchConfigurationName/my-launch-config", "ImageId": "ami-0528a5175983e7f28", "KeyName": "my-key-pair-uswest2", "SecurityGroups": [ "sg-05eaec502fcdadc2e" ], "ClassicLinkVPCSecurityGroups": [], "UserData": "", "InstanceType": "t2.micro", "KernelId": "", "RamdiskId": "", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "SnapshotId": "snap-06c1606ba5ca274b1", "VolumeSize": 8, "VolumeType": "gp2", "DeleteOnTermination": true, "Encrypted": false } } ], "InstanceMonitoring": { "Enabled": true }, "CreatedTime": "2020-10-28T02:39:22.321Z", "EbsOptimized": false, "AssociatePublicIpAddress": true, "MetadataOptions": { "HttpTokens": "required", "HttpPutResponseHopLimit": 1, "HttpEndpoint": "disabled" } } ] }

예제 2: 지정된 수의 시작 구성을 설명하려면

특정 수의 시작 구성을 반환하려면 --max-items 옵션을 사용합니다.

aws autoscaling describe-launch-configurations \ --max-items 1

출력에 NextToken 필드가 포함된 경우 시작 구성이 더 많습니다. 추가 시작 구성을 가져오려면 다음과 같이 후속 통화에서 --starting-token 옵션과 함께 이 필드의 값을 사용합니다.

aws autoscaling describe-launch-configurations \ --starting-token Z3M3LMPEXAMPLE

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

AWS CLI

사용 가능한 수명 주기 후크 유형을 설명하려면

이 예제에서는 사용 가능한 수명 주기 후크 유형을 설명합니다.

aws autoscaling describe-lifecycle-hook-types

출력:

{ "LifecycleHookTypes": [ "autoscaling:EC2_INSTANCE_LAUNCHING", "autoscaling:EC2_INSTANCE_TERMINATING" ] }

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

AWS CLI

수명 주기 후크를 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹의 수명 주기 후크를 설명합니다.

aws autoscaling describe-lifecycle-hooks \ --auto-scaling-group-name my-asg

출력:

{ "LifecycleHooks": [ { "GlobalTimeout": 3000, "HeartbeatTimeout": 30, "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-launch-hook", "DefaultResult": "ABANDON", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING" }, { "GlobalTimeout": 6000, "HeartbeatTimeout": 60, "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-termination-hook", "DefaultResult": "CONTINUE", "LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING" } ] }

다음 코드 예시에서는 describe-load-balancer-target-groups을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹의 로드 밸런서 대상 그룹을 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹에 연결된 로드 밸런서 대상 그룹에 대해 설명합니다.

aws autoscaling describe-load-balancer-target-groups \ --auto-scaling-group-name my-asg

출력:

{ "LoadBalancerTargetGroups": [ { "LoadBalancerTargetGroupARN": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "State": "Added" } ] }

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

AWS CLI

Auto Scaling 그룹의 Classic Load Balancer를 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹의 Classic Load Balancer에 대해 설명합니다.

aws autoscaling describe-load-balancers \ --auto-scaling-group-name my-asg

출력:

{ "LoadBalancers": [ { "State": "Added", "LoadBalancerName": "my-load-balancer" } ] }

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

AWS CLI

사용 가능한 지표 컬렉션 유형을 설명하려면

이 예제에서는 사용 가능한 지표 컬렉션 유형을 설명합니다.

aws autoscaling describe-metric-collection-types

출력:

{ "Metrics": [ { "Metric": "GroupMinSize" }, { "Metric": "GroupMaxSize" }, { "Metric": "GroupDesiredCapacity" }, { "Metric": "GroupInServiceInstances" }, { "Metric": "GroupInServiceCapacity" }, { "Metric": "GroupPendingInstances" }, { "Metric": "GroupPendingCapacity" }, { "Metric": "GroupTerminatingInstances" }, { "Metric": "GroupTerminatingCapacity" }, { "Metric": "GroupStandbyInstances" }, { "Metric": "GroupStandbyCapacity" }, { "Metric": "GroupTotalInstances" }, { "Metric": "GroupTotalCapacity" } ], "Granularities": [ { "Granularity": "1Minute" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 지표를 참조하세요. EC2 Auto Scaling

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

AWS CLI

예제 1: 지정된 그룹의 알림 구성을 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹에 대한 알림 구성을 설명합니다.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-asg

출력:

{ "NotificationConfigurations": [ { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic-2" }, { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹이 확장될 때 Amazon SNS 알림 받기를 참조하세요. EC2 Auto Scaling

예제 1: 지정된 수의 알림 구성을 설명하려면

특정 수의 알림 구성을 반환하려면 max-items 파라미터를 사용합니다.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-auto-scaling-group \ --max-items 1

출력:

{ "NotificationConfigurations": [ { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic-2" }, { "AutoScalingGroupName": "my-asg", "NotificationType": "autoscaling:TEST_NOTIFICATION", "TopicARN": "arn:aws:sns:us-west-2:123456789012:my-sns-topic" } ] }

출력에 NextToken 필드가 포함된 경우 알림 구성이 더 많습니다. 추가 알림 구성을 가져오려면 다음과 같이 후속 호출에서 starting-token 파라미터와 함께 이 필드의 값을 사용합니다.

aws autoscaling describe-notification-configurations \ --auto-scaling-group-name my-asg \ --starting-token Z3M3LMPEXAMPLE

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹이 확장될 때 Amazon SNS 알림 받기를 참조하세요. EC2 Auto Scaling

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

AWS CLI

예제 1: 지정된 그룹의 조정 정책을 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹에 대한 조정 정책을 설명합니다.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg

출력:

{ "ScalingPolicies": [ { "AutoScalingGroupName": "my-asg", "PolicyName": "alb1000-target-tracking-scaling-policy", "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:3065d9c8-9969-4bec-bb6a-3fbe5550fde6:autoScalingGroupName/my-asg:policyName/alb1000-target-tracking-scaling-policy", "PolicyType": "TargetTrackingScaling", "StepAdjustments": [], "Alarms": [ { "AlarmName": "TargetTracking-my-asg-AlarmHigh-924887a9-12d7-4e01-8686-6f844d13a196", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-924887a9-12d7-4e01-8686-6f844d13a196" }, { "AlarmName": "TargetTracking-my-asg-AlarmLow-f96f899d-b8e7-4d09-a010-c1aaa35da296", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-f96f899d-b8e7-4d09-a010-c1aaa35da296" } ], "TargetTrackingConfiguration": { "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" }, "TargetValue": 1000.0, "DisableScaleIn": false }, "Enabled": true }, { "AutoScalingGroupName": "my-asg", "PolicyName": "cpu40-target-tracking-scaling-policy", "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:5fd26f71-39d4-4690-82a9-b8515c45cdde:autoScalingGroupName/my-asg:policyName/cpu40-target-tracking-scaling-policy", "PolicyType": "TargetTrackingScaling", "StepAdjustments": [], "Alarms": [ { "AlarmName": "TargetTracking-my-asg-AlarmHigh-139f9789-37b9-42ad-bea5-b5b147d7f473", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-139f9789-37b9-42ad-bea5-b5b147d7f473" }, { "AlarmName": "TargetTracking-my-asg-AlarmLow-bd681c67-fc18-4c56-8468-fb8e413009c9", "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-bd681c67-fc18-4c56-8468-fb8e413009c9" } ], "TargetTrackingConfiguration": { "PredefinedMetricSpecification": { "PredefinedMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 40.0, "DisableScaleIn": false }, "Enabled": true } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 동적 조정을 참조하세요. EC2 Auto Scaling

예제 2: 지정된 이름의 조정 정책을 설명하는 방법

특정 조정 정책을 반환하려면 --policy-names 옵션을 사용합니다.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg \ --policy-names cpu40-target-tracking-scaling-policy

샘플 출력은 예 1을 참조하세요.

자세한 내용은 Amazon Auto Scaling 사용 설명서의 동적 조정을 참조하세요. EC2 Auto Scaling

예제 3: 여러 조정 정책을 설명하는 방법

특정 수의 정책을 반환하려면 --max-items 옵션을 사용합니다.

aws autoscaling describe-policies \ --auto-scaling-group-name my-asg \ --max-items 1

샘플 출력은 예 1을 참조하세요.

출력에 NextToken 필드가 포함된 경우 이 필드의 값을 후속 호출의 --starting-token 옵션과 함께 사용하여 추가 정책을 가져옵니다.

aws autoscaling describe-policies --auto-scaling-group-name my-asg --starting-token Z3M3LMPEXAMPLE

자세한 내용은 Amazon Auto Scaling 사용 설명서의 동적 조정을 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

예 1: 지정된 그룹에 대한 크기 조정 활동을 설명하는 방법

이 예시에서는 지정된 Auto Scaling 그룹에 대한 크기 조정 활동을 설명합니다.

aws autoscaling describe-scaling-activities \ --auto-scaling-group-name my-asg

출력:

{ "Activities": [ { "ActivityId": "f9f2d65b-f1f2-43e7-b46d-d86756459699", "Description": "Launching a new EC2 instance: i-0d44425630326060f", "AutoScalingGroupName": "my-asg", "Cause": "At 2020-10-30T19:35:51Z a user request update of AutoScalingGroup constraints to min: 0, max: 16, desired: 16 changing the desired capacity from 0 to 16. At 2020-10-30T19:36:07Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 16.", "StartTime": "2020-10-30T19:36:09.766Z", "EndTime": "2020-10-30T19:36:41Z", "StatusCode": "Successful", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹에 대한 조정 활동 확인을 참조하세요. EC2 Auto Scaling

예 2: 삭제된 그룹에 대한 크기 조정 활동을 설명하는 방법

Auto Scaling 그룹이 삭제된 후 크기 조정 활동을 설명하려면 --include-deleted-groups 옵션을 추가하세요.

aws autoscaling describe-scaling-activities \ --auto-scaling-group-name my-asg \ --include-deleted-groups

출력:

{ "Activities": [ { "ActivityId": "e1f5de0e-f93e-1417-34ac-092a76fba220", "Description": "Launching a new EC2 instance. Status Reason: Your Spot request price of 0.001 is lower than the minimum required Spot request fulfillment price of 0.0031. Launching EC2 instance failed.", "AutoScalingGroupName": "my-asg", "Cause": "At 2021-01-13T20:47:24Z a user request update of AutoScalingGroup constraints to min: 1, max: 5, desired: 3 changing the desired capacity from 0 to 3. At 2021-01-13T20:47:27Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 3.", "StartTime": "2021-01-13T20:47:30.094Z", "EndTime": "2021-01-13T20:47:30Z", "StatusCode": "Failed", "StatusMessage": "Your Spot request price of 0.001 is lower than the minimum required Spot request fulfillment price of 0.0031. Launching EC2 instance failed.", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}", "AutoScalingGroupState": "Deleted", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:283179a2-f3ce-423d-93f6-66bb518232f7:autoScalingGroupName/my-asg" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 문제 해결을 참조하세요. EC2 Auto Scaling

예 3: 지정된 개수의 크기 조정 활동을 설명하는 방법

특정 개수의 활동을 반환하려면 --max-items 옵션을 사용하세요.

aws autoscaling describe-scaling-activities \ --max-items 1

출력:

{ "Activities": [ { "ActivityId": "f9f2d65b-f1f2-43e7-b46d-d86756459699", "Description": "Launching a new EC2 instance: i-0d44425630326060f", "AutoScalingGroupName": "my-asg", "Cause": "At 2020-10-30T19:35:51Z a user request update of AutoScalingGroup constraints to min: 0, max: 16, desired: 16 changing the desired capacity from 0 to 16. At 2020-10-30T19:36:07Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 0 to 16.", "StartTime": "2020-10-30T19:36:09.766Z", "EndTime": "2020-10-30T19:36:41Z", "StatusCode": "Successful", "Progress": 100, "Details": "{\"Subnet ID\":\"subnet-5ea0c127\",\"Availability Zone\":\"us-west-2b\"}" } ] }

출력에 NextToken 필드가 포함된 경우 활동이 더 많습니다. 추가 활동을 가져오려면 다음과 같이 후속 직접 호출에서 이 필드의 값을 --starting-token 옵션과 함께 사용하세요.

aws autoscaling describe-scaling-activities \ --starting-token Z3M3LMPEXAMPLE

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹에 대한 조정 활동 확인을 참조하세요. EC2 Auto Scaling

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

AWS CLI

사용 가능한 프로세스 유형을 설명하려면

이 예제에서는 사용 가능한 프로세스 유형을 설명합니다.

aws autoscaling describe-scaling-process-types

출력:

{ "Processes": [ { "ProcessName": "AZRebalance" }, { "ProcessName": "AddToLoadBalancer" }, { "ProcessName": "AlarmNotification" }, { "ProcessName": "HealthCheck" }, { "ProcessName": "InstanceRefresh" }, { "ProcessName": "Launch" }, { "ProcessName": "ReplaceUnhealthy" }, { "ProcessName": "ScheduledActions" }, { "ProcessName": "Terminate" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서조정 프로세스 일시 중지 및 재개를 참조하세요.

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

AWS CLI

예제 1: 예약된 모든 작업을 설명하려면

이 예제에서는 예약된 모든 작업에 대해 설명합니다.

aws autoscaling describe-scheduled-actions

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

예제 2: 지정된 그룹에 대해 예약된 작업을 설명하려면

특정 Auto Scaling 그룹에 대해 예약된 작업을 설명하려면 --auto-scaling-group-name 옵션을 사용합니다.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 예약된 조정을 참조하세요. EC2 Auto Scaling

예제 3: 지정된 예약된 작업을 설명하려면

특정 예약된 작업을 설명하려면 --scheduled-action-names 옵션을 사용합니다.

aws autoscaling describe-scheduled-actions \ --scheduled-action-names my-recurring-action

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 예약된 조정을 참조하세요. EC2 Auto Scaling

예제 4: 지정된 시작 시간으로 예약된 작업을 설명하는 방법

특정 시간에 시작하는 예약된 작업을 설명하려면 --start-time 옵션을 사용합니다.

aws autoscaling describe-scheduled-actions \ --start-time "2023-12-01T04:00:00Z"

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

예제 5: 지정된 시간에 종료되는 예약된 작업을 설명하려면

특정 시간에 종료되는 예약된 작업을 설명하려면 --end-time 옵션을 사용합니다.

aws autoscaling describe-scheduled-actions \ --end-time "2023-12-01T04:00:00Z"

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

예제 6: 지정된 수의 예약된 작업을 설명하려면

특정 수의 예약된 작업을 반환하려면 --max-items 옵션을 사용합니다.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg \ --max-items 1

출력:

{ "ScheduledUpdateGroupActions": [ { "AutoScalingGroupName": "my-asg", "ScheduledActionName": "my-recurring-action", "Recurrence": "30 0 1 1,6,12 *", "ScheduledActionARN": "arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8e86b655-b2e6-4410-8f29-b4f094d6871c:autoScalingGroupName/my-asg:scheduledActionName/my-recurring-action", "StartTime": "2023-12-01T04:00:00Z", "Time": "2023-12-01T04:00:00Z", "MinSize": 1, "MaxSize": 6, "DesiredCapacity": 4, "TimeZone": "America/New_York" } ] }

출력에 NextToken 필드가 포함된 경우 더 많은 예약된 작업이 있습니다. 추가 예약된 작업을 가져오려면 다음과 같이 후속 통화에서 --starting-token 옵션과 함께 이 필드의 값을 사용합니다.

aws autoscaling describe-scheduled-actions \ --auto-scaling-group-name my-asg \ --starting-token Z3M3LMPEXAMPLE

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

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

AWS CLI

모든 태그를 설명하려면

이 예제에서는 모든 태그를 설명합니다.

aws autoscaling describe-tags

출력:

{ "Tags": [ { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "Research", "Key": "Dept" }, { "ResourceType": "auto-scaling-group", "ResourceId": "my-asg", "PropagateAtLaunch": true, "Value": "WebServer", "Key": "Role" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스 태그를 참조하세요. EC2 Auto Scaling

예제 2: 지정된 그룹에 대한 태그를 설명하려면

특정 Auto Scaling 그룹에 대한 태그를 설명하려면 --filters 옵션을 사용합니다.

aws autoscaling describe-tags --filters Name=auto-scaling-group,Values=my-asg

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스 태그를 참조하세요. EC2 Auto Scaling

예제 3: 지정된 태그 수를 설명하려면

특정 수의 태그를 반환하려면 --max-items 옵션을 사용합니다.

aws autoscaling describe-tags \ --max-items 1

출력에 NextToken 필드가 포함된 경우 태그가 더 많습니다. 추가 태그를 가져오려면 다음과 같이 후속 통화에서 --starting-token 옵션과 함께 이 필드의 값을 사용합니다.

aws autoscaling describe-tags \ --filters Name=auto-scaling-group,Values=my-asg \ --starting-token Z3M3LMPEXAMPLE

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스 태그 지정을 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

사용 가능한 종료 정책 유형을 설명하려면

이 예제에서는 사용 가능한 종료 정책 유형을 설명합니다.

aws autoscaling describe-termination-policy-types

출력:

{ "TerminationPolicyTypes": [ "AllocationStrategy", "ClosestToNextInstanceHour", "Default", "NewestInstance", "OldestInstance", "OldestLaunchConfiguration", "OldestLaunchTemplate" ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 에서 스케일링 중에 종료되는 Auto Scaling 인스턴스 제어를 참조하세요. EC2 Auto Scaling

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

AWS CLI

웜 풀을 설명하려면

이 예제에서는 지정된 Auto Scaling 그룹의 웜 풀을 설명합니다.

aws autoscaling describe-warm-pool \ --auto-scaling-group-name my-asg

출력:

{ "WarmPoolConfiguration": { "MinSize": 2, "PoolState": "Stopped" }, "Instances": [ { "InstanceId": "i-070a5bbc7e7f40dc5", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2c", "LifecycleState": "Warmed:Pending", "HealthStatus": "Healthy", "LaunchTemplate": { "LaunchTemplateId": "lt-00a731f6e9fa48610", "LaunchTemplateName": "my-template-for-auto-scaling", "Version": "6" } }, { "InstanceId": "i-0b52f061814d3bd2d", "InstanceType": "t2.micro", "AvailabilityZone": "us-west-2b", "LifecycleState": "Warmed:Pending", "HealthStatus": "Healthy", "LaunchTemplate": { "LaunchTemplateId": "lt-00a731f6e9fa48610", "LaunchTemplateName": "my-template-for-auto-scaling", "Version": "6" } } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling용 웜 풀을 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

Auto Scaling 그룹에서 인스턴스를 분리하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 인스턴스를 분리합니다.

aws autoscaling detach-instances \ --instance-ids i-030017cfa84b20135 \ --auto-scaling-group-name my-asg \ --should-decrement-desired-capacity

출력:

{ "Activities": [ { "ActivityId": "5091cb52-547a-47ce-a236-c9ccbc2cb2c9", "AutoScalingGroupName": "my-asg", "Description": "Detaching EC2 instance: i-030017cfa84b20135", "Cause": "At 2020-10-31T17:35:04Z instance i-030017cfa84b20135 was detached in response to a user request, shrinking the capacity from 2 to 1.", "StartTime": "2020-04-12T15:02:16.179Z", "StatusCode": "InProgress", "Progress": 50, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }
  • 자세한 API 내용은 명령 참조DetachInstances의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 detach-load-balancer-target-groups을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹에서 로드 밸런서 대상 그룹을 분리하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 로드 밸런서 대상 그룹을 분리합니다.

aws autoscaling detach-load-balancer-target-groups \ --auto-scaling-group-name my-asg \ --target-group-arns arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹에 로드 밸런서 연결을 참조하세요. EC2 Auto Scaling

다음 코드 예시에서는 detach-load-balancers을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹에서 Classic Load Balancer를 분리하려면

이 예제에서는 지정된 Auto Scaling 그룹에서 지정된 Classic Load Balancer를 분리합니다.

aws autoscaling detach-load-balancers \ --load-balancer-names my-load-balancer \ --auto-scaling-group-name my-asg

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹에 로드 밸런서 연결을 참조하세요. EC2 Auto Scaling

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

다음 코드 예시에서는 disable-metrics-collection을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹 지표 수집을 비활성화는 방법

이 예시에서는 지정된 Auto Scaling 그룹에 대한 GroupDesiredCapacity 지표 수집을 비활성화합니다.

aws autoscaling disable-metrics-collection \ --auto-scaling-group-name my-asg \ --metrics GroupDesiredCapacity

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스에 대한 CloudWatch 지표 모니터링을 참조하세요. EC2 Auto Scaling

다음 코드 예시에서는 enable-metrics-collection을 사용하는 방법을 보여 줍니다.

AWS CLI

예 1: Auto Scaling 그룹 지표 수집을 활성화하는 방법

이 예시에서는 지정된 Auto Scaling 그룹에 대한 데이터 수집을 활성화합니다.

aws autoscaling enable-metrics-collection \ --auto-scaling-group-name my-asg \ --granularity "1Minute"

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스에 대한 CloudWatch 지표 모니터링을 참조하세요. EC2 Auto Scaling

예 2: Auto Scaling 그룹의 지정된 지표에 대한 데이터를 수집하는 방법

특정 지표에 대한 데이터를 수집하려면 --metrics 옵션을 사용하세요.

aws autoscaling enable-metrics-collection \ --auto-scaling-group-name my-asg \ --metrics GroupDesiredCapacity --granularity "1Minute"

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹 및 인스턴스에 대한 CloudWatch 지표 모니터링을 참조하세요. EC2 Auto Scaling

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

AWS CLI

인스턴스를 대기 모드로 이동하려면

이 예제에서는 지정된 인스턴스를 대기 모드로 전환합니다. 이는 현재 사용 중인 인스턴스를 업데이트하거나 문제를 해결하는 데 유용합니다.

aws autoscaling enter-standby \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg \ --should-decrement-desired-capacity

출력:

{ "Activities": [ { "ActivityId": "ffa056b4-6ed3-41ba-ae7c-249dfae6eba1", "AutoScalingGroupName": "my-asg", "Description": "Moving EC2 instance to Standby: i-061c63c5eb45f0416", "Cause": "At 2020-10-31T20:31:00Z instance i-061c63c5eb45f0416 was moved to standby in response to a user request, shrinking the capacity from 1 to 0.", "StartTime": "2020-10-31T20:31:00.949Z", "StatusCode": "InProgress", "Progress": 50, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 인스턴스 수명 주기를 참조하세요. EC2 Auto Scaling

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

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

AWS CLI

조정 정책을 실행하려면

이 예제에서는 지정된 Auto Scaling 그룹에 my-step-scale-out-policy 대해 라는 조정 정책을 실행합니다.

aws autoscaling execute-policy \ --auto-scaling-group-name my-asg \ --policy-name my-step-scale-out-policy \ --metric-value 95 \ --breach-threshold 80

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서단계 및 간단한 조정 정책을 참조하세요.

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

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

AWS CLI

대기 모드에서 인스턴스를 이동하려면

이 예제에서는 지정된 인스턴스를 대기 모드에서 벗어납니다.

aws autoscaling exit-standby \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg

출력:

{ "Activities": [ { "ActivityId": "142928e1-a2dc-453a-9b24-b85ad6735928", "AutoScalingGroupName": "my-asg", "Description": "Moving EC2 instance out of Standby: i-061c63c5eb45f0416", "Cause": "At 2020-10-31T20:32:50Z instance i-061c63c5eb45f0416 was moved out of standby in response to a user request, increasing the capacity from 0 to 1.", "StartTime": "2020-10-31T20:32:50.222Z", "StatusCode": "PreInService", "Progress": 30, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹에서 인스턴스를 일시적으로 제거하는 단원을 참조하세요. EC2 Auto Scaling

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

다음 코드 예시에서는 put-lifecycle-hook을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 수명 주기 후크 생성

이 예제에서는 4,800초의 제한 시간으로 새로 시작된 인스턴스에서 호출할 수명 주기 후크를 생성합니다. 이는 사용자 데이터 스크립트가 완료될 때까지 인스턴스를 대기 상태로 유지하거나 를 사용하여 AWS Lambda 함수를 호출하는 데 유용합니다 EventBridge.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --heartbeat-timeout 4800

이 명령은 출력을 생성하지 않습니다. 동일한 이름의 수명 주기 후크가 이미 있는 경우 새 수명 주기 후크로 덮어씁니다.

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

예제 2: 인스턴스 상태 전환을 알리기 위해 Amazon SNS 이메일 메시지를 보내려면

이 예제에서는 인스턴스 시작 시 알림을 수신하는 데 사용할 Amazon SNS 주제 및 IAM 역할과 함께 수명 주기 후크를 생성합니다.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \ --role-arn arn:aws:iam::123456789012:role/my-auto-scaling-role

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

예제 3: Amazon SQS 대기열에 메시지를 게시하는 방법

이 예제에서는 메타데이터가 포함된 메시지를 지정된 Amazon SQS 대기열에 게시하는 수명 주기 후크를 생성합니다.

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sqs:us-west-2:123456789012:my-sqs-queue \ --role-arn arn:aws:iam::123456789012:role/my-notification-role \ --notification-metadata "SQS message metadata"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

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

다음 코드 예시에서는 put-notification-configuration을 사용하는 방법을 보여 줍니다.

AWS CLI

알림을 추가하려면

이 예제에서는 지정된 Auto Scaling 그룹에 지정된 알림을 추가합니다.

aws autoscaling put-notification-configuration \ --auto-scaling-group-name my-asg \ --topic-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \ --notification-type autoscaling:TEST_NOTIFICATION

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹이 확장될 때 Amazon SNS 알림 받기를 참조하세요. EC2 Auto Scaling

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

AWS CLI

Auto Scaling 그룹에 대상 추적 조정 정책을 추가하려면

다음 put-scaling-policy 예제에서는 지정된 Auto Scaling 그룹에 대상 추적 조정 정책을 적용합니다. 출력에는 사용자를 대신하여 생성된 두 CloudWatch 경보의 ARNs 및 이름이 포함됩니다. 이름이 같은 조정 정책이 이미 있는 경우 새 조정 정책으로 덮어씁니다.

aws autoscaling put-scaling-policy --auto-scaling-group-name my-asg \ --policy-name alb1000-target-tracking-scaling-policy \ --policy-type TargetTrackingScaling \ --target-tracking-configuration file://config.json

config.json의 콘텐츠:

{ "TargetValue": 1000.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" } }

출력:

{ "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/alb1000-target-tracking-scaling-policy", "Alarms": [ { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e", "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e" }, { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2", "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2" } ] }

자세한 예는 Amazon EC2 Auto Scaling 사용 설명서AWS 명령줄 인터페이스(AWS CLI)에 대한 조정 정책 예제를 참조하세요.

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

다음 코드 예시에서는 put-scheduled-update-group-action을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Auto Scaling 그룹에 예약된 작업을 추가하려면

이 예제에서는 지정된 Auto Scaling 그룹에 지정된 예약된 작업을 추가합니다.

aws autoscaling put-scheduled-update-group-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-scheduled-action \ --start-time "2023-05-12T08:00:00Z" \ --min-size 2 \ --max-size 6 \ --desired-capacity 4

이 명령은 출력을 생성하지 않습니다. 동일한 이름의 예약된 작업이 이미 있는 경우 새 예약된 작업으로 덮어씁니다.

자세한 예는 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

예제 2: 반복 일정을 지정하려면

이 예제에서는 매년 1월, 6월, 12월 1일에 00:30시에 실행되도록 예약된 작업을 생성하여 반복 일정에 따라 확장합니다.

aws autoscaling put-scheduled-update-group-action \ --auto-scaling-group-name my-asg \ --scheduled-action-name my-recurring-action \ --recurrence "30 0 1 1,6,12 *" \ --min-size 2 \ --max-size 6 \ --desired-capacity 4

이 명령은 출력을 생성하지 않습니다. 동일한 이름의 예약된 작업이 이미 있는 경우 새 예약된 작업으로 덮어씁니다.

자세한 예는 Amazon EC2 Auto Scaling 사용 설명서예약된 조정을 참조하세요.

다음 코드 예시에서는 put-warm-pool을 사용하는 방법을 보여 줍니다.

AWS CLI

웜 풀을 생성하려면

다음 예제에서는 지정된 Auto Scaling 그룹에 대한 웜 풀을 생성합니다.

aws autoscaling put-warm-pool \ --auto-scaling-group-name my-asg \ --min-size 2

이 명령은 출력을 생성하지 않습니다. 웜 풀이 이미 있는 경우 업데이트됩니다.

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling용 웜 풀을 참조하세요. EC2 Auto Scaling

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

다음 코드 예시에서는 record-lifecycle-action-heartbeat을 사용하는 방법을 보여 줍니다.

AWS CLI

수명 주기 작업 하트비트를 기록하려면

이 예제에서는 인스턴스를 보류 상태로 유지하기 위해 수명 주기 작업 하트비트를 기록합니다.

aws autoscaling record-lifecycle-action-heartbeat \ --lifecycle-hook-name my-launch-hook \ --auto-scaling-group-name my-asg \ --lifecycle-action-token bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Amazon Auto Scaling 수명 주기 후크를 참조하세요. EC2 Auto Scaling

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

AWS CLI

일시 중지된 프로세스를 재개하려면

이 예제에서는 지정된 Auto Scaling 그룹에 대해 지정된 일시 중지된 조정 프로세스를 재개합니다.

aws autoscaling resume-processes \ --auto-scaling-group-name my-asg \ --scaling-processes AlarmNotification

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서조정 프로세스 일시 중지 및 재개를 참조하세요.

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

다음 코드 예시에서는 rollback-instance-refresh을 사용하는 방법을 보여 줍니다.

AWS CLI

인스턴스 새로 고침을 롤백하려면

다음 rollback-instance-refresh 예제에서는 지정된 Auto Scaling 그룹에 대해 진행 중인 인스턴스 새로 고침을 롤백합니다.

aws autoscaling rollback-instance-refresh \ --auto-scaling-group-name my-asg

출력:

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서롤백으로 변경 사항 실행 취소를 참조하세요.

다음 코드 예시에서는 set-desired-capacity을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹에 원하는 용량을 설정하는 방법

이 예시에서는 지정된 Auto Scaling 그룹에 원하는 용량을 설정합니다.

aws autoscaling set-desired-capacity \ --auto-scaling-group-name my-asg \ --desired-capacity 2 \ --honor-cooldown

이 명령은 성공하면 프롬프트로 돌아갑니다.

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

다음 코드 예시에서는 set-instance-health을 사용하는 방법을 보여 줍니다.

AWS CLI

인스턴스의 상태를 설정하려면

이 예제에서는 지정된 인스턴스의 상태를 로 설정합니다Unhealthy.

aws autoscaling set-instance-health \ --instance-id i-061c63c5eb45f0416 \ --health-status Unhealthy

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

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

다음 코드 예시에서는 set-instance-protection을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 인스턴스에 대한 인스턴스 보호 설정을 활성화하려면

이 예제에서는 지정된 인스턴스에 대한 인스턴스 보호를 활성화합니다.

aws autoscaling set-instance-protection \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg --protected-from-scale-in

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

예제 2: 인스턴스에 대한 인스턴스 보호 설정을 비활성화하려면

이 예제에서는 지정된 인스턴스에 대한 인스턴스 보호를 비활성화합니다.

aws autoscaling set-instance-protection \ --instance-ids i-061c63c5eb45f0416 \ --auto-scaling-group-name my-asg \ --no-protected-from-scale-in

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

다음 코드 예시에서는 start-instance-refresh을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 명령줄 파라미터를 사용하여 인스턴스 새로 고침을 시작하려면

다음 start-instance-refresh 예제에서는 명령줄 인수를 사용하여 인스턴스 새로 고침을 시작합니다. 선택적 preferences 파라미터는 60InstanceWarmup의 와 50 퍼센트MinHealthyPercentage의 를 지정합니다.

aws autoscaling start-instance-refresh \ --auto-scaling-group-name my-asg \ --preferences '{"InstanceWarmup": 60, "MinHealthyPercentage": 50}'

출력:

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서인스턴스 새로 고침 시작을 참조하세요.

예제 2: JSON 파일을 사용하여 인스턴스 새로 고침을 시작하려면

다음 start-instance-refresh 예제에서는 JSON 파일을 사용하여 인스턴스 새로 고침을 시작합니다. 다음 예제와 같이 Auto Scaling 그룹을 지정하고 원하는 구성 및 기본 설정을 JSON 파일에 정의할 수 있습니다.

aws autoscaling start-instance-refresh \ --cli-input-json file://config.json

config.json의 콘텐츠:

{ "AutoScalingGroupName": "my-asg", "DesiredConfiguration": { "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b729example", "Version": "$Default" } }, "Preferences": { "InstanceWarmup": 60, "MinHealthyPercentage": 50, "AutoRollback": true, "ScaleInProtectedInstances": Ignore, "StandbyInstances": Terminate } }

출력:

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서인스턴스 새로 고침 시작을 참조하세요.

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

AWS CLI

Auto Scaling 프로세스를 일시 중지하려면

이 예제에서는 지정된 Auto Scaling 그룹에 대해 지정된 조정 프로세스를 일시 중지합니다.

aws autoscaling suspend-processes \ --auto-scaling-group-name my-asg \ --scaling-processes AlarmNotification

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서조정 프로세스 일시 중지 및 재개를 참조하세요.

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

다음 코드 예시에서는 terminate-instance-in-auto-scaling-group을 사용하는 방법을 보여 줍니다.

AWS CLI

Auto Scaling 그룹에서 인스턴스를 종료하는 방법

이 예시에서는 그룹 크기를 업데이트하지 않고 지정된 Auto Scaling 그룹에서 지정된 인스턴스를 종료합니다. Amazon EC2 Auto Scaling은 지정된 인스턴스가 종료된 후 대체 인스턴스를 시작합니다.

aws autoscaling terminate-instance-in-auto-scaling-group \ --instance-id i-061c63c5eb45f0416 \ --no-should-decrement-desired-capacity

출력:

{ "Activities": [ { "ActivityId": "8c35d601-793c-400c-fcd0-f64a27530df7", "AutoScalingGroupName": "my-asg", "Description": "Terminating EC2 instance: i-061c63c5eb45f0416", "Cause": "", "StartTime": "2020-10-31T20:34:25.680Z", "StatusCode": "InProgress", "Progress": 0, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

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

AWS CLI

예 1: Auto Scaling 그룹의 크기 한도를 업데이트하는 방법

이 예시에서는 지정된 Auto Scaling 그룹을 최소 크기가 2, 최대 크기가 10으로 업데이트합니다.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --min-size 2 \ --max-size 10

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹의 용량 제한 설정을 참조하세요. EC2 Auto Scaling

예 2: Elastic Load Balancing 상태 확인을 추가하고 사용할 가용 영역 및 서브넷을 지정하는 방법

이 예시에서는 Elastic Load Balancing 상태 확인을 추가하도록 지정된 Auto Scaling 그룹을 업데이트합니다. 또한 이 명령은 의 값을 IDs 여러 가용 영역의 서브넷 목록--vpc-zone-identifier으로 업데이트합니다.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --health-check-type ELB \ --health-check-grace-period 600 \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Elastic Load Balancing 및 Amazon Auto Scaling을 참조하세요. EC2 Auto Scaling

예 3: 배치 그룹 및 종료 정책을 업데이트하는 방법

이 예시에서는 사용할 배치 그룹 및 종료 정책을 업데이트합니다.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --placement-group my-placement-group \ --termination-policies "OldestInstance"

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 Auto Scaling 그룹을 참조하세요. EC2 Auto Scaling

예 4: 시작 템플릿의 최신 버전을 사용하는 방법

이 예시에서는 지정된 시작 템플릿의 최신 버전을 사용하도록 지정된 Auto Scaling 그룹을 업데이트합니다.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateId=lt-1234567890abcde12,Version='$Latest'

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서시작 템플릿을 참조하세요.

예 5: 시작 템플릿의 특정 버전을 사용하는 방법

이 예시에서는 시작 템플릿의 최신 또는 기본 버전 대신 특정 버전을 사용하도록 지정된 Auto Scaling 그룹을 업데이트합니다.

aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name my-asg \ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='2'

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

자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서시작 템플릿을 참조하세요.

예 6: 혼합 인스턴스 정책을 정의하고 용량 재분배를 활성화하는 방법

이 예시에서는 혼합 인스턴스 정책을 사용하도록 지정된 Auto Scaling 그룹을 업데이트하고 용량 재분배를 활성화합니다. 이 구조를 통해 스팟 및 온디맨드 용량을 사용하는 그룹을 지정하고 아키텍처마다 다른 시작 템플릿을 사용할 수 있습니다.

aws autoscaling update-auto-scaling-group \ --cli-input-json file://~/config.json

config.json의 콘텐츠:

{ "AutoScalingGroupName": "my-asg", "CapacityRebalance": true, "MixedInstancesPolicy": { "LaunchTemplate": { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-x86", "Version": "$Latest" }, "Overrides": [ { "InstanceType": "c6g.large", "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-arm", "Version": "$Latest" } }, { "InstanceType": "c5.large" }, { "InstanceType": "c5a.large" } ] }, "InstancesDistribution": { "OnDemandPercentageAboveBaseCapacity": 50, "SpotAllocationStrategy": "capacity-optimized" } } }

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

자세한 내용은 Amazon Auto Scaling 사용 설명서의 여러 인스턴스 유형 및 구매 옵션이 있는 Auto Scaling 그룹을 참조하세요. EC2 Auto Scaling