[테크월드=김경한 기자] 해마다 연말이 되면 체육관은 한산해진다. 그러다가 한 해가 시작되는 1월이 되면, 새해 목표를 세운 사람들로 다시 가득 차기 시작한다. 그러나 2월 중순으로 넘어가면 다시 체육관을 찾는 사람이 적어지게 된다. 이런 약속은 왜 지키기 어려운 것일까?

체육관의 비어 있는 러닝머신을 보면서, 묘하게도 엔터프라이즈 데브옵스(DevOps) 상태가 연상됐다. 글로벌 시장조사기관 ‘포레스터(Forrester)’에 따르면, 디지털 혁신 노력의 50%가 지지부진한 것으로 나타났다. 이는 개인 영역과 마찬가지로 전문 영역 또한 지속적인 노력이 어렵다는 것을 보여준다. 물론 데브옵스를 채택하고, 확장하는 것은 쉬운 일이 아니다. 효과적인 방안이 무엇일까 고민하다가 데브옵스 자체와 혁신 프로세스 사이에 몇 가지 유사점을 발견했다.

 

성공의 결과

DORA의 ‘데브옵스 현황 보고서(State of DevOps report)’에 따르면, 처리량과 안정성을 기준으로 데브옵스 실행율이 가장 높은 기업이 수익성, 시장점유율, 고객 만족도 측면에서 최고 수준의 비즈니스 성과를 달성한 것으로 나타났다. 데브옵스를 중단하지 않고 신속하게 수행해 온 모범 기업을 중심으로 인상적인 결과가 실현된 것이다. 

- 46배 더 빈번한 배포(처리량)
- 리드타임 2555배 단축(처리량)
- 7배 더 낮은 변경 실패율(안정성)
- 복구시간 2604배 단축(안정성)

위의 지표는 대규모 작업을 여러 작은 단위로 분할하는 데브옵스 혁신의 핵심 원리를 보여주고 있다. 

 

변경작업 축소

변경이 적다는 것은 위험을 줄이면서 작업을 보다 신속하게 처리할 수 있음을 의미한다. 이는 계획하는 데 소요되는 시간을 줄이고, 실행 부담을 낮추며, 보다 쉽게 문제를 해결할 수 있도록 해준다. 그러나 릴리스 주기 단축을 수반하지 않는 한 코드 변경의 규모가 작다는 것만으로 의미가 없다. 본질적으로 CD(continuous Deploy, 지속적 배포)가 수행되지 않으면 애자일이 실현될 수 없다.

몇 달 분량에 이르는 애자일 코드 반복을 단일 모놀리식 릴리스로 구현하게 되면, 엄청난 리스크가 다시 발생한다. 이로 인해 애자일 소프트웨어 개발을 채택하기 위해 애초에 수행한 작업의 상당 부분이 무효화된다. 대규모 릴리스가 대기 중인 상태에서는 누군가 주말에 작업을 하면서 불가피하게 발생되는 오류들을 모두 해결해야 한다. 이러한 주말 릴리스 업무는 상당한 부담이 될 수 있다. 제즈 험블(Jez Humble)이 언급한 것처럼, ‘지속적인 배포에 있어 가장 중요한 지표는 업무시간 외에 릴리스 작업을 수행하는 데 소요되는 작업자의 처리 시간이며, 목표는 0이다.

실제로 CD는 애자일 개발이 결실을 맺을 수 있도록 해준다. 이런 이유로 가트너(Gartner)는 이미 IT 부서의 40%가 CI/CD에 투자했으며, 나머지는 2019년에 투자를 완료한 것으로 보인다. CD는 작업 규모를 작은 단위로 나누는 것이다. 애자일이 보다 작은 코드 변경을 가능하게 하는 것과 마찬가지로 CD는 릴리스 규모를 더 작게 만들 수 있다.

 

작을 뿐만 아니라 반복적

깃랩(GitLab)은 지속적인 배포·구축의 의미를 ‘저스트(Just) 커밋(Just Commit)‘이라는 용어를 사용한다. 이런 개념은 완전히 자동화된 CI/CD 파이프라인이 있는 경우, 개발자는 코드를 브랜치에 커밋만 하면, 그 코드를 컨테이너화에서 보안 테스트에 이르기까지 프로덕션과 같은 환경에서 실시간으로 실행하는 데 필요한 다른 모든 것은 자동화할 수 있다는 것을 의미한다. 마찬가지로 코드를 프로덕션에 배치하는 것도 전체 프로덕션 배포를 자동화함으로써 기능 브랜치를 다시 트렁크에 통합하는 것만큼 쉽다. 개발자에게는 ‘코드를 커밋하면, 나머지는 데브옵스 도구가 수행한다’는 메시지만 보내면 된다. 이를 한마디로 CD라고 한다.

