바로 가기

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

URL 복사

2023 글로벌 기술 전망: Red Hat 리포트

2023 글로벌 기술 전망을 다운로드하여 전세계 IT 리더 1,703명을 대상으로 한 설문조사 결과를 살펴보고 2023년 기업의 최우선 과제를 확인하세요!

CI/CD 파이프라인은 새 버전의 소프트웨어를 제공하기 위해 수행해야 할 일련의 단계입니다. 지속적 통합/지속적 배포(CI/CD) 파이프라인은 DevOps 또는 사이트 신뢰성 엔지니어(SRE) 방식을 통해 더 효과적으로 소프트웨어를 제공하는 데 초점을 맞춘 방법입니다.

CI/CD 파이프라인은 특히 통합 및 테스트 단계와 제공 및 배포 단계에서 모니터링 및 자동화를 도입하여 애플리케이션 개발 프로세스를 개선합니다. CI/CD 파이프라인의 각 단계를 수동으로 실행할 수도 있지만, CI/CD 파이프라인의 진가는 자동화할 때 드러납니다.

CI/CD 파이프라인의 단계는 각기 다른 태스크 하위 집합으로 이루어져 있는데, 이를 파이프라인 단계(pipeline stage)라고 부릅니다. 일반적인 파이프라인 단계는 다음과 같습니다.

  • 빌드(Build) - 애플리케이션을 컴파일하는 단계
  • 테스트(Test) - 코드를 테스트하는 단계. 이 단계를 자동화하여 시간과 수고를 줄일 수 있습니다.
  • 릴리스(Release) - 애플리케이션을 리포지토리에 제공하는 단계
  • 배포(Deploy) - 코드를 프로덕션에 배포하는 단계
  • 검증 및 컴플라이언스(Validation & compliance) - 빌드 검증 단계는 해당 조직의 필요에 따라 결정됩니다. Clair와 같은 이미지 보안 스캔 툴을 사용하여 알려진 취약점(CVE)과 비교하는 방법으로 이미지의 품질을 보장할 수 있습니다.
     

CI/CD Flow

여기에 나오지 않은 파이프라인 단계도 있습니다. 이 목록은 흔히 볼 수 있는 단계의 예일 뿐입니다. 조직의 필요에 따라 고유한 파이프라인을 구성하면 됩니다.

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

 

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

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

Keep reading

문서

DevSecOps란?

DevOps의 민첩성과 대응 능력을 최대한 활용하려면 IT 보안 팀이 애플리케이션의 전체 라이프사이클에서 주요 역할을 해야 합니다.

문서

CI/CD(지속적 통합/지속적 제공): 개념, 방법, 장점, 구현 과정

CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공합니다.

문서

DevOps 엔지니어는 어떤 사람일까요?

DevOps 엔지니어는 조직 내 협업, 혁신, 문화적인 변화를 지원하는 기술 및 전문성을 두루 갖추고 있습니다.  

DevOps에 대한 자세한 내용

제품

Red Hat 전문가가 참여하는 집중적인 전문 레지던스 환경에서 애자일 방법론과 오픈소스 툴로 기업의 비즈니스 문제를 해결하는 방법을 학습합니다.

다양한 시각으로 고객의 상황을 파악하고 이를 바탕으로 고객의 과제를 분석하여 종합적이고 비용 효율적인 솔루션을 통해 문제를 해결하도록 돕는 전략적인 조언자입니다.

리소스

체크리스트

DevOps 방법론을 활용한 엔터프라이즈 자동화

백서

Red Hat Ansible Automation Platform으로 CI/CD 파이프라인 간소화

Illustration - mail

유용한 콘텐츠 더 보기

Red Hat Shares 뉴스레터를 구독해 보세요(무료).