#1 AWS 환경에 Spinnaker 설치하기 - Spinnaker란?, 개요
June/AWS

#1 AWS 환경에 Spinnaker 설치하기 - Spinnaker란?, 개요

1. 개요

현재 마이다스아이티의 웹 서비스는 AWS에 의존성을 두고 있다.
고객사를 두고 있는 만큼, 웹솔루션 서비스는 서버 다운이나 장애에 굉장히 민감하다.
그렇기 때문에 서버를 운영하는 입장에서 까다로운 부분 중 하나가 배포이다.
(배포는 war나 jar 파일을 각 운영 서버에 적용, 반영 하는 것으로 범위를 한정한다.)

우선, 우리 회사의 배포 환경에서 가장 중요시 여겨야 할 것은 무중단이다.
특히나 채용시즌에는 다수의 유저가 동시 접속하기 때문에, 배포가 그 걸림돌이 되서는 안된다.

현재는 Jenkins + AWS Codedeploy를 사용하여 배포를 진행하고 있지만,
서비스의 규모가 더 확대되고, 더 안정적인 배포를 위하여 Spinnaker를 연구 중에 있다.

실제로 처음 접하는 툴이며, 모든 과정이 낯설다.
그렇기 때문에 해당 블로그에서는 전문적인 용어보다 빠르게 이해하고,
쉽게 다가갈 수 있도록 설명하기로 한다.

이번 연구를 통하여 Spinnaker 도구를 탐색하고, 추후에 어떻게 활용할지를 연구한다.
또한, 도입할 만한 가치가 있는지를 알아본다.

(대부분의 연구가 배포환경을 개선하는 프로젝트 내부에 할당되어 있어서, 업무시간을 할애하여 진행 할 수 있다. 마이다스 아이티의 이러한 점이 굉장히 개발자가 성장하는데 큰 장점인 듯 하다.
)

만일, AWS 환경을 사용하고 있고, 스핀에이커를 설치하고 싶다면 이 글의 내용만 따라오면 끝에는 스핀에이커가 설치 되 있을 것을 어느정도 보장한다.

2. Spinnaker

스핀에이커는 웬만한 글로벌 대기업에서 적극 활용되는 강력한 툴이다.
Netflix에서 생성한 것으로 알고 있는데, 연동성의 범위도 넓고 사용자가 파이프라인을 너무나 쉽고 편하게 구축하여 CI/CD 환경 구축에 굉장히 용이하다고 알려져 있다.

Spinnaker를 설치하게 되면 내부 구성이 굉장히 복잡하다고 느껴질 수도 있는데,
사전에 관련된 용어와 기본적으로 설치되는 설정들을 참고할 수 있도록 홈페이지에서 자료를 가져왔다.