cd 3

CI/CD, Jenkins, ArgoCD / GitOps 고급 전략

GitOps 고급 전략GitOps 기본 원리는 "Git에 있는 YAML 파일이 클러스터의 정답 상태"라는 개념하지만 실제 운영 환경에서는 단순히 YAML 한두개로 배포하는 것 보다 더 많은 것들을 고려해야 함GitOps 고급 전략 핵심 요소분리된 저장소 구조 : 운영용 Git과 개발용 Git을 분리해서 관리환경 분리(dev/stage/prod) : 각 환경에 맞는 YAML/Helm 설정 따로 관리Kustomize/Helm 활용 : 환경별 커스터마이징을 템플릿 형태로자동 vs 수동 동기화 전략 : 운영 환경은 수동 승인으로 안정성 확보PR 기반 배포 승인 흐름 : GitHub Pull Request로 변경 내용 리뷰 후 병합 -> 배포예시로 이해음식 배달 앱을 운영하는 회사가 있다고 했을 때개발 중인 기능..

CI/CD, Jenkins, ArgoCD

CI/CD란?CI (지속적 통합, Continuous Integration)개발자들이 코드를 자주(하루에도 여러 번) 병합하고 자동 테스트하는 과정목적 : 코드 충돌 최소화 + 버그 빨리 발견코드 변경 → 자동 빌드/테스트CD (지속적 배포, Continuous Delivey/Deployment)CI 후 자동으로 스테이징 또는 운영 서버에 배포하는 과정빌드된 코드 → 자동으로 스테이징/운영 환경에 배포Continuous Delivery : 운영 배포 전 사람의 승인 필요Continuous Deployment : 운영까지 완전 자동화비유공장에서 제품을 조립한 뒤 테스트하고 자동으로 포장하고 출하하는 시스템CI : 부품 조립 + 품질 검사CD : 완제품 포장 -> 자동 배송실무에서 CI/CD가 없으면?개발자..

CI/CD

[KT] AIVLE SCHOOL 60일차CI/CD 란?DevOps에서의 지속적인 소프트웨어 개발 생명주기CI/CD 파이프라인은 새 버전의 소프트웨어를 제공하기 위해 수행해야 할 일련의 단계개발자가 코드를 지속적으로 배포할 수 있어야 하는 필요성초기 단계에서 버그를 감지하고 빈번한 코드 커밋으로 인한 이슈 방지CI/CD는 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 자동화와 모니터링을 제공하는 프로세스들의 묶음을 의미Continuous Integration개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous Integration)을 의미개발코드를 통합할 때의 문제점을 해결하고, 자..