홈랩 #8 - CI/CD 구축해서 배포 자동화하기 (2)

개요 이전 글에서는 CI/CD 시스템의 핵심 구성 요소인 Harbor 레지스트리, Argo Events, Argo Workflows를 설치했다. 이번 글에서는 이 세 가지 구성 요소와 기존에 설치한 ArgoCD를 통합하여 완전한 CI/CD 파이프라인을 완성하고, GitOps 기반의 프로젝트 자동화 시스템을 구축하는 방법을 알아본다. CI/CD와 GitOps의 통합 기존 CI 시스템과 GitOps의 통합은 자연스러운 진화 과정이다. 기존의 CI는 코드 변경을 감지하여 빌드하고 테스트하는 데 중점을 두었다면, GitOps는 배포 상태를 선언적으로 관리하고 자동으로 동기화하는 데 중점을 둔다. 이 두 가지를 결합하면 코드 변경부터 자동 배포까지 완전 자동화된 파이프라인을 구축할 수 있다. ...

2월 28, 2025 · 15 분 · 3192 단어 · In-Jun Hwang

홈랩 #7 - CI/CD 구축해서 배포 자동화하기 (1)

개요 이전 글에서는 홈랩 쿠버네티스 클러스터에 Vault를 설치하고 시크릿 관리 시스템을 구축했다. 이번 글에서는 CI/CD 시스템의 기반이 되는 세 가지 핵심 컴포넌트인 Harbor 레지스트리, Argo Events, Argo Workflows를 설치하고 기본 설정하는 방법을 알아본다. CI/CD 시스템의 구성 요소 홈랩 환경에서 완전한 CI/CD 파이프라인을 구축하기 위해서는 다음과 같은 핵심 컴포넌트들이 필요하다: 컨테이너 레지스트리: 빌드된 이미지를 저장하고 관리하는 저장소 이벤트 처리 시스템: 코드 변경 등의 이벤트를 감지하고 처리하는 시스템 워크플로우 엔진: 빌드, 테스트, 배포 등의 작업을 실행하는 엔진 선언적 배포 시스템: 배포 상태를 관리하고 동기화하는 시스템 이 중 4번(선언적 배포 시스템)은 이미 이전 글에서 설치한 ArgoCD가 담당한다. 이번 글에서는 나머지 세 가지 컴포넌트를 설치하고 구성한다. ...

2월 28, 2025 · 8 분 · 1584 단어 · In-Jun Hwang

GitOps 배포 전략: Push vs Pull 완벽 비교

GitOps란? GitOps는 2017년 Weaveworks에서 처음 소개한 개념이다. 클라우드 네이티브 환경, 특히 Kubernetes 기반 시스템에서의 지속적 배포(CD)에 초점을 맞추고 있다. 모든 인프라 구성과 애플리케이션 설정을 코드로 관리하며, Git 저장소를 통해 이를 버전 관리한다. Push 방식의 배포 전략 Push 방식은 전통적인 CI/CD 파이프라인과 유사하게 작동한다. 주요 특징과 프로세스는 다음과 같다. 빌드 및 배포 프로세스 빌드 단계 개발자의 코드 Push로 CI 파이프라인이 시작된다 CI 서버에서 빌드, 테스트를 수행한다 컨테이너 이미지를 생성하고 레지스트리에 등록한다 배포 단계 ...

2월 14, 2025 · 2 분 · 315 단어 · In-Jun Hwang