CI/CD

CI/CD ( Continuous Integration / Continuous Delivery)

CI/CD는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법입니다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. CI/CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(일명 “인테그레이션 헬(integration hell)”)을 해결하기 위한 솔루션입니다.

특히, CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공합니다. 이러한 구축 사례를 일반적으로 “CI/CD 파이프라인”이라 부르며 개발 및 운영팀의 애자일 방식 협력을 통해 지원됩니다.플리케이션 통합 전략의 일부로 제공될 수 있습니다.

CI (지속적인 통합)과 지속적인 딜리버리 (CD)의 차이는?

 CI와 CD는 커버하는 프로세스의 범위에서 차이가 있습니다.
코드 레벨의 테스트까지 자동화하는 것이 CI 이며,  시스템 테스트 및 배포 등 실행 환경 과 릴리즈까지 자동화하는 것이 CD 입니다.
CI (지속적인 통합) / CD (지속적인 전달)을 적용하여 품질 향상과  개발 효율성을 동시에 달성하고 릴리즈 하는 기간도 단축합니다.
최근에  비즈니스의 변화가 빨라지면서 시스템과 서비스를 신속하게 변화해야 하는 필요성이 있습니다.
그런 배경에서 현재의 CI (지속적인 통합) / 지속적인 딜리버리 (CD)의 활용이 확산되고 있습니다.

지속적인 전달 ( CD ) 의 장점

CI (지속적인 통합)에서는 개발자가 자신이 변경한 코드를 자주 소스코드 저장소에 커밋하고 그때마다 자동화 된 빌드와 테스트를 실행합니다.
짧은 사이클로 통합을 반복하면서 통합시 발생된 오류를 신속하게 수정하여 개발팀은 통합된 소프트웨어를보다 신속하게 개발할 수있게됩니다.

버그를 신속하게 발견하고 대응

잦은 테스트가 가능해 지기 때문에 개발 팀에서는 버그가 나중에 큰 문제로 발전하기 전에 발견하고 해결할 수 있습니다.

신속한 업데이트와 배포

CI (지속적인 통합)은 항상 빌드가 통과 저장소를 유지하고 출시 할 최신 버전의 특정을 항상 할 수 있습니다. 따라서 고객에게 신속하고 자주 업데이트를 배포하는 것이 가능합니다.

개발 생산성 향상

CI (지속적인 통합) 오류를 작은 단위로 미치는 영향을 제한 수정하게되므로 수정 비용을 줄일 수 있습니다. 지금까지 프로젝트의 마지막 단계에서 발견 한 오류가  일찍 적은 비용으로 해결되기 때문에 개발팀의 생산성을 향상시키고 품질 좋은 소프트웨어 개발에 연결됩니다

지속적인 전달 ( CD ) 의 장점

지속적인 전달(CD)을 할 수있게 된 배경은 클라우드와 컨테이너 기술의 확산과 인프라를 코드로 관리 할 수있게 되어서 입니다. 따라서 소스 커밋에서 릴리즈까지 모든 작업을 자동으로 수행 할 수 있습니다.

소프트웨어 릴리스 프로세스 자동화

지속적인 딜리버리 (CD)에서는 개발팀 코드 변경,  빌드, 테스트, 운영 환경 릴리스에 대한 준비가 자동화되기 때문에 소프트웨어의 전달 효율이 상승하고 신속하게 실시 할 수 있습니다.

개발자 생산성 향상

개발자를 수작업으로 부터 벗어나게 함으로써 개발 팀의 생산성을 향상하고 고객에게 배포하기 전에 오류 및 버그를 줄이는 노력에 도움이됩니다.

버그를 신속하게 발견하고 대응

테스트의 빈도를 높이고  내용을 충실하게하여 나중에 큰 문제로 발전하기 전에 버그를 조기에 발견하고 해결할 수 있습니다. 또한 지속적인 딜리버리 (CD)에 의해 전체 프로세스가 자동화되기 때문에 자신의 코드에 추가적인 종류의 테스트를 쉽게 수행 할 수 있습니다.

신속한 업데이트와 배포

지속적인 딜리버리 (CD) 개발 팀이 고객에게 신속하고 자주 업데이트를 배포하는 데 도움이됩니다. 지속적인 딜리버리 (CD)을 제대로 구현하면 개발자는 표준화 된 테스트 프로세스를 통과 배포 준비가 된 빌드 결과물을 항상 수중에있는 것입니다.

References & Related Links

Summary
product image
Aggregate Rating
5 based on 6 votes
Brand Name
Red Hat
Product Name
Openshift Container Platform