콘텐츠로 이동

5 클라우드 아키텍처 · AWS — 텍스트로 보기

← 다이어그램으로 · 그림의 라벨과 연결을 원본 draw.io 파일에서 그대로 뽑았습니다. 45항목 · 28연결.

  • FillMap · Cloud Architecture v2 (2026.07) — AWS ap-northeast-2 · Multi-AZ · fillmap.kr
  • 사용자
  • Mobile · Web Client — (React Native · React)
  • 운영자
  • GitHub · Actions — (Build → Test → Push)
  • 카카오 OAuth
  • 네이버 지도 SDK
  • Firebase FCM (푸시)

AWS Cloud

  • S3 — 영상 원본·인코딩본
  • ECR
  • Systems Manager — (배포 Run Command)
  • CloudWatch — Logs·Metrics
  • Secrets — Manager

Region · ap-northeast-2

  • Route 53 — fillmap.kr
  • CloudFront — static.fillmap.kr
  • S3 · 정적 웹

VPC · 10.0.0.0/16

  • Internet — Gateway
  • AWS WAF — (ALB·CloudFront) · = SysA API Gateway
  • ALB — (Active-Active) · = SysA API Gateway
가용영역 a
Public subnet
  • NAT Gateway
Private subnet · App
  • FastAPI — AI 서버 (상시)
  • Kafka — (EC2)
  • Spring Boot — API #1
Private subnet · Data
  • RDS PostgreSQL — +PostGIS (Primary)
  • ElastiCache — Redis (Primary)
가용영역 c
Public subnet
  • NAT Gateway
Private subnet · App
  • Spring Boot — API #2
Private subnet · Data
  • RDS — (Standby·Read)
  • ElastiCache — (Replica)

구역

  • 사용자 트래픽
  • 데이터 접근
  • 비동기 이벤트
  • CI/CD·배포
  • 복제·외부·관측

연결

  • 사용자 → Mobile · Web Client
  • 운영자 → Mobile · Web Client
  • Mobile · Web Client → Route 53 — HTTPS
  • Route 53 → CloudFront
  • CloudFront → S3 · 정적 웹
  • Route 53 → Internet — api.fillmap.kr
  • Internet → AWS WAF
  • AWS WAF → ALB
  • ALB → Spring Boot
  • Spring Boot → RDS PostgreSQL
  • Spring Boot → ElastiCache
  • FastAPI → RDS PostgreSQL — READY 갱신
  • RDS PostgreSQL → RDS — 복제·Failover
  • ElastiCache → ElastiCache
  • Spring Boot → Kafka — 이벤트
  • Kafka → FastAPI
  • FastAPI → S3 — 인코딩본
  • Spring Boot → S3 — presigned
  • GitHub · Actions → ECR — Docker push
  • ECR → Systems Manager
  • Systems Manager → Spring Boot — 배포
  • CloudWatch → VPC · 10.0.0.0/16 — 관측
  • Secrets → VPC · 10.0.0.0/16
  • Mobile · Web Client → 카카오 OAuth — OAuth
  • Mobile · Web Client → 네이버 지도 SDK — 지도 타일
  • Firebase FCM (푸시) → Mobile · Web Client — 푸시 수신