Web-based microservice deployment system in kubernetes environment

쿠버네티스 환경에서 웹 기반의 마이크로 서비스 배포 시스템

  • 신정은 (숭실대학교 소프트웨어학부) ;
  • 권재환 (숭실대학교 융합소프트웨어학과) ;
  • 김명호 (숭실대학교 소프트웨어학부)
  • Published : 2020.07.15

Abstract

최근 마이크로서비스 아키텍처(Microservice Architecture)를 도입하는 프로젝트가 많아짐에 따라 컨테이너 오케스트레이션 도구인 쿠버네티스의 필요성이 증대되고 있다. 쿠버네티스 환경을 구성하고 서비스를 테스트 및 배포하기 위해서는 클러스터링을 하고 yaml파일을 작성하고 적용하여 자원을 생성하는 등의 작업이 필요하다. 이렇게 반복되는 작업을 자동화하기 위해 기존에는 쉘스크립트를 사용하는데, 이를 사용하기 위해서는 쿠버네티스 및 인프라에 관한 기초지식이 있어야 하는 문제점이 있다. 본 논문에서는 마이크로서비스를 위한 웹 기반의 배포 시스템을 제안한다. 웹을 통해 배포하고 테스트할 수 있어 기초지식이 없어도 사용할 수 있다. 웹에서 프로젝트 개발자로부터 도커 이미지와 사용할 포트번호 및 레플리카 개수를 입력받아 배포를 요청하면 쿠버네티스 환경에 배포하고, 필요한 자원들이 배포가 완료되면 엔드포인트를 제공한다. 그리고 배포된 서버의 엔드포인트에 요청을 전송하고 응답이 오는 것을 확인할 수 있어 활용성이 높다. 이 시스템은 쿠버네티스를 이용하여 복수 개의 파드(Pod)를 유지하여 가용성을 보장하고 빠르게 배포가 가능하게 한다. 또한 이미지가 업데이트되면 웹에서 요청하여 클러스터에 새 버전의 이미지로 배포한다.

Keywords