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를 선택합니다.

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

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 프로세스 일시 중지 및 재개 단원을 참조하십시오.