CI/CD(Continuous Integration and Delivery/Deployment) 용어 정리

Continuous Integration

소스 코드 변경에 따른 소스 코드의 빌드, 테스트 과정을 자동으로 수행하는 것을 의미한다.

Continuous Deilvery

CI를 기반으로 소스 코드를 쉽게 배포 가능한 상태로 유지하는 것을 의미한다.

Continuous Deployment

Continuous Deilvery 에서 자동으로 프로덕션 환경에 배포되는 것 까지를 포함한다.

쿠버네티스 환경에서의 CI/CD의 필요성

쿠버네티스 환경에서 애플리케이션이 동작하는 인프라 환경은 컨테이너 기반이다. 이에 따라서 인프라 환경을 소프트웨어 처럼 쉽게 허물고 재현하고 생성할 수 있게되었다. 하지만 이러한 유연함을 얻는 대신 러닝커브가 낮지 않은 쿠버네티스라는 도구의 복잡성과 이에 애플리케이션을 배포하기 위한 여러 복잡한 단계가 추가된다.

쿠버네티스에 애플리케이션을 배포하려면 필요한 여러 요소가 존재한다.