FrontEnd :-)

[TIL] CI/CD 본문

항해99_7기/WIL

[TIL] CI/CD

code10 2022. 6. 24. 17:26

[테트리스 패배해서 쓰는 TIL]

 

CI/CD?

=> 서비스 빌드부터 배포까지의 과정을 자동화하는 과정(Code > Build > Test > Release > Deploy)

더보기

CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공합니다. 이러한 구축 사례를 일반적으로 "CI/CD 파이프라인"이라 부르며 개발 및 운영팀의 애자일¹ 방식 협력을 통해 지원된다.

- 자동화된 테스트는 CI/CD 파이프라인의 여러 테스트 및 릴리스 단계를 수행할 수 있어야 하기 때문에 많은 선행 투자 필요.

- CI/CD 툴 : Jenkins, Buildkite, GitHub Actions, Bitbucket Pipelines, GitLab CI/CD, circleci ...

CI/CD 파이프라인 예시(출처: RedHat)

CI (Continuous Integration) 지속적인 통합

=> 수시로 코드를 공통 코드 저장소에 체크인하는 DevOps² 라이프사이클 단계.

==> 장점: 통합할 때마다 자동화된 빌드 툴이 체크인이나 브랜치를 검증하여 오류가 없는지 확인하므로 제작 단계로 바로 진행할 수 있음. 문제가 심화되기 전 조기 발견된다는 이점!

 

 "CI를 구현하면 소요 시간이 긴 중대한 업데이트가 아닌 사소한 변경 사항을 단기간에 통합할 수 있다."

 

CD(Continuous (Delivery and/or Deployment)) 지속적인 제공 and/or 배포

최종단계가 자동화가 되었는지 아닌지에 따라 => Delivery(X) 또는 Deployment(O).

=> 최종 제품이 고객에게 출시되거나 배포되기 전에 개발 파이프라인에서 확인하는 체크포인트 단계. 코드 변경 사항이 검증된 후에는 저장소로 자동 전달.

 

"대부분의 기업에서는 CI를 먼저 추가한 다음 클라우드 네이티브 애플리케이션의 일부로 배포 및 개발 자동화를 구현."

 

==> CI/CD는 DevOps 문화의 필수 요소이며, DevOps는 협업에서 팀 구조, 관찰, 버전 관리 등에 이르기까지 소프트웨어 개발 라이프사이클 전반을 포괄적으로 아우른다. DevOps는 조직 전반에서 매우 다양하게 구현될 수 있지만, CI/CD 없이는 실현될 수 없다는 점이 핵심.

 

* CI/CD 적용 전후 비교 예시 (https://seosh817.tistory.com/104)

 


1. 애자일(Agile) : 사람, 협업, 공동 가치를 기반으로 하는 조직 모델로, 짧은주기의 개발단위를 반복하여 하나의 큰 프로젝트를 완성해 나가는 방식.

 + Scrum: 프로젝트 관리에 접근방식이며, 스프린트(sprint) 라고 하는 단기 작업 블록을 통해 프로젝트를 진행하며 스프린트 기간은 보통 2주로 진행. 

2. DevOps : 하나의 아이디어(새로운 소프트웨어 기능, 개선 요청 또는 버그 수정 등)가 사용자에게 가치를 제공할 수 있도록 운영 환경에서 개발로부터 배포로 진행되는 프로세스의 속도를 높이는 접근 방식.


[참고]

https://www.redhat.com/ko/topics/devops/what-is-ci-cd

https://www.redhat.com/ko/topics/devops/what-cicd-pipeline

https://www.redhat.com/ko/topics/devops

https://velog.io/@katanazero86/%EC%95%A0%EC%9E%90%EC%9D%BCagile%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

https://unity.com/kr/solutions/what-is-ci-cd

https://zero-base.co.kr/event/media_BE_school_qna?gclid=CjwKCAjwwdWVBhA4EiwAjcYJEKs4eDVNdUmNYRQytpcfXYOlqKt9500rgeJ3CxkQ41qRZXz6CGxiLBoCLNYQAvD_BwE 

https://tecoble.techcourse.co.kr/post/2021-08-14-ci-cd/

https://www.youtube.com/watch?v=0Emq5FypiMM 

'항해99_7기 > WIL' 카테고리의 다른 글

WIL8  (0) 2022.07.04
WIL7  (1) 2022.06.26
WIL6  (0) 2022.06.19
WIL5  (0) 2022.06.12
[항해99] WIL 4  (0) 2022.06.05
Comments