최대 인스턴스 수명을 기준으로 Auto Scaling 인스턴스 교체 - Amazon EC2 Auto Scaling

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

최대 인스턴스 수명을 기준으로 Auto Scaling 인스턴스 교체

최대 인스턴스 수명은 인스턴스가 해지되고 교체되기 전에 서비스를 제공할 수 있는 최대 시간(초)을 지정합니다. 일반적인 사용 사례 중 하나로 내부 보안 정책 또는 외부 규정 준수 제어로 인해 일정에 따라 인스턴스를 교체할 것이 요구되는 경우가 있습니다.

최소 86,400초(1일)의 값을 지정해야 합니다. 이전에 설정한 값을 해제하려면 새 값 0을 지정합니다. 이 설정은 Auto Scaling 그룹의 현재 인스턴스와 향후 인스턴스에 모두 적용됩니다.

고려 사항

다음은 이 기능 사용 시 고려할 사항입니다.

  • 이전 인스턴스를 교체하고 새 인스턴스를 시작할 때마다 새 인스턴스는 현재 Auto Scaling 그룹과 연결된 시작 템플릿 또는 시작 구성을 사용합니다. 시작 템플릿 또는 시작 구성이 애플리케이션의 다른 버전에 대한 Amazon Machine Image(AMI)를 지정하는 경우, 이 버전의 애플리케이션이 자동으로 배치됩니다.

  • 최대 인스턴스 수명을 너무 낮게 설정하면 인스턴스가 원하는 것보다 빠르게 교체될 수 있습니다. Amazon EC2 Auto Scaling은 한 번에 하나씩 인스턴스를 교체하고 교체 사이에 일시 중지합니다. 그러나 지정한 최대 인스턴스 수명이 각 인스턴스를 개별적으로 교체할 시간을 충분히 제공하지 않는 경우, Amazon EC2 Auto Scaling은 한 번에 두 개 이상의 인스턴스를 교체해야 합니다. Auto Scaling 그룹의 현재 용량의 최대 10%까지 여러 인스턴스를 한 번에 교체할 수 있습니다. 한 번에 너무 많은 인스턴스를 교체하지 않으려면 최대 인스턴스 수명을 늘리거나 인스턴스 스케일 인 보호를 사용하여 일시적으로 개별 인스턴스가 종료되지 않게 하세요. 자세한 내용은 인스턴스 스케일 인 보호를 사용하여 인스턴스 종료 제어 단원을 참조하십시오.

  • 기본적으로, Amazon EC2 Auto Scaling은 인스턴스를 해지하기 위해 새 규모 조정 활동을 생성한 다음 해당 인스턴스를 해지합니다. 인스턴스를 해지하는 동안 다른 크기 조정 활동이 새 인스턴스를 시작합니다. 인스턴스 유지 관리 정책을 사용하여 해지하기 전에 실행되도록 이 동작을 변경할 수 있습니다. 자세한 내용은 인스턴스 유지 관리 정책 단원을 참조하십시오.

최대 인스턴스 수명 설정

콘솔에서 Auto Scaling 그룹을 생성할 때에는 최대 인스턴스 수명을 설정할 수 없습니다. 그러나 그룹이 생성된 후에는 최대 인스턴스 수명을 편집하여 설정할 수 있습니다.

그룹의 최대 인스턴스 수명을 설정하려면(콘솔)
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 열고 탐색 창에서 Auto Scaling Groups(Auto Scaling 그룹)를 선택합니다.

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

    Auto Scaling 그룹 페이지 아래쪽에 분할 창이 열리고 선택한 그룹에 대한 정보가 표시됩니다.

  3. 세부 정보(Details) 탭에서 고급 구성(Advanced configurations), 편집(Edit)을 선택합니다.

  4. 최대 인스턴스 수명(Maximum instance lifetime)에 인스턴스가 서비스될 수 있는 최대 시간(초)을 입력합니다.

  5. 업데이트를 선택합니다.

활동(Activity) 탭의 활동 기록(Activity history)에서 그룹의 전체 인스턴스 교체 기록을 볼 수 있습니다.

그룹의 최대 인스턴스 수명을 설정하려면(AWS CLI)

또한 AWS CLI 를 사용하여 신규 또는 기존 Auto Scaling 그룹의 최대 인스턴스 수명을 설정할 수 있습니다.

새로운 Auto Scaling 그룹의 경우, create-auto-scaling-group 명령을 사용합니다.

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

다음은 2592000초(30일)의 최대 인스턴스 수명을 보여주는 예 config.json 파일입니다.

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "$Default" }, "MinSize": 1, "MaxSize": 5, "MaxInstanceLifetime": 2592000, "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "Tags": [] }

기존 Auto Scaling 그룹의 경우, update-auto-scaling-group 명령을 사용합니다.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-existing-asg --max-instance-lifetime 2592000
Auto Scaling 그룹의 최대 인스턴스 수명 확인

describe-auto-scaling-groups 명령을 사용합니다.

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

제한 사항

  • 모든 인스턴스에 대해 최대 수명이 정확하지 않을 수 있음: 최대 기간이 끝날 때만 인스턴스가 교체된다는 보장이 없습니다. 경우에 따라, 최대 인스턴스 수명 파라미터가 업데이트된 후 Amazon EC2 Auto Scaling이 즉시 인스턴스 교체를 시작해야 할 수 있습니다. 이 동작의 이유는 모든 인스턴스를 동시에 교체하는 상황을 방지하는 것입니다.

  • 인스턴스 스케일 인 보호 적용: Amazon EC2 Auto Scaling은 종료할 수 있는 인스턴스를 제어하는 데 도움이 되는 인스턴스 스케일 인 보호를 제공합니다. 인스턴스에서 이 보호가 활성화되면 Amazon EC2 Auto Scaling은 인스턴스의 최대 수명에 도달하더라도 인스턴스를 종료하지 않습니다.

  • 시작 전에 인스턴스가 해지됨: Amazon EC2 Auto Scaling은 기본적으로 인스턴스를 해지한 다음에 새 인스턴스를 시작시키기 때문에 Auto Scaling 그룹에 인스턴스가 하나만 있는 경우, 최대 인스턴스 수명 기능으로 인해 중단이 발생할 수 있습니다. 이 동작을 해지하기 전에 실행되도록 변경하려면 인스턴스 유지 관리 정책을 참조하세요.