CI/CD 파이프라인: 개념, 방법, 장점, 구현 과정

URL 복사

지속적인 통합 및 지속적인 배포(CI/CD) 파이프라인은 새 버전의 소프트웨어를 제공하기 위해 수행해야 할 일련의 단계입니다. CI/CD 파이프라인은 자동화를 통해 소프트웨어 개발 라이프사이클 전반에서 소프트웨어 제공을 개선하는 데 중점을 두는 사례입니다. 

소프트웨어 개발 라이프사이클의 개발, 테스트, 프로덕션, 모니터링 단계 전반에서 CI/CD를 자동화하는 조직은 더욱 빠른 속도로 더욱 안전하게 고품질 코드를 개발할 수 있습니다. CI/CD 파이프라인의 각 단계를 수동으로 실행할 수도 있지만, CI/CD 파이프라인의 진가는 자동화할 때 드러납니다.

Linux를 통해 혁신 및 운영 효율성 확장

 

3 Containers in the clouds illustration

파이프라인은 코드를 빌드, 테스트, 배포하는 과정을 거쳐 소프트웨어 개발을 추진하는 프로세스이며, CI/CD라고도 합니다. 프로세스를 자동화함으로써 인적 오류를 최소화하고 소프트웨어 출시 방식에 일관된 프로세스를 유지하는 것을 목표로 합니다. 파이프라인에 포함된 툴에는 코드 컴파일, 유닛 테스트, 코드 분석, 보안, 바이너리 생성 등이 있습니다. 컨테이너화된 환경에서는 하이브리드 클라우드 전반에 배포할 컨테이너 이미지에 코드를 패키징하는 경우도 이러한 파이프라인에 포함됩니다.

CI/CD는 개발자와 IT 운영 팀이 협업해 소프트웨어를 배포하는 DevOps 방법론의 근간입니다. 사용자 정의 애플리케이션이 기업 차별화의 핵심 요소가 되면서 코드를 얼마나 빨리 릴리스할 수 있느냐가 경쟁력의 차별화 요소가 되었습니다.

 

 

CI/CD Flow

Red Hat 리소스

전통적인 CI/CD 시스템은 가상 머신을 사용하는 파이프라인을 위해 설계되었지만, 클라우드 네이티브 애플리케이션 개발은 CI/CD 파이프라인에 여러모로 유익합니다.

컨테이너가 있는 CI/CD 파이프라인은 어떤 모습일까요?

Tekton 프로젝트를 통해 쿠버네티스 스타일의 제공 파이프라인을 구축하고, 이것으로 마이크로서비스의 라이프사이클 전체를 제어할 수 있습니다. 그러면 중앙에서 CI(continuous integration) 서버, 플러그인, 설정을 유지하고 관리할 필요가 없습니다.

Red Hat® OpenShift® PipelinesTekton을 기반으로 하는 쿠버네티스 네이티브 CI/CD 솔루션으로, OpenShift 및 Red Hat 개발자 툴과 긴밀히 통합되어 CI/CD 경험을 제공합니다. OpenShift Pipelines는 CI/CD 파이프라인의 각 단계를 자체 컨테이너에서 실행하도록 설계되어, 각 단계를 파이프라인의 요구에 맞게 독립적으로 확장할 수 있습니다.

도큐멘테이션 보기

Red Hat OpenShift Pipelines 기능

 

쿠버네티스 네이티브 파이프라인

표준 Tekton CRD를 사용하여 컨테이너로 실행되고 온디맨드로 확장되는 파이프라인을 정의합니다.

서버리스 실행

중앙 CI/CD 서버를 관리하지 않고도 팀의 제공 파이프라인, 플러그인, 액세스 제어를 완벽하게 제어합니다.

통합된 CI/CD 경험

Red Hat OpenShift 콘솔 개발자 관점, 커맨드라인 인터페이스(CLI), 통합 개발 환경(IDE)을 통해 간소화된 사용자 환경을 제공합니다.

 

Tekton클라우드 네이티브 CI/CD 파이프라인을 신속히 생성하기 위한 오픈소스 프레임워크를 제공합니다. 쿠버네티스 네이티브 프레임워크인 Tekton을 사용하면 여러 클라우드 공급업체 또는 하이브리드 환경에 더 수월하게 배포할 수 있습니다. Tekton은 쿠버네티스의 CRD(Custom Resource Definition)를 활용하여 쿠버네티스 컨트롤 플레인에서 파이프라인 태스크를 실행합니다. 또한 Tekton은 표준 업계 사양을 준수하므로 Jenkins, Jenkins X, Skaffold, Knative와 같은 기존 CI/CD 툴 뿐 아니라 OpenShift와도 효과적으로 연동됩니다.

Jenkins 사용자를 위한 Tekton Pipeline 가이드

 

허브

레드햇 공식 블로그

레드햇 공식 블로그에서 고객, 파트너, 커뮤니티 에코시스템 등 현재 화제가 되는 최신 정보를 살펴 보세요.

모든 Red Hat 제품 체험판

무료 제품 체험판을 통해 핸즈온 경험을 얻고, 자격증 시험에 대비하거나 해당 제품이 조직에 적합한지 평가할 수 있습니다.

추가 자료

DevOps 자동화란?

DevOps 자동화는 애플리케이션을 더 빨리 프로덕션에 배포하기 위해 사람의 개입을 줄이고 기술을 활용하는 것입니다.

내부 개발자 플랫폼이란?

IDP(내부 개발자 플랫폼)는 개발자가 코드를 생성하고 배포하는 데 필요한 표준화된 셀프 서비스 툴과 기술 세트로 구성됩니다.

플랫폼 엔지니어링이란?

플랫폼 엔지니어링은 생산성, 애플리케이션 주기, 시장 출시 시간을 개선하는 데 중점을 둔 소프트웨어 개발의 한 분야입니다.

DevOps 리소스