Astro Hub

DevOps / 00.Azure_DevOps

프로젝트: astro-test1

원본 경로: operateguide/DevOps/00.Azure_DevOps.md


Azure DevOps

Azure 환경에서의 CI/CD 구성 및 운영 가이드


1. 개요

DevOps와 CI/CD 란?

  • DevOps
    개발(Development)과 운영(Operations)이 협업하여 빠르고 안정적으로 소프트웨어를 배포·운영하는 방식

  • CI(Continuous Integration)
    여러 개발자가 만든 코드를 자주 통합(merge)하고, 오류를 조기에 발견해 품질을 높임

  • CD(Continuous Delivery/Deployment)
    통합된 코드를 자동으로 빌드, 테스트, 배포까지 이어주는 과정

  • 이 가이드의 목적
    Azure 클라우드 기반에서 DevOps 문화를 도입하고, CI/CD 자동화 파이프라인을 만드는 실무 절차를 안내


2. 주요 용어 요약

용어 의미 예시/설명
AKS Azure Kubernetes Service 컨테이너(앱)를 클라우드에서 배포/운영
ACR Azure Container Registry 컨테이너 이미지를 저장하는 저장소
GitHub ARC Github Action Runner Controller Self-Hosted Runner
GitHub Actions GitHub 내의 Workflow 자동화 도구 빌드/테스트/배포 자동화
Artifact 패키지, 라이브러리, 빌드 결과물 저장소 Azure Artifact 등
ArgoCD Kubernetes 기반 배포 자동화 툴 변경 사항을 감지해 자동 배포

3. 전체 아키텍처 및 흐름

CI

  1. 개발자는 코드를 GitHub에 Push
  2. GitHub Actions Workflow를 통해 Github ARC - Runner 가 코드를 자동 빌드하고, 컨테이너 이미지를 ACR에 Push
  • 빌드 과정에서 필요한 외부 패키지/라이브러리는 Artifact를 통해 Pull (Proxy)

CD

  1. ArgoCD가 변경사항을 감지하여 AKS에 배포
  • 자동 or 수동배포 가능하며, DS Tenant 정책은 수동 배포
  1. 운영 환경에 새로운 버전이 반영됨

alt text

TIP: 각 단계는 “왜 필요한가?”를 이해하며 진행하세요.


4. 구성 가이드 (Step By Step)

1) CI

  1. GithubARC
  2. GithubActions
  3. GithubArtifact

2) CD

  1. ArgoCD

프로젝트 홈으로 돌아가기