Auto Scaling 그룹의 기본 인스턴스 워밍업 설정 - Amazon EC2 Auto Scaling

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

Auto Scaling 그룹의 기본 인스턴스 워밍업 설정

CloudWatch Auto Scaling 인스턴스 전반에서 CPU 및 네트워크 I/O와 같은 사용 데이터를 수집하고 집계합니다. 이러한 지표를 사용하여 선택한 지표의 값이 증가 및 감소함에 따라 Auto Scaling 그룹의 인스턴스 수를 조정하는 조정 정책을 생성합니다.

인스턴스가 InService 상태에 도달한 후 집계된 지표에 사용량 데이터를 제공하기 전에 기다리는 시간을 지정할 수 있습니다. 이렇게 지정된 시간을 기본 인스턴스 워밍업이라고 합니다. 이렇게 하면 아직 애플리케이션 트래픽을 처리하지 않고 일시적으로 컴퓨팅 리소스 사용량이 높을 수 있는 개별 인스턴스에 대한 지표의 영향을 받아 동적 규모 조정이 영향을 받지 않습니다.

대상 추적 및 단계 조정 정책의 성능을 최적화하려면 기본 인스턴스 웜업을 활성화하고 구성하는 것이 좋습니다. 기본적으로 활성화되거나 구성되어 있지 않습니다.

기본 인스턴스 웜업을 활성화할 때, Auto Scaling 그룹이 인스턴스 유지 관리 정책을 사용하도록 설정되거나 인스턴스 새로 고침을 사용하여 인스턴스를 교체하는 경우 초기화가 완료되기 전에 인스턴스가 최소 정상 백분율에 포함되는 것을 방지할 수 있다는 점을 염두에 두십시오.

스케일링 수행 고려 사항

대부분의 애플리케이션에서는 기능별로 워밍업 시간을 다르게 설정하는 대신 모든 기능에 적용되는 기본 인스턴스 워밍업 시간을 하나로 설정하는 것이 좋습니다. 예를 들어 기본 인스턴스 웜업을 설정하지 않은 경우 인스턴스 새로 고침 기능은 상태 확인 유예 기간을 기본 워밍업 시간으로 사용합니다. 대상 추적 및 단계 조정 정책이 있는 경우 기본 휴지 시간에 설정된 값을 기본 워밍업 시간으로 사용합니다. 예측 조정 정책이 있는 경우에는 기본 워밍업 시간이 없습니다.

인스턴스가 워밍업되는 동안에는 워밍업하지 않는 인스턴스의 지표 값이 정책의 경보 상한 임계값 (또는 대상 추적 조정 정책의 목표 사용률) 보다 큰 경우에만 동적 조정 정책이 축소됩니다. 수요가 감소하면 동적 크기 조정은 애플리케이션의 가용성을 보호하기 위해 더욱 보수적으로 조정됩니다. 이렇게 하면 새 인스턴스의 워밍업이 완료될 때까지 동적 조정 활동의 규모가 차단됩니다.

Amazon EC2 Auto Scaling은 규모를 축소하는 동안 그룹에 추가할 인스턴스 수를 결정할 때 워밍업 중인 인스턴스를 그룹 용량의 일부로 간주합니다. 따라서 비슷한 용량을 추가해야 하는 경보 위반이 여러 번 발생하면 단일 조정 작업이 발생합니다. 과도한 규모 확대를 하지 않으면서 지속적으로 규모를 확장하려는 의도입니다.

기본 인스턴스 워밍업이 활성화되지 않은 경우, 메트릭을 전송하여 CloudWatch 현재 용량으로 계산하기 전에 인스턴스가 대기하는 시간은 인스턴스마다 달라집니다. 따라서 조정 정책이 실제 발생하는 워크로드와 비교할 때 예상치 못한 성능을 보일 가능성이 있습니다.

반복되는 on-and-off 워크로드 패턴을 가진 애플리케이션을 예로 들어 보겠습니다. 예측 스케일링 정책은 인스턴스 수를 늘릴지 여부에 대한 반복적인 결정을 내리는 데 사용됩니다. 예측 조정 정책에는 기본 준비 시간이 없으므로 인스턴스가 집계된 지표에 즉시 기여하기 시작합니다. 이러한 인스턴스가 시작 시 리소스 사용량이 많은 경우, 인스턴스를 추가하면 집계된 지표이 급증할 수 있습니다. 사용량이 안정화되는 데 걸리는 시간에 따라 이러한 지표를 사용하는 동적 스케일링 정책에 영향을 미칠 수 있습니다. 동적 스케일링 정책의 경보 최고 임계값을 위반하면 그룹 크기가 다시 증가합니다. 새 인스턴스가 워밍업되는 동안에는 규모 조정이 차단됩니다.

기본 인스턴스 워밍업 시간을 선택합니다.

기본 인스턴스 워밍업 설정의 핵심은 인스턴스가 초기화를 완료하고 리소스 소비가 InService 상태에 도달한 후 안정화되는 데 필요한 시간을 결정하는 것입니다. 인스턴스 워밍업 시간을 선택할 때는 정상적인 트래픽을 위한 사용량 데이터 수집과 시작 시 일시적 사용량 급증과 관련된 데이터 수집을 최소화하는 것 사이에서 최적의 균형을 유지하세요.

Elastic Load Balancing 로드 밸런서에 Auto Scaling 그룹이 연결되어 있다고 가정해 보겠습니다. 새 인스턴스 실행이 완료되면 로드 밸런서에 등록되어 InService 상태가 되기 전에 로드 밸런서에 등록됩니다. 인스턴스가 InService 상태가 된 후에도 리소스 소비가 일시적으로 급증할 수 있으며 안정화하는 데 시간이 필요할 수 있습니다. 예컨대, 큰 자산을 다운로드하고 캐시해야 하는 애플리케이션 서버의 리소스 소비는 다운로드할 큰 자산이 없는 경량 웹 서버보다 안정화하는 데 더 오래 걸립니다. 인스턴스 워밍업은 리소스 소비가 안정화되는 데 필요한 시간 지연을 제공합니다.

중요

워밍업 시간에 얼마나 많은 시간이 필요한지 잘 모르겠다면 300초부터 시작해도 됩니다. 그런 다음 애플리케이션에 가장 적합한 확장 성능을 얻을 때까지 점진적으로 줄이거나 늘리십시오. 제대로 하려면 이 작업을 몇 번 반복해야 할 수도 있습니다. 또는 자체 워밍업 시간 (EstimatedInstanceWarmup) 이 있는 조정 정책이 있는 경우 이 값을 사용하여 시작할 수 있습니다. 자세한 정보는 이전에 설정한 인스턴스 워밍업 시간을 기준으로 한 조정 정책을 찾아보세요.을 참조하세요.

시작 시 실행할 구성 작업 또는 스크립트가 있는 사용 사례에 대해 수명 주기 후크를 사용하는 것을 고려하십시오. 수명 주기 후크는 초기화가 완료될 때까지 새 인스턴스가 서비스 상태가 되는 것을 지연시킬 수 있습니다. 이 기능은 완료하는 데 시간이 걸리는 부트스트랩 스크립트가 있는 경우, 특히 유용합니다. 수명 주기 후크를 추가하면 기본 인스턴스 워밍업 값을 줄일 수 있습니다. 수명 주기 후크 사용에 대한 자세한 설명은 Amazon EC2 Auto Scaling 수명 주기 후크 섹션을 참조하세요.