오토스케일링 (Autoscaling)

오토스케일링(Autoscaling)은 일반적으로 컴퓨팅 리소스 측면에서 시스템이 자동으로 규모를 조절(scale)하는 기능(ability)이다. 오토스케일링 시스템을 사용하면, 리소스가 필요할 때 자동으로 추가되고 변화를 거듭하는 사용자 요구에 맞게 규모를 조절할 수 있다. 오토스케일링 프로세스는 다양하며 메모리 또는 처리 시간과 같은 다른 메트릭을 기반으로 규모를 조절하도록 설정할 수 있다. 관리형 클라우드 서비스에는 일반적으로 오토스케일링 기능(functionality)이 관계되어 있는데 이는 대부분의 온프레미스(on-premises) 배포보다 더 많은 옵션과 구현을 제공하기 때문이다.

이전에는 인프라와 애플리케이션이 시스템의 최대 사용치(peak usage)를 고려하도록 설계하였다. 이 아키텍처에서는 많은 리소스가 충분히 활용되지 못하고 변화하는 소비자 수요에 탄력적이지 않음이 드러났다. 이러한 비탄력성은 비즈니스에 더욱 큰 비용을 투입하도록, 그리고 큰 비용 투입에도 불구하고 과도한 수요가 발생했을 때 운영 중단으로 인한 비즈니스 손실이 발생하도록 만들었다.

클라우드를 활용하고 애플리케이션 및 그 의존성(dependency)을 가상화(virtualization)컨테이너화(containerization)함으로써, 조직은 사용자 요구에 따라 확장 가능한 애플리케이션을 만들어 낼 수 있다. 애플리케이션 수요를 모니터링하고 자동으로 규모를 조절하여 최적의 사용자 경험(user experience)을 제공할 수 있다. 매주 금요일 저녁 넷플릭스(Netflix) 시청자 수가 증가하는 상황을 생각해 보자. 오토스케일 아웃은 더 많은 리소스를 동적으로 추가하는 것을 의미한다. 예를 들어, 서버의 수를 늘려 더 많은 비디오 스트리밍을 허용하고 소비가 정상화되면 다시 축소한다.

관련 용어