콘텐츠로 이동

개요 읽기 10분

한밭푸드 시나리오 브리핑

"오늘부터 여러분은 한밭푸드 인프라팀 소속입니다. 이 회사가 처한 상황과 여러분의 임무를 파악하세요."


회사 프로필

항목 내용
회사명 한밭푸드 주식회사
본사 대전광역시 유성구
설립 2011년
직원 수 120명
사업 대전·충청권 식자재 유통 및 온라인 주문 플랫폼
연매출 약 200억 원
IT 직원 개발팀 5명, 인프라팀 3명

인프라팀 구성

이름 직책 경력 배경
김팀장 인프라팀장 10년 온프레미스 서버 관리 전문. 클라우드 경험 거의 없음
이대리 시스템 엔지니어 4년 Docker 실무 경험 있음. K8s는 기초 수준
박주임 신입 1년 Docker 공부 중. Azure는 이번이 처음

실습에서 여러분의 역할

여러분은 박주임의 역할을 맡습니다. 처음엔 모르는 게 당연합니다. 가이드를 따라가다 보면 자연스럽게 익혀집니다.


현재 상황

기술 스택 전환 현황

한밭푸드는 2021년부터 PHP 모놀리식 시스템을 마이크로서비스로 전환 중입니다.

PHP 모놀리식 (레거시) Python 마이크로서비스 (전환 중)
회원 관리 주문 조회 API ← 이번 실습 대상
결제 재고 API (향후)
주문 배송 API (향후)
상품 관리

주문 조회 시스템 현황

이번 실습 대상인 주문 조회 시스템은 사내 Ubuntu VM에서 Docker Compose로 운영 중입니다.

컨테이너 기술 외부 포트 역할
web nginx (정적 HTML/JS) 8000 고객이 접속하는 화면
api Python (FastAPI) 8080 주문 조회 데이터 제공

문제 상황

CS팀에서 올라온 컴플레인 Top 3

🔥 문제 1: 배포할 때마다 서비스 다운
새 버전 배포 시 평균 2~3분 서비스 중단. 점심·저녁 피크 시간에 배포하면 CS팀에 전화 폭주.
🔥 문제 2: 점심 피크 때 API 응답 느려짐
12시~13시 주문 조회 트래픽이 3배 급증. VM 1대로는 버티기 힘들고, 수동으로 서버를 늘리는 것도 한계.
🔥 문제 3: 점진적 배포 불가
"v2에 버그가 있을 것 같아서 20%만 먼저 배포하고 싶은데" → docker-compose만으로는 불가능.

이번 프로젝트

목표: 주문 조회 시스템을 Azure Container Apps(ACA)로 이관

성공 기준

기준 목표값
배포 중단 시간 0초 (무중단 배포)
스케일 아웃 트래픽 증가 시 자동 (수동 작업 없음)
점진적 배포 트래픽 비율 조절 가능 (예: 80:20)
월 비용 50만 원 이내
이관 완료 기한 이번 달 말

이관 범위

구분 대상
✅ 이관 대상 주문 조회 Web, 주문 조회 API
❌ 이관 제외 PHP 모놀리식 (별도 프로젝트), 결제 시스템 (추후 검토)

다음 단계