이런 유형의 자동화가 시행되면, 변경 비용을 크게 절감할 수 있다. 이는 착수 비용은 물론, 지속적인 수행 비용 또한 낮출 수 있다. 솔루션의 전체 경로를 매핑하는 데 막대한 노력을 소모하는 대신, 간단히 다음 단계를 파악해 이를 계속 반복하면 된다. 
깃랩이 발표한 ‘글로벌 개발자 보고서’에 따르면, 개발자의 67%가 업무 수행에 있어 우선적으로 해결해야 할 과제로 방향성의 불분명성을 꼽은 것으로 나타났다. 변경을 줄임으로써 비즈니스 리더는 전체 경로를 매핑할 필요 없이 다음 단계에 대한 방향을 보다 쉽게 설정할 수 있다. 이를 통해 디지털 혁신을 실현할 수 있다. 

 

디지털 혁신 실행

모놀리식을 마이크로서비스로 분해하는 것처럼, 대규모 단위를 작은 조각으로 나누는 실행방식은 디지털 혁신을 추진하는 데에도 적용된다. 크레이톤 에이브람스(Creighton Abrams)가 언급한 것처럼 ‘코끼리를 먹을 때는 한 번에 한 입씩 먹어야’ 한다.

그렇다면 기업들은 어떻게 변경을 줄일 수 있을까?

성공적인 디지털 혁신을 달성한 대부분의 기업들은 일반적으로 단일 팀이나 소규모 혁신 단위를 기반으로 작업을 시작한다. 이런 그룹을 통해 조직의 나머지 부분에 대한 성공 또한 보장할 수 있다. 이 그룹은 조직의 다른 부서들이 채택할 수 있는 문화와 도구, 프로세스를 개발한다. 실제로 이런 실행방식을 원칙으로 적용한 사례로, 재규어 랜드로버(Jaguar Land Rover)의 시스템 엔지니어링·인포테인먼트 책임자인 크리스 힐(Chris Hill)이 주도한 혁신을 들 수 있다. 크리스가 합류했을 당시에는 3명의 빌드 엔지니어만 릴리스를 프로덕션할 수 있었으며, 각 릴리스를 완료하는데 4~6주가 소요됐다. 크리스는 조직의 모든 팀이 30분 이내에 릴리스를 완료할 수 있을 때까지 2년에 걸쳐 단계적으로 CI/CD 플랫폼을 확장했다. 현재 재규어 랜드로버는 하루에 50~70회의 배포를 수행하고 있다. 기업들은 디지털 혁신을 통해 이런 패턴을 반복할 수 있다. 이는 일반적으로 경영진이 하향식으로 성공적인 디지털 혁신을 주도하는 반면, 엔지니어가 상향식으로 이를 주도할 수 있음을 보여주는 매우 고무적인 사례다.

 

지속적으로 추진력 유지 

아가일(Argyle)에 따르면, 디지털 혁신에 착수한 기업은 91%에 이르지만, 이 중 조직 전반에 대한 전략을 수립한 기업은 절반에 불과하다. 이는 디지털 혁신 기업 중 절반이 정체 상태에 있다는 포레스터(Forrester)의 조사 지표와 일치하는 것으로 보인다.

그렇다면 기업들이 지체하지 않고, 지속적으로 디지털 혁신을 수행할 수 있는 방법은 무엇일까?

고백하자면, 필자도 1월이 돼서야 새해 결심으로 운동을 시작하는 사람 중 한 명이다. 다른 사람들이 포기하더라도 어떻게 운동을 지속할 수 있을까? ‘데브옵스’ 접근방식을 취하는 것이 성공의 열쇠라는 것을 알게 됐다. 대대적인 변화 대신 하루에 한 가지를 목표로 두고 조금씩 점진적으로 개선해 나가는 것이다. 

‘저스트(Just) 커밋’을 실행하기 위한 전략은 혁신을 지속시키는 것과 동일한 전략이다. 

작은 규모의 단일 프로젝트에서 시작해 이를 반복적인 단계로 범위를 점차 확장함으로써 기업들은 점차 지속적으로 신속하게 개선을 수행할 수 있다. CD와 함께 작은 단일 커밋의 코드 변경은 처리량과 안정성을 향상시킨다. 마찬가지로 소규모의 점진적인 프로세스 개선은 획기적인 디지털 혁신을 가져다 줄 것이다.

 

: 윌리엄 치아(William Chia) 시니어 프로덕트 마케팅 매니저

(클라우드 네이티브&깃옵스)

자료제공: 깃랩(GitLab)

회원가입 후 이용바랍니다.
개의 댓글
0 / 400
댓글 정렬
BEST댓글
BEST 댓글 답글과 추천수를 합산하여 자동으로 노출됩니다.
댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글수정
댓글 수정은 작성 후 1분내에만 가능합니다.
/ 400
내 댓글 모음
저작권자 © 테크월드뉴스 무단전재 및 재배포 금지
이 기사와 관련된 기사