Amazon EC2 Auto Scaling
사용 설명서

Auto Scaling 그룹의 크기 조정

조정은 애플리케이션의 컴퓨팅 용량을 늘리거나 줄이는 기능입니다. 조정은 이벤트와 함께 시작되거나 Auto Scaling 그룹에 EC2 인스턴스를 시작 또는 종료하도록 지시하는 조정 작업과 함께 시작됩니다.

Amazon EC2 Auto Scaling에서는 여러 가지 방법으로 애플리케이션의 요구 사항에 가장 적합하게 조정 기능을 조절할 수 있습니다. 그러므로 애플리케이션을 충분히 이해하는 것이 중요합니다. 다음 사항에 유의하십시오.

  • Amazon EC2 Auto Scaling이 애플리케이션 아키텍처에서 수행하려는 작업이 무엇인가? 자동 조정을 용량을 늘리거나 줄이는 수단으로 생각하는 것이 일반적이지만, 이는 안정적인 서버 수를 유지하려는 경우에도 유용합니다.

  • 나에게 중요한 비용 제약 조건은 무엇인가? Amazon EC2 Auto Scaling에서는 EC2 인스턴스를 사용하므로 사용한 리소스에 대해서만 비용을 지불합니다. 비용 제약 조건을 알면 애플리케이션의 확장 시기와 규모를 결정하는 데 도움이 될 수 있습니다.

  • 애플리케이션에 중요한 지표는 무엇인가? CloudWatch는 Auto Scaling 그룹과 함께 사용할 수 있는 여러 가지 지표를 지원합니다. 이러한 지표 중 애플리케이션과 가장 관련성이 높은 것이 무엇인지 알아보기 위해 이들 지표를 검토하는 것이 좋습니다.

조정 옵션

Amazon EC2 Auto Scaling은 Auto Scaling 그룹을 조정하는 다양한 방법을 제공합니다.

항상 현재 인스턴스 수준 유지 관리

Auto Scaling 그룹에서 항상 최소 또는 지정된 수의 인스턴스 실행을 유지 관리하도록 구성할 수 있습니다. 현재 인스턴스 수준을 유지 관리하기 위해 Amazon EC2 Auto Scaling에서 Auto Scaling 그룹 내에 실행 중인 인스턴스에 대한 주기적인 상태 확인을 수행합니다. Amazon EC2 Auto Scaling에서 인스턴스가 비정상 상태임을 확인하면 해당 인스턴스를 종료한 다음 새 인스턴스를 시작합니다. 현재 인스턴스 수준을 유지 관리하도록 Auto Scaling 그룹을 구성하는 방법에 대한 자세한 내용은 Auto Scaling 그룹의 인스턴스 수 유지 단원을 참조하십시오.

수동 조정

수동 조정은 리소스를 조정하는 가장 기본적인 방법입니다. Auto Scaling 그룹에서 최대, 최소 또는 원하는 용량의 변경 사항만 지정합니다. Amazon EC2 Auto Scaling은 인스턴스를 생성 또는 종료하는 프로세스를 관리하여 업데이트된 용량을 유지 관리합니다. 자세한 내용은 수동 조정 단원을 참조하십시오.

일정을 기반으로 조정

경우에 따라 그룹의 인스턴스 수를 늘려야 할지 또는 줄여야 할지 정확히 아는 경우는 예측 가능한 일정에 따라 수요가 증가하기 때문일 수 있습니다. 일정에 따른 확장은 확장 작업이 시간 및 날짜 함수에 따라 자동으로 수행됨을 의미합니다. 자세한 내용은 Amazon EC2 Auto Scaling의 예약된 조정 단원을 참조하십시오.

온디맨드 기반 조정

리소스를 조정하는 보다 향상된 방법은 정책별 조정으로, 조정 프로세스를 제어하는 파라미터를 정의할 수 있습니다. 예를 들어, 평균 CPU 사용률이 15분 동안 90% 이상으로 유지될 때마다 EC2 인스턴스의 플릿을 확장하도록 요청하는 정책을 생성할 수 있습니다. 변화하는 조건에 따라 조정할 경우에 유용하지만 이러한 조건이 언제 바뀔지는 알 수는 없습니다. Amazon EC2 Auto Scaling이 사용자에게 응답하도록 설정할 수 있습니다. 자세한 내용은 Amazon EC2 Auto Scaling의 동적 조정 단원을 참조하십시오.

다중 확장 정책

Auto Scaling 그룹에는 한 개 이상의 조정 정책이 연결될 수 있습니다. 경우에 따라 여러 조정 정책을 결합하여 Auto Scaling 그룹의 성능을 극대화할 수도 있습니다.

여러 개의 정책이 함께 작동하는 방식에 대해 알아보기 위해, Auto Scaling 그룹을 사용하는 애플리케이션과 해당 그룹의 EC2 인스턴스에 요청을 전송하는 Amazon SQS 대기열을 고려해 봅니다. 애플리케이션에서 최적의 수준으로 작업이 수행되도록 보장하기 위해, Auto Scaling 그룹이 확장되어야 하는 시기를 제어하는 두 개의 정책이 마련되어 있습니다. 한 정책에서는 Amazon CloudWatch CPUUtilization 지표를 사용하여 인스턴스 용량이 90%가 되는 시기를 감지합니다. 다른 정책에서는 사용자 지정 지표를 사용하여 SQS 대기열이 메시지로 가득 차는 시점을 감지합니다. SQS 대기열에서 메시지 활동에 따라 조정하는 방법에 대한 자세한 내용은 Amazon SQS에 따른 조정 단원을 참조하십시오.

Auto Scaling 그룹에 두 개 이상의 정책이 연결되어 있는 경우, 두 정책 모두에서 동시에 확장(또는 축소)하도록 지시하는 경우가 있을 수 있습니다. 앞의 예에서, EC2 인스턴스는 CPUUtilization 지표에 대해 CloudWatch 경보를 트리거하고 동시에 SQS 대기열에서 사용자 지정 지표에 대해 경보를 트리거할 수 있습니다.

이러한 상황이 발생하면 Amazon EC2 Auto Scaling에서는 Auto Scaling 그룹에 가장 영향력이 큰 정책을 선택합니다. 예를 들어 CPU 사용량에 대한 정책에서 1개의 인스턴스를 시작하는 한편, SQS 대기열에 대한 정책에서는 2개의 인스턴스를 시작하는 경우를 생각해 볼 수 있습니다. 만일 두 정책의 확장 조건이 동시에 충족되는 경우, Amazon EC2 Auto Scaling에서는 SQS 대기열 정책이 Auto Scaling 그룹에 미치는 영향이 더 크므로 이 정책에 우선권을 줍니다. 그 결과로 Auto Scaling 그룹에 2개의 인스턴스를 시작합니다. 이 우선권은 정책들이 확장에 대한 서로 다른 조건을 사용하는 경우에도 적용됩니다. 예를 들어 한 정책에서는 3개의 인스턴스를 시작하고 또 다른 정책이 용량을 25% 증가시키는 경우, Amazon EC2 Auto Scaling에서는 해당 시점에 두 정책 중 그룹에 더 큰 영향을 주는 정책에 우선권을 줍니다.

이 페이지에서: