기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Auto Scaling 그룹에서 인스턴스 새로 고침 작동 방식
이 주제에서는 인스턴스 새로 고침의 작동 방식을 설명하고 인스턴스 새로 고침을 효과적으로 사용하기 위해 이해해야 하는 주요 개념을 소개합니다.
작동 방법
Auto Scaling 그룹의 인스턴스를 새로 고침하기 위해 애플리케이션의 최신 버전과 원하는 기타 업데이트가 포함된 새 구성을 정의할 수 있습니다. 그런 다음 인스턴스 새로 고침을 시작하여 해당 구성을 기반으로 기존 인스턴스를 새 인스턴스로 바꿉니다.
인스턴스 새로 고침을 수행하려면 다음을 수행하세요.
-
새 시작 템플릿을 생성하거나 새 Amazon Machine Image(AMI)와 같은 원하는 구성 변경으로 기존 템플릿을 업데이트합니다. 자세한 내용은 Auto Scaling 그룹에 대한 시작 템플릿 생성 단원을 참조하십시오.
-
Amazon EC2 Auto Scaling 콘솔 AWS CLI또는 SDK를 사용하여 인스턴스 새로 고침을 시작합니다.
-
생성한 새 시작 템플릿 또는 시작 템플릿 버전을 지정합니다. 새 인스턴스를 시작하는 데 사용됩니다.
-
선호하는 최소 및 최대 정상 비율을 설정합니다. 이렇게 하면 동시에 교체되는 인스턴스 수와 이전 인스턴스를 종료하기 전에 새 인스턴스를 시작할지 여부를 제어할 수 있습니다.
-
다음과 같은 선택적 설정을 구성합니다.
-
체크포인트 - 일정 비율이 교체된 후 인스턴스 새로 고침을 일시 중지하여 진행 상황을 확인합니다.
-
베이크 시간 - 인스턴스 새로 고침이 완료되면 일시 중지하여 인스턴스 새로 고침이 완료된 것으로 간주되기 전에 인스턴스 상태를 검증합니다.
-
매칭 건너뛰기 - 이전 인스턴스를 새 구성과 비교하고 일치하지 않는 인스턴스만 교체합니다. 콘솔에서 인스턴스 새로 고침을 시작하면 매칭 건너뛰기가 기본적으로 활성화되어 있습니다.
-
여러 인스턴스 유형 - 새 인스턴스 또는 업데이트된 혼합 인스턴스 정책을 원하는 구성의 일부로 적용합니다.
-
-
인스턴스 새로 고침이 시작되면 Amazon EC2 Auto Scaling은 다음을 수행합니다.
-
최소 및 최대 정상 비율을 기반으로 인스턴스를 배치로 바꿉니다.
-
최소 정상 비율이 100%로 설정된 경우 이전 인스턴스를 종료하기 전에 새 인스턴스를 먼저 시작합니다. 이렇게 하면 원하는 용량을 항상 유지할 수 있습니다.
-
인스턴스의 상태를 확인하고 더 많은 인스턴스를 교체하기 전에 준비할 시간을 줍니다.
-
비정상으로 확인된 인스턴스를 종료하고 교체합니다.
-
인스턴스 새로 고침이 성공한 후 새 구성 변경으로 Auto Scaling 그룹 설정을 자동으로 업데이트합니다.
-
웜 풀에 있는 인스턴스 앞에
InService
인스턴스를 바꿉니다.
다음 흐름도는 최소 정상 비율을 100%로 설정한 경우 종료 전 동작 시작을 보여줍니다.
참고
인스턴스 유지 관리 정책을 설정하지 않았거나 기존 정책을 재정의해야 하는 경우에만 인스턴스 새로 고침에 대한 최소 및 최대 정상 비율을 지정해야 합니다. 자세한 내용은 인스턴스 유지 관리 정책 단원을 참조하십시오.
마찬가지로 기본 워밍업을 활성화하지 않았거나 기본 워밍업을 재정의해야 하는 경우 인스턴스 새로 고침에 대한 인스턴스 워밍업 기간만 지정하면 됩니다. 자세한 내용은 Auto Scaling 그룹의 기본 인스턴스 워밍업 설정 단원을 참조하십시오.
핵심 개념
시작하기 전에 인스턴스의 다음과 같은 핵심 개념을 익히십시오:
- 최소 건전 백분율
-
최소 정상 비율이란 인스턴스 새로 고침을 계속할 수 있도록 인스턴스 새로 고침 중에 사용 가능한 상태로 유지하려는 용량의 비율입니다. 예컨대, 최소 건전 백분율이 90%이고 최대 건전 백분율이 100%인 경우, 용량의 10%는 한 번에 교체될 것입니다. 새 인스턴스가 상태 확인을 통과하지 못하면 Amazon EC2 Auto Scaling이 해당 인스턴스를 종료하고 교체합니다. 인스턴스 새로 고침이 건전 인스턴스를 시작시킬 수 없으면 인스턴스 새로 고침이 결국 실패하고 그룹의 다른 90%는 그대로 유지됩니다. 새 인스턴스가 정상 상태를 유지하고 워밍업 기간을 마치면 Amazon EC2 Auto Scaling이 다른 인스턴스를 계속 대체할 수 있습니다.
인스턴스 새로 고침은 인스턴스를 한 번에 하나씩, 한 번에 여러 개 또는 한 번에 모두 교체할 수 있습니다. 한 번에 하나의 인스턴스를 교체하려면 최소 및 최대 건전 백분율을 100%로 설정하십시오. 이렇게 하면 인스턴스 새로 고침이 해지되기 전에 실행되도록 동작이 변경되어 그룹의 용량이 원하는 용량의 100% 미만으로 떨어지는 것을 방지할 수 있습니다. 모든 인스턴스를 한 번에 교체하려면 최소 건전 백분율을 0%로 설정합니다.
- 최대 건전 백분율
-
최대 건전 백분율은 인스턴스를 교체할 때 Auto Scaling 그룹이 늘릴 수 있는 원하는 용량의 백분율입니다. 최소값과 최대값의 차이가 100을 초과할 수 없습니다. 범위가 증가할 수록 동시에 바꿀 수 있는 인스턴스의 수가 늘어납니다.
- 인스턴스 워밍업
-
인스턴스 워밍업은 초기화가 완료된 것으로 간주될 때 새 인스턴스의 상태가
InService
로 변경된 시점부터의 시간 기간입니다. 인스턴스 새로 고침 중에 인스턴스가 상태 확인을 통과하면 새로 시작된 인스턴스가 정상 상태인지 확인한 후 Amazon EC2 Auto Scaling이 즉시 다음 인스턴스 교체로 이동하지 않습니다. 다음 인스턴스 교체로 이동하기 전에 워밍업 기간을 기다립니다. 이는 애플리케이션이 요청에 응답하기 전에 초기화 시간이 필요한 경우에 유용할 수 있습니다.인스턴스 워밍업은 기본 인스턴스 워밍업과 동일한 방식으로 작동합니다. 따라서 동일한 스케일링 고려 사항이 적용됩니다. 자세한 설명은 Auto Scaling 그룹의 기본 인스턴스 워밍업 설정 섹션을 참조하세요.
- 원하는 구성
-
원하는 구성은 Amazon EC2 Auto Scaling이 Auto Scaling 그룹에 배포하도록 하는 새 구성입니다. 예컨대, 인스턴스에 대한 새 시작 템플릿과 새 인스턴스 유형을 지정할 수 있습니다. 인스턴스 새로 고침 중에 Amazon EC2 Auto Scaling은 Auto Scaling 그룹을 원하는 구성으로 업데이트합니다. 인스턴스 새로 고침 중에 스케일 아웃 이벤트가 발생하면 Amazon EC2 Auto Scaling은 그룹의 현재 설정 대신 원하는 구성으로 새 인스턴스를 시작합니다. 인스턴스 새로 고침이 성공하면 Amazon EC2 Auto Scaling은 인스턴스 새로 고침의 일부로 지정한 원하는 새 구성을 반영하도록 Auto Scaling 그룹 설정을 업데이트합니다.
- 매칭 건너뛰기
-
매칭 건너뛰기는 Amazon EC2 Auto Scaling에 이미 최신 업데이트가 있는 인스턴스를 무시하도록 지시합니다. 이렇게 하면 필요 이상으로 많은 인스턴스를 교체하지 않습니다. 이는 Auto Scaling 그룹이 특정 버전의 시작 템플릿을 사용하고 다른 버전을 사용하는 인스턴스만 교체하게 하려는 경우, 유용합니다.
- 체크포인트
-
체크포인트는 지정된 시간 동안 인스턴스 새로 고침이 일시 중지되는 시점입니다. 인스턴스 새로 고침에는 체크포인트가 여러 개 포함될 수 있습니다. Amazon EC2 Auto Scaling은 각 체크포인트에 대한 이벤트를 내보냅니다. 따라서 체크포인트에 도달하면 알림을 받을 수 있도록 Amazon SNS와 같은 대상에 이벤트를 보내는 EventBridge 규칙을 추가할 수 있습니다. 체크포인트에 도달하면 배치를 확인할 수 있습니다. 문제가 발견되면 인스턴스 새로 고침을 취소하거나 롤백할 수 있습니다. 단계별로 업데이트를 배치하는 기능은 체크포인트의 주요 이점입니다. 체크포인트를 사용하지 않으면 롤링 교체가 계속해서 수행됩니다.
인스턴스 새로 고침을 시작할 때 구성할 수 있는 모든 기본 설정에 대해 자세히 알아보려면 인스턴스 새로 고침의 기본값 이해 섹션을 참조하세요.
건전성 체크 유예 기간
Amazon EC2 Auto Scaling은 Auto Scaling 그룹이 사용하는 상태 확인의 상태를 기반으로 인스턴스가 정상 상태인지 여부를 결정합니다. 자세한 내용은 Auto Scaling 그룹의 인스턴스에 대한 상태 확인 단원을 참조하십시오.
건전성 체크가 최대한 빨리 시작되게 하려면 그룹의 건전성 체크 유예 기간을 너무 길게 설정하지 마세요. 하지만 Elastic Load Balancing 건전성 체크에서 대상이 요청을 처리할 수 있는지 확인할 수 있을 만큼 길게 설정하세요. 자세한 설명은 Auto Scaling 그룹의 상태 확인 유예 기간 설정 섹션을 참조하세요.
인스턴스 유형 호환성
인스턴스 유형을 변경하기 전에 시작 템플릿에서 유효한지 확인하는 것이 좋습니다. 이렇게 하면 지정한 AMI와의 호환성이 확인됩니다. 예를 들어, 가상(PV) AMI에서 원본 인스턴스를 시작했지만 하드웨어 가상 머신(HVM) AMI에서만 지원되는 현재 세대 인스턴스 유형으로 변경하려고 한다고 가정해 보겠습니다. 이 경우 시작 템플릿에 HVM AMI를 사용해야 합니다.
인스턴스를 시작하지 않고 인스턴스 유형의 호환성을 확인하려면 다음 예와 같이 run-instance 명령을 --dry-run
옵션과 함께 사용합니다.
aws ec2 run-instances --launch-template LaunchTemplateName=
my-template
,Version='1
' --dry-run
호환성을 확인하는 방법에 대한 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 유형 변경 호환성을 참조하세요.
제한 사항
-
총 기간: 인스턴스 새로 고침이 인스턴스를 계속해서 적극적으로 교체할 수 있는 최대 시간은 14일입니다.
-
가중 그룹별 동작 차이: 혼합 인스턴스 그룹이 그룹의 원하는 용량보다 크거나 같은 인스턴스 가중치로 구성된 경우 Amazon EC2 Auto Scaling이 모든
InService
인스턴스를 한 번에 대체할 수 있습니다. 이러한 상황을 피하려면 인스턴스 가중치를 사용하도록 Auto Scaling 그룹 구성 주제의 권장 사항을 따르세요. Auto Scaling 그룹에 가중치를 사용할 때 최대 가중치보다 큰 원하는 용량을 지정합니다. -
1시간 제한 시간: 인스턴스 새로 고침이 대기 중이거나 스케일 인에서 보호된 인스턴스를 교체하기 위해 대기 중이거나 새 인스턴스가 상태 확인을 통과하지 못하여 인스턴스 새로 고침을 계속 수행할 수 없는 경우 Amazon EC2 Auto Scaling은 1시간 동안 계속 재시도합니다. 문제 해결에 도움이 되는 상태 메시지도 제공합니다. 1시간 후에도 문제가 계속되면 교체 작업에 실패합니다. 이 제한은 일시적인 문제가 발생할 경우, 복구할 시간을 제공하기 위한 것입니다.
-
사용자 데이터를 통한 코드 배포: 매칭 건너뛰기는 사용자 데이터 스크립트에서 배포된 코드 변경 사항을 확인하지 않습니다. 사용자 데이터를 사용하여 새 코드를 가져오고 새 인스턴스에 이러한 업데이트를 설치하는 경우 시작 템플릿 버전 업데이트 없이도 모든 인스턴스가 최신 코드를 수신하도록 건너뛰기를 해제하는 것이 좋습니다.
-
업데이트 제한: 원하는 구성의 인스턴스 새로 고침이 활성화되어 있는 동안 Auto Scaling 그룹의 시작 템플릿, 시작 구성 또는 혼합 인스턴스 정책을 업데이트하려고 하면 다음 검증 오류와 함께 요청이 실패합니다.
An active instance refresh with a desired configuration exists. All configuration options derived from the desired configuration are not available for update while the instance refresh is active.