본문으로 건너뛰기

Part 3: 백엔드 인프라 아키텍처

항목내용
문서명Part 3: 백엔드 인프라 아키텍처 (Backend Infrastructure Architecture)
제품명DTA Wide Sleep Management Platform
작성일2026-02-10
적용범위Part 3 (백엔드/인프라)

1. 인프라 개요

  • 클라우드 제공자: Google Cloud Platform (GCP)
  • 리전: europe-west3 (Frankfurt, Germany) - GDPR/DiGA 준수
  • 배포 모델: Serverless (Cloud Run) + Managed Services

2. 네트워크 아키텍처 및 신뢰 경계


3. GCP 서비스 구성

3.1 Compute (컴퓨팅)

서비스용도보안 통제
Cloud Run (dta-wide-api)NestJS API 서버Service Account, VPC Connector, Private IP

Auto-scaling:

  • 최소 인스턴스: 1 (Cold Start 방지)
  • 최대 인스턴스: 100
  • 동시성: 80 req/instance

3.2 Databases (데이터베이스)

서비스용도백업암호화
Cloud SQL PostgreSQL사용자, 수면 로그, 설문자동 백업 (매일 02:00), 30일 보관AES-256-GCM (Cloud KMS)
Memorystore Redis세션, 캐시, Rate Limit자동 백업AES-256 (Google 관리)
Firestore분석 로그, 이벤트 스트림자동 백업AES-256 (Google 관리)

고가용성:

  • Cloud SQL: Multi-zone HA (Failover < 60초)
  • Memorystore: Standard Tier (자동 복제)
  • Firestore: Multi-region 복제

3.3 Networking (네트워킹)

구성요소설정보안 통제
VPC NetworkPrivate IP 범위: 10.0.0.0/16방화벽 규칙, Private Google Access
Serverless VPC ConnectorCloud Run → VPC 연결Cloud Run만 접근 가능
Cloud NATOutbound 트래픽 (외부 API)고정 IP, 로그 기록
Private Service ConnectCloud SQL Private IPVPC 내부만 접근 가능

방화벽 규칙:

  • 인바운드: HTTPS (443) only
  • 아웃바운드: 화이트리스트 (PostgreSQL 5432, Redis 6379)
  • SSH/RDP: 차단 (Cloud Run에서 불필요)

3.4 Security (보안)

서비스용도설정
Cloud KMS암호화 키 관리Root Key: HSM-backed, 90일 자동 회전
Secret ManagerAPI 키, DB 비밀번호Version Control, IAM 접근 통제
Cloud ArmorWAF, DDoS 방어OWASP Top 10 룰셋, IP 화이트리스트 [TODO: 구현 여부 확인 필요]
VPC Service Controls데이터 유출 방지europe-west3 리전 내 강제

4. 인프라 보안 통제

4.1 IAM 역할 기반 접근 통제

Service Account역할권한 범위
dta-wide-api@...Cloud Run API 서비스Cloud SQL Client, Secret Manager Accessor, Cloud Logging Writer
db-admin@...DB 관리자Cloud SQL Admin (읽기 전용, 승인 필요)
ci-cd@...CI/CD 파이프라인Cloud Run Deployer, Container Registry Writer

최소 권한 원칙:

  • 각 Service Account는 필요한 최소 권한만 보유
  • 프로덕션 DB 쓰기 권한: API 서비스만
  • 개발자: 읽기 전용

4.2 시크릿 관리

Secret Manager 사용:

secrets/
├── DATABASE_URL # PostgreSQL 연결 문자열
├── REDIS_URL # Redis 연결 문자열
├── JWT_SECRET # JWT 서명 키
├── OPENAI_API_KEY # OpenAI API 키
└── MAILGUN_API_KEY # 이메일 발송 키

접근 통제:

  • Cloud Run Service Account만 접근 가능
  • 버전 관리 (최신 3개 버전 보관)
  • 감사 로그 (Secret 접근 기록)

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

5.1 백업 정책

데이터 유형백업 주기보관 기간저장 위치
PostgreSQL Main DB매일 02:00 (자동)30일Cloud SQL 자동 백업 (europe-west3)
Firestore실시간 복제무제한 (자동)Firestore Managed
Cloud Storage (로그)주 1회 아카이브1년Cloud Storage (Nearline)

5.2 재해 복구 계획

RPO (Recovery Point Objective): 1시간

  • Cloud SQL Point-in-Time Recovery 지원
  • 트랜잭션 로그 7일 보관

RTO (Recovery Time Objective): 4시간

  • Cloud SQL HA Failover: < 60초
  • 전체 인프라 재구축: < 4시간 (Terraform 자동화)

DR 절차:

  1. Cloud SQL Failover (자동, < 60초)
  2. Cloud Run 자동 재배포 (새 Zone)
  3. DNS 업데이트 (Cloud DNS, TTL 60초)
  4. 데이터 무결성 검증
  5. 서비스 정상화 확인

6. CI/CD 파이프라인

6.1 배포 흐름

6.2 배포 보안 통제

단계보안 검사차단 조건
Code Review보안팀 리뷰 (Critical 변경)미승인
SASTSonarCloud, SemgrepCritical/High 취약점
Container ScanGCP Vulnerability ScanningCritical CVE
Staging DeployE2E 테스트테스트 실패
Production DeployTech Lead 승인미승인

7. 모니터링 및 알림

7.1 주요 메트릭

메트릭임계값알림 수신자조치
API 응답 시간 (P95)> 2초운영팀성능 조사
에러율> 5%운영팀 + 개발팀즉시 조사
DB Connection Pool> 80%DBAScale Up 검토
Redis Memory> 90%운영팀캐시 정리 또는 Scale Up
SSL Certificate 만료< 30일보안팀인증서 갱신

7.2 알림 채널 (TODO: 개선)

  • Critical: Slack
  • High: Slack
  • Medium: Slack
  • Low: Slack

증빙 및 참조(Artifacts)

  1. 인프라 다이어그램 (본 문서 Section 2)
  2. GCP 프로젝트 구조 Export - artifacts/gcp-project-structure.json
  3. Cloud Run 설정 - cloudrun-deploy/service.yaml
  4. Cloud SQL 설정 - artifacts/cloudsql-config.json
  5. IAM 역할 정의 - artifacts/iam-roles.json
  6. VPC 방화벽 규칙 - artifacts/vpc-firewall-rules.json
  7. Secret Manager 키 목록 - artifacts/secret-manager-keys.json
  8. CI/CD 파이프라인 - .github/workflows/deployment-ci-europe.yml
  9. 백업 정책 증적 - Cloud SQL 백업 설정 스크린샷
  10. 모니터링 대시보드 - Cloud Monitoring 대시보드 Export
규정요구사항구현증거
BSI TR-03161 Part 3안전한 인프라VPC, Private IP, WAFGCP 설정 Export
GDPR Article 32적절한 기술적 조치암호화, 접근 통제, 감사 로그본 문서
DiGA (BfArM)독일 데이터 레지던시europe-west3 리전 강제VPC Service Controls