본문 바로가기

Cloud Wave

[Cloud Wave 1기] CGV 패스트오더 인프라 구축 프로젝트 with AWS

📍 0.  과제 목표

CGV 패스트오더 인프라를 퍼블릭 클라우드(AWS) 상 설계하고 구현하려고 한다.

대규모 사용자가 동시에 이용하기에 문제 없는 환경을 만들어야 한다.

보안, 백업 요소도 고려해야 한다.

 

프로젝트 기간 : 2주 (2023.08)

필자의 메인 담당 업무 : 아키텍처 설계, 백업과 DR

 

 

 


🎬 1. 서비스 시나리오

오는 추석 황금 연휴, 영화관에 많은 고객들이 몰릴 것을 예상하고 있다. CGV 어플 패스트오더를 통해 로그인 후 팝콘 원격 주문이 가능하다. 주문의 편리성을 높이고 현장의 혼잡도도 완화할 수 있다. 

 

고객사인 CGV실사용자인 어플 이용자를 구분한다.

① 어플에서 메뉴 주문

② 매장 키오스크에 주문 접수

③ 메뉴 준비 완료

④ 어플에 푸시 알림 전송

 

 

💡 2. 메인 아키텍처

    A. DEV

 

 

 

  B. STG / PROD

 

         

 

 

          ✔ Web - Was - DB의 3-Tier 구조 

          ✔ NAT-Gateway가 있는 하나의 Public 서브넷과 이외의 Private 서브넷

          ✔ ALB 로 트래픽 분산

          ✔ 멀티 AZ오토스케일링 그룹으로 묶여 확장성

 

 

 

🌊 3. 트래픽 플로우

   

  A. Web

관리자가 보는 웹(키오스크)

   

 

 

    B. App

이용자가 보는 모바일 앱

 

 

 

     C. CI/CD

       

          ✔ 프라이빗한 gitlab 서버

          ✔ 개발자들은 서버에 VPN으로만 접근 가능

 

 

 

 

 

🔒 4. 보안

 

보안 아키텍처

         

 

          ✔ VPN, WAF, Security Group, Deep Security 사용

          ✔ 계층적 보안

 

 

 

 

🔄 5. 백업 & DR (재해복구)

 

 

 

          ✔ 멀티 리전 (Main : 서울, DR : 싱가포르)

          ✔ DB는 실시간 동기화, EC2 스냅샷, 볼륨은 하루에 1번 백업

          ✔ Pilot Light 전략

 

 

 

 

 

✨ 6. 테라폼

 

 

          ✔ 테라폼 Apply 로 기본적인 네트워크 자동 구성

          ✔ 모듈화 성공으로 재사용성 향상

          ✔ terraform.tfstate 파일을 S3에 백업

 

 

 

 

🔎 7. 모니터링

 

 

 

          ✔ Cloudwatch로 로그, 리소스 사용 모니터링

          ✔ 보안 이슈 발생 시 Slack으로 알람 전송

 

 

 

 

💲 8. 비용 절감

 

  A. 밤~ 아침 DEV / STG 리소스 다운

          ✔ EventBridge 로 자동화

 

 

 

  B. Infracost

          ✔ 테라폼으로 작성한 인프라의 비용을 자동 산정

          ✔ 대시보드로 비용 그래프 확인

          ✔ 비용 초과 위험 시 Infracost Guardrail 에서 메일 자동 전송