웹사이트 검색

CI/CD 파이프라인이란 무엇입니까?


지속적 통합/지속적 배포 파이프라인을 정의하는 방법은 조직의 요구 사항에 따라 다릅니다.

CI/CD(지속적 통합/지속적 배포) 파이프라인은 모든 DevOps 이니셔티브의 기반입니다. CI/CD 파이프라인은 기존의 사일로를 무너뜨리고 개발 및 운영 팀이 전체 소프트웨어 개발 수명주기 동안 협업할 수 있도록 지원합니다.

더 좋은 점은 DevOps 및 CI/CD 파이프라인으로 전환하면 조직이 더 빠른 속도로 더 안전하게 소프트웨어를 제공하는 데 도움이 될 수 있다는 것입니다.

CI/CD 파이프라인 분석

CI/CD 파이프라인에 대한 정의는 다양하므로 저는 항상 조직에 다른 사람의 정의를 사용하기보다는 자신만의 CI/CD 파이프라인 버전과 기타 DevOps 개념을 정의하라고 조언합니다. 오픈 소스 CI/CD 도구는 조직의 요구 사항을 충족하는 CI/CD 파이프라인을 구성할 수 있는 자유와 옵션을 제공합니다.

CI/CD 파이프라인을 형성하는 단계는 파이프라인 단계로 그룹화된 작업의 고유한 하위 집합입니다. 일반적인 파이프라인 단계는 다음과 같습니다.

  • 빌드: 개발자가 애플리케이션 코드를 컴파일합니다.
  • 테스트: 품질 보증(QA) 팀은 자동화된 테스트 도구 및 전략을 사용하여 애플리케이션 코드를 테스트합니다.
  • 출시: 개발팀은 애플리케이션 코드를 코드 저장소에 전달합니다.
  • 배포: DevOps 팀은 애플리케이션 코드를 프로덕션 단계로 단계화합니다.
  • 보안 및 규정 준수: QA팀은 프로젝트 요구사항에 따라 빌드를 검증합니다. 이는 조직이 CVE(Common Vulnerability and Exposure)에 대해 이미지 품질을 확인하는 컨테이너 검색 도구를 배포하는 단계입니다.

이는 CI/CD 파이프라인의 표준 단계이지만 일부 조직에서는 요구 사항에 맞게 CI/CD 파이프라인 모델을 조정합니다. 예를 들어, 엄격한 규정 준수 표준을 사용하여 의료 시장용 애플리케이션을 구축하는 조직은 도구 체인 전체에 테스트, 검증 및 규정 준수 게이트를 배포할 수 있습니다.

다른 예로는 오픈 소스 소프트웨어(OSS)를 갖춘 복잡한 소프트웨어 공급망에 의존하는 조직이 있을 수 있습니다. 상용 구성요소는 개발팀 구성원이 OSS 패키지용 소프트웨어 재료 명세서(SBOM)를 생성하는 게이트를 마련할 수 있으며, 외부 상용 소프트웨어 공급업체는 계약 결과물의 일부로 SBOM을 제공해야 합니다.

CI/CD 파이프라인의 장벽

CI/CD 파이프라인을 구현하면 팀의 프로세스와 문화가 달라집니다. 많은 개발자가 일부 작업 및 테스트의 자동화를 수용하는 반면, 사람은 CI/CD 채택에 장벽이 될 수 있습니다.

폭포수 프로세스에서 CI/CD로 이동하면 일부 조직의 기본적이고 묵시적인 권력 구조가 흔들릴 수 있습니다. CI/CD 파이프라인은 소프트웨어 제공 속도를 높이기 때문에 기존 수동 프로세스의 "게이트키퍼"는 이러한 변화로 인해 위협을 느낄 수 있습니다.

통합 기회

CI/CD 도구 체인을 구성하는 도구의 오픈 소스 루트는 문화, 프로세스 및 도구에서 더 높은 DevOps 성숙도 수준을 달성함에 따라 몇 가지 흥미로운 통합을 위한 기회를 만듭니다.

분석 회사인 Forrester는 2020년에 적시 학습이 CI/CD 파이프라인에 합류할 것이라고 예측했습니다. 당신이 그것에 대해 생각한다면 그것은 의미가 있습니다. 이는 현재 원격 근무 시대에, 심지어 신입 직원의 원격 온보딩에도 더욱 의미가 있습니다. 예를 들어, 조직은 내부 프로세스의 문서화를 통해 문서화 위키를 파이프라인에 통합할 수 있습니다.

보다 야심 찬 조직은 Moodle과 같은 학습 관리 시스템(LMS)을 CI/CD 파이프라인에 통합할 수 있습니다. LMS를 사용하여 개발자가 온보딩할 때나 파이프라인 전체에서 도구가 업데이트될 때 배워야 하는 새로운 DevOps 도구 체인 기능에 대한 짧은 비디오를 게시할 수 있습니다.

일부 조직에서는 그룹 채팅 및 기타 공동 작업 도구를 CI/CD 파이프라인에 직접 통합하고 있습니다. 채팅 플랫폼은 경고를 제공하고 팀 간의 협업과 커뮤니케이션을 가능하게 합니다. Mattermost, Rocket.Chat 또는 기타 엔터프라이즈 채팅 플랫폼을 CI/CD 파이프라인에 통합하려면 파이프라인 사용자가 알림에 빠져들지 않도록 사전 계획과 분석이 필요합니다.

살펴볼 또 다른 통합 기회는 CI/CD 파이프라인에 분석 및 고급 보고 기능을 구축하는 것입니다. 이는 파이프라인을 통해 전달되는 데이터를 활용하는 데 도움이 됩니다.

마지막 생각들

CI/CD 파이프라인은 DevOps의 기초입니다. 그리고 오픈 소스를 사용하면 DevOps 과정에서 구현하는 운영 변경으로 인한 새로운 요구 사항에 적응하고 유연하게 대처할 수 있습니다.

조직이 엔드투엔드 CI/CD 솔루션을 추구하는 통합 DevOps 플랫폼 트렌드에 대한 오픈소스의 대응을 기대합니다. 그러한 솔루션의 제작물은 이미 나와 있습니다. 결국 GitLab과 GitHub는 플랫폼을 오픈 소스 루트로 추적합니다.

마지막으로, 모든 성공적인 CI/CD 툴체인의 기반이 되는 교육과 지원을 잊지 마십시오. 툴체인과 그에 수반되는 프로세스를 문서화하면 개발자 온보딩과 지속적인 DevOps 팀 교육이 향상됩니다.

귀하와 귀하의 조직은 CI/CD 도구 체인을 어떻게 정의합니까? 의견을 댓글로 공유해 주세요.

관련기사: