클라우드 기반의 오토스켈링(Auto Scaling) 서비스란?

서비스의 사용량에 따라 서버를 VM 기반으로 자동으로 복제하여 서버 수를 유연하게 조절시킴으로써 부하를 적절히 유지하고 서비스의 안정성을 확보할 수 있게하는 서비스입니다. 또한 필요한 서버만큼만 운영 가능하기 때문에 비용 절감을 기대할 수 있으며 서버의 Scale out/In 정책을 서비스 운영자가 자유자재로 웹 콘솔상에서 설정할 수 있기 때문에 다양한 서비스나 운영환경에도 적용이 가능한 특징을 가지고 있습니다.

오토스켈링 서비스는 두 개의 기반 서비스와 연동하여 제공됩니다. 그 중 하나는 클라우드 모니터링 서비스인 Resource Watch 서비스로 각 서버의 성능 데이터를 실시간으로 웹콘솔로 모니터링 해주는 서비스 입니다. 현재는 CPU, 메모리, 디스크 I/O, 네트워크 부하등 총 8개의 성능 데이터 모니터링 서비스를 제공하고 있는데 다른 성능 데이터도 추가가 가능합니다. 이런 모니터링 기능뿐만 아니라 알람과 스케쥴링 서비스도 같이 제공하고 있어 사용자가 정의한 임계 조건에 따라서 알람과 스케쥴링이 발생하면 SMS나 이메일로 통보해줍니다. 다른 하나의 서비스는 사용자가 웹콘솔을 이용하여 자동으로 다수의 SW로드밸런서를 생성하여 사용자가 소유하고 있는 클라우드 서버를 로드밸런서에 자유자재로 추가 삭제를 설정할 수 있어 서버의 부하를 적절하게 배분할 수 있습니다. 더욱이 SSL, Health Monitoring, Session Stickness등 다양한 L4 기능뿐만 아니라 이중화(High Availability) 서비스도 제공하여 무중단 서비스로 제공합니다.

 

(사진1) 2013년 10월 30일 디지털데일리가 주최한 '오픈 테크넷 서밋 2013 Fall' 에서 '클라우드 기반 오토스켈링(Auto-Scaling) 서비스'를 SK C&C 인프라솔루션사업팀 서정욱 차장이 소개하여 큰 호응을 얻었습니다.


이런 모니터링과
SW로드밸런서 서비스들과 연동하여 오토스켈링 서비스를 제공하고 있습니다. 사용자가 오토스켈링 알람과 어떻게 오토스켈링을 수행 할 것인지에 관한 정책을 설정하면 모니터링 서비스에서 그 설정된 알람이 발생 하였는지를 체크하고 발생하였으면 오토스켈링 서비스는 사용자가 정의한 정책에 따라서 Scale Out/In을 수행하게 됩니다. Scale Out인 경우는 그 해당 마스터 서버를 복제 하고 SW로드밸런서 서비스에 그 복제된 VM들을 해당 마스터 서버가 연결되어 있는 로드밸런서에 연결하라고 요청하여 그 마스터 서버의 부하는 복제된 VM에 분산되고. Scale In의 경우에는 로드밸런서와 복제VM들의 연결을 끊은 후에 복제된 VM을 삭제하게 됩니다. VM 복제는 VMWare에서 제공하는 Linked Clone기술을 사용하여 신속하게 복제하게 되어 현재 오토스켈링이 발생하여 복제된 VM이 서비스 되기까지 Linux 서버는 3-4 Windows 서버는 7-8분 소요됩니다.
 
SK C&C는 올해 상반기 SKT Cloud Biz에 클라우드 기반의 오토스켈링 서비스를 연구ㆍ개발하여 성공적으로 구축하여 7월부터 Close Beta, Open Beta 서비스를 거처 현재 10월중순부터 상용서비스로 전환하였습니다.
서비스들을 구현하기 위해 상당량의 오픈소스를 사용하였습니다. 예를 들면 분산플랫폼을 위해 Akka, Camel, AMQ, Zookeeper SW로드밸런서를 위하여 OpenStack 패키지와 LBaaS서비스, HAProx등을 커스트마이징하여 상용 서비스로 구축 하였으며 또한 내부 플랫폼에서는 NoSQL DBMongoDB를 클러스터로 구성하여 하루 천만 건 이상 대용량의 각 서버의 성능 데이터를 처리하고 있습니다. 따라서 저희 SK C&C의 오픈소스 사용 역량은 국내최고 수준이라는 자부심이 생깁니다.

오토스케링 서비스는 특정한 시간이나 요일에 많은 부하가 발생하는 서비스에 적합합니다. 이에 '오픈 테크넷 서밋 2013 Fall' 에서 중소형 게임사를 포함한 많은 기업체 참석자들이 SK C&C의 오토스켈링 서비스 구현에 대해 높은 관심과 호응을 보여주었습니다. (관련기사)

 

(사진2) SW 로드밸런서 서비스 웹콘솔 화면으로 로드밸런서에 연결된 서버들의 상태를 확인하고 추가 삭제 및 다양한 옵션을 설정 할 수 있습니다. 복제된 VM도 이 콘솔에서 확인 할 수 있습니다.

 

(사진3) 네트워크 부하 증가로 오토스켈링이 발생한 상황을 모니터링 서비스의 웹콘솔로 실시간으로 확인하는 데모 화면 입니다. 최대 임계치를 넘어서 두번 자동으로 Scale Out이 수행되어 부하 유지하다 부하 발생 중지 후에 최소 임계치 아래로 내려간 후 Scale In되어 복제된 VM이 자동으로 삭제 되는 상황입니다.

 

 

) SK C&C 인프라솔루션사업팀 서정욱 차장

 

 

 

티스토리 툴바