grep

Engineering

AutoScale with Application Deployment

NHN

2020년 12월 31일

원문에서 보기 ↗

기능 설명

AutoScale로 인해 새로 생성된 인스턴스에 고객이 정의한 애플리케이션을 자동으로 배포할 수 있게 돼서 진정한 의미의 AutoScale을 경험하실 수 있게 됐습니다.

이전 IaaS 서비스 소개글 ( 오토스케일(Autoscale)의 이해와 예제를 통한 구성(TOAST 서비스 들여다보기) ) 에서 AutoScale에 대한 정의는 다음과 같다고 했습니다.

오토스케일은 인스턴스의 부하를 모니터링해서 특정 이벤트에 대해 인스턴스를 추가/삭제하는 기능을 제공하는 서비스입니다.

대부분의 경우 인스턴스 생성 시 사용자 서비스에 맞도록 설정이 변경된 VM 이미지 ( 이하 이미지 )를 사용하게 되는데 사용자가 이미지를 어떻게 사용하는지에 따라 아래와 같이 나눠질 수 있습니다.

  1. 실제 구동이 가능한 서비스(애플리케이션)가 포함된 이미지
    • 이미지 배포가 가능해야 하며 이미지 사이즈가 커서 관리 이슈 / 배포 시간이 오래 걸린다는 단점이 있습니다.
  2. 서비스 구동 환경 이미지 ( 애플리케이션 불포함 )
    • 클라우드 서비스 업체에서 하드닝한 표준 이미지로 애플리케이션 배포만 별도로 진행합니다.

요즘에는 서비스를 Container 환경으로 전환해서 1번 형태의 단점이 상쇄되면 1번 형태 이미지를 선택 및 운영이 가능하겠지만 아직 전환이 안되었고 서비스가 지속적으로 업데이트되는 상황이라면 2번 이미지를 선택하게 됩니다.

문제점

2번 이미지를 가지고 AutoScale 기능을 사용했을 때 이벤트를 통해 새로 생성된 인스턴스는 고객 서비스(애플리케이션)가 구동될 환경의 인스턴스만 만들어졌고 실제 서비스는 동작하지 않는 껍데기만 만들어집니다. 결국 개발자는 신규로 생성된 인스턴스에 배포를 해야 하는 불편함이 있습니다.

해결

이번에 추가된 기능은 AutoScale로 인해 새로 생성된 인스턴스에 고객이 정의한 애플리케이션을 자동으로 배포해서 위와 같은 불편함을 없애주는 기능입니다. 이 기능을 사용하시면 진정한 의미에서의 AutoScale 기능을 사용하실 수 있습니다.

사용자 가이드

실제 AutoScale 기능의 활성화부터 서비스 애플리케이션의 배포까지 필요한 일련의 과정을 아래 단계를 통해 진행해볼 수 있습니다.

  1. AutoScale 설정
  2. Toast Deploy 설정
  3. 수동 배포 테스트
  4. 자동 배포 테스트
  5. 신규 생성된 서버 확인

그럼 아래 화면 캡처된 가이드를 따라 진행해보도록 하겠습니다.

  1. AutoScale 그룹 생성
  1. Toast Deploy 설정
  1. 수동 배포 테스트
  1. Scale Out 테스트
  1. 신규 생성된 서버 확인

마치며

좀 더 나은 개발 문화를 향해 신기술에 대해서 도입도 중요하지만 현재 서비스 환경에 대해서도 지원이 필요한 기능을 제공해드릴 수 있어서 기쁘게 생각합니다. 앞으로도 좀 더 나은 기능 / 개발 환경/ 문화를 소개해드릴 수 있으면 좋겠습니다.