보키_기록용

CI/CD 개념 정리 본문

공부/IT 기타 상식

CI/CD 개념 정리

bokki0117 2022. 8. 18. 15:22

DevOps 관련 정리 (tistory.com) 이어서..

 

CI / CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(Integration Hell : 인테그레이션 헬)을 해결하기 위한 솔루션이다.

 

  • CI / CD ?

CI (Continuous Integration : 지속적인 통합) : 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 레포지토리(ex: GitHib)에 통합하는것. 여러 명의 개발자가 동시에 개발과 코드작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있다.

 

CD (Continuous Delivert : 지속적인 서비스 제공 / Continuous Deployment : 지속적인 배포) : 두 가지 모두 파이프라인의 추가 단계에 대한 자동화를 뜻하지만 별도로 사용되기도 한다.

  • 지속적인 서비스 제공(Continuous Delivert) : 개발자들이 적용한 변경 사항이 버그 테스트를 거쳐 레포지토리에 자동으로 업로드되는 것. 최소한의 노력으로 새로운 코드를 배포하는것이 목표.
  • 지속적인 배포(Continuous Deployment) : 위의 CD에서의 변경 사항을 업로드한 레포지토리에서 고객이 사용 가능한 프로덕션 환경까지 자동으로 릴리스하는 것. 

  • CI / CD가 필요한 환경
  • 다수의 개발자가 형상관리 툴을 공유하여 사용하는 환경 : 다수의 개발자가 한 팀으로 작업할 경우, 공유 레포지토리에 수많은 Commit이 쌓이는데, 이 때마다 Build/Test/Merge까지 번거롭기 때문에 CI / CD를 활용하여 자동화되어 원천 소스코드의 충돌 등을 방어가 가능하다.
  • 마이크로 서비스 아키텍쳐(Micro Service Archietecture) 환경 : 작은 기능 별로 서비스를 작게 쪼개어 개발하는 형태. 대부분 Agile(애자일 : 소규모 기능 단위로 빠르게 개발 & 적용을 반복하는 개발 방법론) 방법이 적용되어 기능 추가가 매우 빈번하기 때문에 CI / CD를 활용하여 충돌 방지 등이 가능하다.

 

  • CI / CD의 종류

etc..

 

  • 관련 읽어보면 좋은 내용

데이터 기반으로 지속적인 CI/CD 개선 환경 만들기 (linecorp.com)

 

데이터 기반으로 지속적인 CI/CD 개선 환경 만들기

2022-LINE-engineering-site

engineering.linecorp.com

CI/CD 자동화가 가져다 준 행복 (linecorp.com)

 

CI/CD 자동화가 가져다 준 행복

2022-LINE-engineering-site

engineering.linecorp.com

 

 

참고

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

 

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

CI/CD는 애플리케이션의 통합 및 테스트부터 제공 및 배포까지 전체 라이프사이클에서 지속적인 자동화와 모니터링을 제공합니다. 개념, 차이점, 학습방법(인강)을 보세요.

www.redhat.com

DevOps란 무엇입니까? – Amazon Web Services(AWS)

 

DevOps란 무엇입니까? – Amazon Web Services(AWS)

소프트웨어와 인터넷은 쇼핑에서 엔터테인먼트 그리고 뱅킹에 이르기까지 전 세계와 산업을 변화시켰습니다. 이제 소프트웨어는 비즈니스를 지원하는 것에 그치지 않고, 비즈니스의 모든 부분

aws.amazon.com

[CI/CD] CI/CD란? - 지속적 통합(Continuous Integration)/지속적 배포(Continuous Deployment) 기본개념 — SH's Blog (tistory.com)

 

[CI/CD] CI/CD란? - 지속적 통합(Continuous Integration)/지속적 배포(Continuous Deployment) 기본개념

매번 개발자가 코드를 수정하고 빌드와 테스트를 하고 배포까지 한다면 상당히 많은 시간이 소요됩니다. 하지만 git에 코드를 올리는 것만으로도 누군가가 빌드와 테스트, 배포까지 해준다면,

seosh817.tistory.com

CI/CD란 무엇인가 (Feat. DevOps 엔지니어) (tistory.com)

 

CI/CD란 무엇인가 (Feat. DevOps 엔지니어)

안녕하세요. 개발자의 용어를 쉽고 명확하게 설명해드리는 개발자 김모씨입니다. CI/CD ?! 개발자로 밥먹고 사시는 분들이시라면, 혹은 IT서비스 업계에 종사하시는 분들이라면, 한 번 쯤은 들어

artist-developer.tistory.com

 

'공부 > IT 기타 상식' 카테고리의 다른 글

캐시 메모리  (0) 2023.03.09
DevOps 관련 정리  (0) 2022.08.18
Comments