ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CI/CD 파이프라인 개념 - CD 편
    데브옵스 (DevOps) 2023. 8. 15. 12:51
    SMALL

    지난 편에서 CI 개념에 대해 다뤘다. 이번 2편에서는 CD 파이프라인에 대해 알아본다.

     

    1. CD 란?

    CD는 크게 2가지의 줄임말로 사용된다.

     

    1) Continuous Deployment (지속적 배포)

    지속적 배포는 소프트웨어 변경 사항이 테스트 및 검증을 거친 후 자동으로 프로덕션 환경에 배포되는것을 의미한다. 이는 개발자가 코드를 커밋하고 테스트가 통과되면 즉시 실제 사용자가 사용하는 환경에 변경 사항이 반영되는 것을 말한다. 이를 통해 빠른 피드백과 배포 주기를 유지할 수 있다. 

     

    2) Continuous Delivery (지속적 제공)

    지속적 제공은 소프트웨어 변경 사항이 테스트 및 검증을 거친 후 자동으로 스테이징 혹은 QA 환경에 배포되는것을 의미한다. 이 단계에서 인간의 개입 없이도 배포가 가능하지만, 실제 프로덕션 환경으로 배포는 수동으로 진행되는 차이가 있다. 

     

    2. CD 도구

    대표적인 CD 도구로 GitOps 스타일로 Kubernetes에 적용을 위한 Argo CD가 있다.

    argo CD 로고

    3. CD의 필요성

    • 빠른 피드백과 빠른 배포: CI/CD 파이프라인은 코드 변경 사항을 자동으로 빌드, 테스트하고 배포하기 때문에 개발자는 빠른 피드백을 받을 수 있고, 새로운 기능을 빠르게 사용자에게 제공한다.
    • 안정성 및 신뢰성: 자동화된 테스트와 배포는 개발 중인 소프트웨어의 안정성과 신뢰성을 높인다.
    • 반복적인 작업 감소: 반복적인 작업을 자동화한다.
    • 작은 배포 단위: 작은 코드 변경 사항을 지속적으로 배포하므로 큰 문제를 방지하고 개발자가 작은 단위로 개발할 수 있다.

    용어 정리

    *깃옵스 (GitOps)

    애플리케이션의 배포와 운영에 관련된 모든 요소들을 코드화하여 Git 에서 관리 (Operation) 한다는 의미이다. 

     

    *스테이징 (Staging) 

    스테이징 환경은 개발한 소프트웨어의 최신 버전을 프로덕션 환경과 유사한 환경에 배포하는 공간이다. 다시 말해, 스테이징 환경은 개발된 기능이나 변경 사항을 실제 사용자에게 노출하기 전 테스트하고 검증하는 단계이다.

     

    *QA (Quality Assurance)

     QA 환경은 품질 보증을 위한 전용 테스트 환경이다. 스테이징 환경과 차이점은 스테이징 환경은 최종 사용자에게 제공되기 직전의 환경이지만 QA 환경은 개발 초기부터 개발 과정 동안 변경사항을 검증하는 단계로 활용된다.

    반응형
    LIST

    '데브옵스 (DevOps)' 카테고리의 다른 글

    도커 (Docker) 사용법  (0) 2023.10.01
    CI/CD 파이프라인 개념 - CI 편  (0) 2023.08.13
Designed by Tistory.