Amazon EC2 Auto Scaling의 수동 조정 - Amazon EC2 Auto Scaling

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

Amazon EC2 Auto Scaling의 수동 조정

언제든지 Auto Scaling 그룹의 EC2 인스턴스 수를 수동으로 조정할 수 있습니다. 인스턴스 수를 수동으로 변경하는 이 프로세스를 수동 조정이라고 합니다. 수동 크기 조정은 Auto Scaling의 대안이며, 특히 용량을 한 번에 변경하려는 경우 더욱 그렇습니다.

그룹을 수동으로 조정하면 Amazon EC2 Auto Scaling은 사용자가 정의한 조정 정책 및 예약된 작업에 따라 정상적인 Auto Scaling 활동을 재개합니다. 기본 인스턴스 워밍업이 활성화된 그룹의 경우 모든 새 인스턴스는 워밍업 기간을 거쳐 Auto Scaling에 사용되는 지표에 기여하기 시작합니다. 이 워밍업 기간은 그룹을 새 용량으로 안정화하는 데 도움이 됩니다. 자세한 정보는 Auto Scaling 그룹의 기본 인스턴스 워밍업 설정을 참조하세요.

때로는 그룹을 수동으로 조정하기 전에 조정 정책과 예약된 작업을 일시적으로 비활성화해야 할 수도 있습니다. 이렇게 하면 수동 조정 작업과 자동 조정 활동 간에 충돌이 발생하는 것을 방지할 수 있습니다. 자세한 내용은 스케일링 활동 끄기 단원을 참조하십시오.

기존 Auto Scaling 그룹의 원하는 용량 변경

Auto Scaling 그룹의 원하는 용량을 변경하면 Amazon EC2 Auto Scaling이 원하는 새 크기에 도달하도록 인스턴스를 시작하고 종료하는 프로세스를 관리합니다.

Console
Auto Scaling 그룹의 크기 변경
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 열고 탐색 창에서 Auto Scaling Groups(Auto Scaling 그룹)를 선택합니다.

  2. Auto Scaling 그룹 옆의 확인란을 선택합니다.

    페이지 하단에 분할 창이 표시됩니다.

  3. 세부 정보(Details) 탭에서 그룹 세부 정보(Group details), 편집(Edit)을 선택합니다.

  4. 원하는 용량의 경우 원하는 용량을 늘리거나 줄이십시오. 예를 들어, 그룹 크기를 1씩 늘리려면 현재 값이 다음과 1 같으면 를 입력합니다2.

    희망 용량 값이 최소 희망 용량최대 희망 용량보다 큰 경우, 최대 희망 용량은 자동으로 새 희망 용량 값으로 증가합니다.

  5. 완료되면 업데이트(Update)를 선택합니다.

지정한 그룹 크기로 인해 동일한 양의 인스턴스가 시작되었는지 확인하십시오. 예를 들어 그룹 크기를 하나 늘린 경우 Auto Scaling 그룹에서 인스턴스 하나를 추가로 시작했는지 확인하십시오.

Auto Scaling 그룹의 크기가 변경되었는지 확인
  1. 활동 탭의 활동 기록에서 Auto Scaling 그룹과 관련된 활동의 진행 상황을 볼 수 있습니다. 상태 열에는 인스턴스의 현재 상태가 표시됩니다. 인스턴스가 시작되는 동안 상태 열에 Not yet in service가 표시됩니다. 인스턴스가 시작되면 상태가 Successful로 변경됩니다. 새로 고침 아이콘을 사용하여 인스턴스의 현재 상태를 확인할 수도 있습니다. 자세한 정보는 Auto Scaling 그룹에 대한 크기 조정 활동 확인을 참조하세요.

  2. 인스턴스 관리 탭의 인스턴스에서 인스턴스의 상태를 볼 수 있습니다. 인스턴스를 출범하는 데 약간 시간이 걸립니다.

    • 라이프사이클 열에는 인스턴스의 상태가 표시됩니다. 처음에는 인스턴스가 Pending 상태로 되어 있습니다. 인스턴스가 트래픽을 수신할 준비가 되면 상태가 InService로 전환됩니다.

    • 상태 열에는 인스턴스에 대한 Amazon EC2 Auto Scaling 상태 확인 결과가 표시됩니다.

