개발/Cloud

[네이버 클라우드] Auto Scaling 살펴보기

김키쿠 2024. 1. 9. 17:04

Naver Cloud Auto Scaling

Auto Scaling이란 미리 지정해둔 임계치를 기준으로 서버를 모니터링하면서 서버 수를 자동으로 조절해 유동적인 트래픽에 탄력적으로 대응하는 서버 관리 서비스다.

 

만약 서비스 운영에 필요한 컴퓨팅 자원을 판정할 수 없는 불확실한 상황이라면 고가용성을 확보하기 위해 Auto scaling을 활용할 수 있다. 운영 중인 서버를 모니터링해 서버 증량이 필요한 조건에 도달하면 자동으로 서버 수를 늘려주고, 조건이 해소되면 자동으로 서버가 반납되도록 설정할 수 있다.

 

서버 수요량이 예측 가능한 상황이라면 서버 증량이 필요한 시점에만 서버 수가 늘어나도록 설정할 수 있다. 서버를 최대 부하가 발행했을 때 필요한 수로 고정해두지 않고 필요할 때에만 증량함으로써 비용 절감 효과를 볼 수 있다.

상세 기능

  • 통합 모니터링 서비스
  • 시간대별 서버 크기 자동 조절(Predictive Scaling)
  • 비정상 서버 감지 및 교체
  • 반납할 서버 지정 가능

구성 요소

1. Launch Configuration

Launch Configuration은 Auto Scaling 수행 중 scale out 필요시 자동으로 생성되는 서버 스펙을 구성하는 일종의 템플릿. Auto Scaling 그룹을 만들려면 Launch Configuration에서 서버 스펙을 구성해 저장해야한다. 서버 스펙은 네이버 클라우드 플랫폼에서 제공되는 기본 서버 이미지 또는 직접 생성한 서버 이미지를 활용할 수 있다.

 

2. Auto Scaling Group

Auto Scaling Group은 Auto Scaling 기능을 수행하는 서버 그룹을 말한다. Launch Configuration을 기반으로 생성할 수 있고, 필요시 Load Balancer와 바인딩할 수 있다. 그룹을 생성하면 Scaling 규칙에 따라 서버가 자동으로 생성되거나 반납되며 Scaling 규칙은 정책, 일정, 모니터링 이벤트 등을 기반으로 설정할 수 있다.

 

 

3. Auto Scaling 정책

  • 증감 변경: Auto Scaling 그룹의 크기와 상관 없이 지정된 수의 서버를 추가 또는 삭제
  • 비율 변경: Auto Scaling 그룹의 크기와 대비해 일정한 비율로 서버를 추가 또는 삭제
  • 고정값: Auto Scaling 그룹의 크기를 지정된 값으로 고정