이 글은 2024년 현재 알아야 할 CI/CD 트렌드 5가지를 정리했습니다. CI/CD는 DevOps의 핵심 프로세스이죠. 오늘날 시장 상황과 고객 피드백을 빠르게 반영해 제품을 혁신하고, 비즈니스 경쟁력을 높이려면 개발 속도가 중요한데요. CI/CD는 이러한 개발 속도를 가속화하며, 소프트웨어 개발 프로세스를 향상하는 데 주효한 역할을 합니다.
글로벌 IT 기업과 업계 전문가 등은 2024년 CI/CD 트렌드를 다양하게 제시했는데요. 이 글은 여러 전망 가운데 2~4회 지목된 트렌드 3가지와 영국 개발자 분석 기업 SlashData, 글로벌 오픈 소스 커뮤니티 Continuous Delivery Foundation(CDF)이 발표한 ‘State Of Continuous Integration & Continuous Delivery Report’ 가운데 트렌드 2가지를 골라 총 5가지 CI/CD 트렌드를 선정했습니다.
CI/CD 도구 사용 시 개발 생산성 향상, 여러 셀프 호스팅 CI/CD 도구 사용 시 배포 성과 저하, AI와 머신러닝의 CI/CD 통합 강화, GitOps의 CI/CD 영향력 증대, 엣지 컴퓨팅 수용 필요성 증가가 그 내용인데요. 지금부터 각 트렌드의 구체적인 현황과 등장 배경, 전망을 살펴보겠습니다.
1. CI/CD 도구 사용 시 개발 생산성 UP
셀프 호스팅, 관리형 CI/CD 도구 사용 유형별 코드 변경 리드 타임과 배포 빈도, 서비스 복구 시간 비중. 출처=SlashData, CDFCI/CD 도구(관리형* 또는 셀프 호스팅**)를 사용하는 개발자는 그렇지 않은 개발자와 비교해 코드 변경 리드 타임과 서비스 복구 시간, 배포 빈도에서 높은 성과를 낼 가능성이 더 큽니다. 이 세 가지는 개발자 생산성을 판단하는 DORA 핵심 지표 일부인데요. 여기서 CI/CD 도구를 사용하지 않는 개발자는 이를 사용하는 개발자보다 성과가 낮을 가능성이 더 크죠. 특히 관리형과 셀프 호스팅 CI/CD 도구를 둘 다 사용하는 개발자는 코드 변경 리드 타임과 서비스 복구 시간, 배포 빈도에서 가장 우수한 성과를 보입니다. 올해 4월 SlashData와 CDF가 이러한 조사 결과***를 발표했습니다.
두 기관에 따르면, 코드 변경 리드 타임이 하루 미만인 개발자는 관리형과 셀프 호스팅 CI/CD 도구를 모두 사용하는 개발자(24%)가 가장 많았는데요. 관리형 CI/CD 도구만 사용하는 개발 자(22%), 셀프 호스팅 CI/CD 도구만 사용하는 개발자(17%), CI/CD 도구를 사용하지 않는 개발자(13%)는 그 뒤를 이었습니다. 한편, 코드 변경 리드 타임이 한 달 이상인 개발자는 CI/CD 도구를 사용하지 않는 개발자(40%)가 가장 많고, 셀프 호스팅 CI/CD 도구만 사용하는 개발자(33%), 관리형 CI/CD 도구만 사용하는 개발자(30%), 관리형과 셀프 호스팅 CI/CD 도구를 모두 사용하는 개발자(19%) 순이었습니다.
서비스 복구 시간에서도 비슷한 경향이 나타났는데요. 이 시간이 1시간 미만인 개발자는 관리형과 셀프 호스팅 CI/CD 도구를 모두 사용하는 개발자(25%)가 가장 많았고요. 셀프 호스팅 CI/CD 도구만 사용하는 개발자(17%), 관리형 CI/CD 도구만 사용하는 개발자(15%), CI/CD 도구를 사용하지 않는 개발자(11%)는 그 뒤를 이었습니다. 한편, 서비스 복구 시간이 일주일 이상인 개발자는 CI/CD 도구를 사용하지 않는 개발자(32%)가 가장 많고, 셀프 호스팅 CI/CD 도구만 사용하는 개발자(29%), 관리형 CI/CD 도구만 사용하는 개발자(25%), 관리형과 셀프 호스팅 CI/CD 도구를 모두 사용하는 개발자(17%) 순이었죠. SlashData와 CDF는 ‘관리형과 셀프 호스팅 CI/CD 도구를 다 사용하면 관리형 도구의 편의성과 기본 제공 기능, 셀프 호스팅 도구의 맞춤형 기능을 결합해 효율성을 높일 수 있다’고 분석합니다. 이는 CI/CD 관행을 최적화하는 데도 도움이 되죠.
*관리형 CI/CD 도구: Azure Pipelines, AWS CodePipeline
**셀프 호스팅 CI/CD 도구: Jenkins, TeamCity
***이 내용은 2020년 3분기부터 2024년 1분기까지 전 세계 15만명 이상 응답자를 대상으로 실시한 SlashData의 8차례 Developer Nation 설문조사 데이터에 기반함. 위 통계에서 %는 각 CI/CD 구성의 DevOps 실무자 비율(n=6930)
2. 여러 셀프 호스팅 CI/CD 도구 사용 시 성과 저하
셀프 호스팅, 관리형 CI/CD 도구 수에 따른 코드 변경 리드 타임과 배포 빈도, 서비스 복구 시간 성과. 출처=SlashData, CDF동일한 형태의 여러 CI/CD 도구를 사용하면 배포 성과는 떨어질 수 있습니다. 특히 셀프 호스팅 CI/CD 도구를 여럿 사용할 때 이러한 현상이 두드러지는데요. SlashData와 CDF 조사 결과*, 셀프 호스팅 CI/CD 도구 수가 늘어나면, 코드 변경 리드 타임과 배포 빈도, 서비스 복구 시간이 한 달 이상인 저성과자 비중은 급증합니다. 두 기관은 “개발자가 사용하는 CI/CD 도구 수가 증가할수록 이득이 줄어든다”라고 해석하는데요. 셀프 호스팅 CI/CD 도구를 더 많이 사용하는 것과 코드 변경 리드 타임, 배포 빈도, 서비스 복구 시간 향상에는 관계가 없다고 합니다.
SlashData와 CDF에 따르면, 코드 변경 리드 타임이 한 달 이상인 개발자는 셀프 호스팅 CI/CD 도구를 4개 사용하는 개발자가 가장 많았고요. 배포 빈도와 서비스 복구 시간이 각각 한 달 이상인 개발자는 셀프 호스팅 CI/CD 도구를 5개 이상 쓰는 개발자가 가장 많았습니다. 반면에 코드 변경 리드 타임과 서비스 복구 시간이 각각 하루 미만인 개발자는 관리형 CI/CD 도구를 1개 사용하는 개발자가 가장 많았죠. 동일한 형태의 CI/CD 도구를 더 많이 사용할수록 코드 변경 리드 타임, 배포 빈도, 서비스 복구 시간이 길어 성과가 낮고요. 이러한 도구를 적게 사용하면 코드 변경 리드 타임과 서비스 복구 시간이 짧아 성과가 높다는 걸 알 수 있습니다.
SlashData와 CDF는 셀프 호스팅 CI/CD 도구 수가 늘어 서비스 복구 시간에 부정적 영향을 미치는 주요 원인으로 ‘상호운용성’ 문제를 꼽습니다. 여러 CI/CD 도구를 사용하면 모든 도구를 제대로 통합하기가 어렵다는데요. 이에 서비스에 영향을 미치는 문제를 분리하기가 힘들 수 있죠. 즉, 셀프 호스팅 CI/CD 도구를 사용할 때, 여러 도구를 통합하는 일은 최적으로 구현되지 않을 수 있고요. 이에 기능이 중복돼 성과에 영향을 줄 수 있다고 합니다.
*’1. CI/CD 도구 사용 시 개발 생산성 UP’에서 언급한 설문조사와 동일한 조사. 위 통계에서 %는 여러 CI/CD 도구를 동시에 사용하는 각 성과 지표의 DevOps 실무자 비율(셀프 호스팅 n=1295, 관리형=1192)