본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

지속적 배포의 핵심 전략··· ‘카나리 릴리즈’ 살펴보기

support 게시글 작성 시각 2021-12-30 15:41:20 게시글 조회수 3420

2021.12.29

ⓒCIO Korea/Isaac Sacolick

 

오늘날 데브옵스 조직은 지속적 통합/지속적 제공(CI/CD)을 사용하여 딜리버리를 자동화하고, 코드형 인프라(Infrastructure as Code; IaC)를 활용해 인프라를 구성하며, 쿠버네티스를 통해 환경을 컨테이너화한다. 또 지속적인 테스트로 품질을 높이고, AI옵스(AIops)를 사용하여 모니터링 및 관찰 가능성을 중앙집중화한다. 이러한 관행 덕분에 배포 빈도를 높이는 동시에 변경으로 인한 보안, 성능, 안정성 위험을 최소화할 수 있다.
하지만 변경 사항과 액세스 권한에 따라 위험을 줄이고 릴리즈를 제어하고자 한다면 애플리케이션 또는 배포를 구성하고 관리하는 추가적인 기법이 필요하다. 

 

릴리즈 파이프라인에는 유연한 관리 및 배포 옵션이 필요하다
배포를 제어하는 한 가지 방법은 기능 플래그를 활용하여 사용자별로 기능 액세스를 전환, A/B 테스트, 세분화하는 것이다. 데브옵스 팀은 기능 플래그를 사용하여 앱을 클라우드로 이동하거나, 단일 애플리케이션을 마이크로서비스에 리팩토링할 때 새롭게 개발한 기능을 검증할 수 있다.

 

‘카나리(Canary)’ 배포란?
블루-그린 배포의 발전에는 카나리 배포 또는 릴리즈가 포함돼 있다. 하네스(Harness)의 수석 제품 관리자 로한 굽타에 따르면 카나리 릴리즈는 애플리케이션 또는 서비스를 일부 사용자에게 점진적으로 공개하고, 새 소프트웨어 아티팩트를 프로덕션 환경에 배포하는 범위, 영향, 위험을 줄이는 배포 전략이다. 


데브옵스 팀이 카나리 배포를 사용하는 방법
런치다클리(LaunchDarkly)의 공동설립자 겸 CTO 존 코듀말은 데브옵스 팀이 카나리 배포를 통해 기능 플래그 지정을 사용하는 방법을 언급하면서, “카나리 배포는 광범위한 릴리즈에 앞서 제한된 사용자에게만 새 소프트웨어 기능을 제공한다. 그 목적은 전체적인 위험을 줄이면서 사용자에게 더 나은 소프트웨어 경험을 제공하는 것이다. 광범위한 릴리즈 검증을 제공하는 데 유용하며, 애플리케이션 계층에 도달하여 개별 변경 사항을 분리할 수 있는 기능 플래그와 함께 이상적으로 작동한다”라고 설명했다. 

 

속도, 확장성, 안정성이 중요하다면 ‘지속적 배포(CD)’를 목표로 하라
앞서 언급한 것처럼 지속적 배포는 높은 기준이며, (이를 위해) 데브옵스 팀은 몇 가지 성숙한 테스트, 딜리버리 자동화, 모니터링 관행을 확보해야 한다. 많은 비즈니스, 애플리케이션, 서비스는 지속적 제공으로도 충분할 수 있으며, 지속적 배포 역량을 추구하기에는 비용이 너무 많이 들거나 기술적으로 복잡할 수 있다.

(후략)

 

[원문 기사 :https://www.ciokorea.com/news/220189]

 

본 내용은 한국아이디지() (https://www.idg.co.kr/)의 저작권 동의에 의해 공유되고 있습니다.

Copyright 2020 International Data Group. 무단전재 및 재배포 금지.

 
맨 위로
맨 위로