AWS CLI

다음 예에서는 최소 크기가 1이고 최대 크기가 5인 Auto Scaling 그룹을 생성한 것으로 가정합니다. 따라서 그룹에는 현재 실행 중인 인스턴스가 1개입니다.

Auto Scaling 그룹의 크기 변경

set-desired-capacity 명령을 사용하여 다음 예에 표시된 것처럼 Auto Scaling 그룹의 크기를 변경합니다.

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

Auto Scaling 그룹의 기본 냉각 기간을 지키기로 한 경우, 다음 예에 표시된 것처럼 –-honor-cooldown 옵션을 지정해야 합니다. 자세한 설명은 Amazon EC2 Auto Scaling을 위한 조정 휴지 섹션을 참조하세요.

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

Auto Scaling 그룹의 크기 확인

describe-auto-scaling-groups 명령을 사용하여 다음 예와 같이 Auto Scaling 그룹의 크기가 변경되었음을 확인할 수 있습니다.

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

다음은 시작된 그룹 및 인스턴스에 대한 세부 정보를 제공하는 예제 출력입니다.

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 2, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 300, "Instances": [ { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-05b4f7d5be44822a6", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "Pending" }, { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-0c20ac468fa3049e8", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" } ], "CreatedTime": "2019-03-18T23:30:42.611Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-c87f2be0", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN": "arn", "TrafficSources": [] } ] }

DesiredCapacity에 새 값이 표시됩니다. Auto Scaling 그룹에서 추가 인스턴스를 출범했습니다.

Auto Scaling 그룹에서 인스턴스 해지 (AWS CLI)

Auto Scaling 그룹에서 수동으로 스케일링하고 싶지만 특정 인스턴스를 해지하고 싶은 경우가 있을 수 있습니다. Auto Scaling 그룹에서 terminate-instance-in-auto-scaling-group 명령을 사용하고 다음 예와 같이 해지하려는 인스턴스의 ID와 --should-decrement-desired-capacity 옵션을 지정하여 수동으로 스케일링할 수 있습니다.

aws autoscaling terminate-instance-in-auto-scaling-group \ --instance-id i-026e4c9f62c3e448c --should-decrement-desired-capacity

다음은 조정 활동에 대한 세부 정보를 제공하는 예제 출력입니다.

{ "Activities": [ { "ActivityId": "b8d62b03-10d8-9df4-7377-e464ab6bd0cb", "AutoScalingGroupName": "my-asg", "Description": "Terminating EC2 instance: i-026e4c9f62c3e448c", "Cause": "At 2023-09-23T06:39:59Z instance i-026e4c9f62c3e448c was taken out of service in response to a user request, shrinking the capacity from 1 to 0.", "StartTime": "2023-09-23T06:39:59.015000+00:00", "StatusCode": "InProgress", "Progress": 0, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

콘솔에서는 이 옵션을 사용할 수 없습니다. 하지만 Amazon EC2 콘솔의 인스턴스 페이지를 사용하여 Auto Scaling 그룹의 인스턴스를 종료할 수 있습니다. 이렇게 하면 Amazon EC2 Auto Scaling에서 인스턴스가 더 이상 실행되지 않는 것을 감지하고 상태 점검 프로세스의 일환으로 인스턴스를 자동으로 교체합니다. 인스턴스를 종료한 후 새 인스턴스가 시작되기까지 1~2분 정도 걸립니다. 인스턴스를 종료하는 방법에 대한 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 종료를 참조하십시오.

그룹에서 인스턴스를 종료하여 가용 영역 전체에 균등하게 분배되지 않는 경우, 프로세스를 일시 중단하지 않는 한 Amazon EC2 Auto Scaling은 그룹을 재조정하여 균등한 배포를 재설정합니다. AZRebalance 자세한 정보는 Amazon EC2 Auto Scaling 프로세스 일시 중지 및 재개을 참조하세요.