Istio와 Spinnaker를 활용한 Blue-Green + Canary 자동 배포 전략 도입기
·2020.08.19 09:00
핵심 내용
데브시스터즈가 Istio를 활용해 Blue-Green과 Canary 전략을 결합한 자동 배포 시스템을 구축했다.
1 / 2
자세히 보기
데브시스터즈는 빈번한 게임 업데이트를 안전하고 효율적으로 수행하기 위해 기존 Kubernetes의 Rolling Update 방식을 개선한 새로운 배포 전략을 도입했다.
기존 방식은 빠른 롤백, 신규 서버의 모니터링 및 디버깅, 서버 웜업(Warm-up), 업데이트 시간 단축이라는 요구 사항을 모두 충족하기 어려웠다. 이를 해결하기 위해 Blue-Green의 빠른 전환 및 롤백 장점과 Canary의 점진적 검증 장점을 결합한 하이브리드 방식을 채택했다.
도입된 배포 파이프라인은 다음과 같은 단계로 진행된다:
- 구 서버와 동일한 스펙으로 신 서버 프로비저닝
- 신 서버로 소량의 트래픽을 먼저 전송
- 집중 모니터링 및 디버깅 후 트래픽 비중을 점진적으로 확대
- 안정성이 확인되면 구 서버 종료
트래픽 제어의 핵심 기술로 Istio를 활용했다. Virtual Service를 통해 특정 호스트에 대한 트래픽 가중치를 정의하며, 배포 자동화를 위해 Virtual Service를 조작하는 Go 기반 이미지를 제작하여 Kubernetes Job으로 실행하도록 구현했다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.