graph TB
%% 사용자 및 외부 시스템
subgraph "External"
User[사용자
MVNO 고객]
MVNO[MVNO AP Server
프론트엔드]
KOS[KOS-Order System
통신사 백엔드]
end
%% Azure 클라우드 환경
subgraph "Azure Cloud - 개발환경"
subgraph "Azure Kubernetes Service (AKS)"
subgraph "Ingress Layer"
Ingress[NGINX Ingress Controller
Azure Load Balancer Basic]
end
subgraph "Application Layer"
Auth[Auth Service Pod
CPU: 50m-200m
Memory: 128Mi-256Mi
Replicas: 1]
Bill[Bill-Inquiry Service Pod
CPU: 100m-500m
Memory: 256Mi-512Mi
Replicas: 1]
Product[Product-Change Service Pod
CPU: 100m-500m
Memory: 256Mi-512Mi
Replicas: 1]
KOSMock[KOS-Mock Service Pod
CPU: 50m-200m
Memory: 128Mi-256Mi
Replicas: 1]
end
subgraph "Data Layer"
PostgreSQL[PostgreSQL Pod
bitnami/postgresql:16
CPU: 500m-1000m
Memory: 1Gi-2Gi
Storage: 20GB hostPath]
Redis[Redis Pod
bitnami/redis:7.2
CPU: 100m-500m
Memory: 256Mi-1Gi
Memory Only]
end
end
subgraph "Container Registry"
ACR[Azure Container Registry
Basic Tier
phonebilldev.azurecr.io]
end
end
%% 연결 관계
User --> MVNO
MVNO --> Ingress
Ingress --> Auth
Ingress --> Bill
Ingress --> Product
Ingress --> KOSMock
Auth --> PostgreSQL
Bill --> PostgreSQL
Product --> PostgreSQL
KOSMock --> PostgreSQL
Auth --> Redis
Bill --> Redis
Product --> Redis
Bill --> KOSMock
Product --> KOSMock
ACR -.-> Auth
ACR -.-> Bill
ACR -.-> Product
ACR -.-> KOSMock
%% 스타일링
classDef external fill:#e1f5fe
classDef ingress fill:#f3e5f5
classDef application fill:#e8f5e8
classDef data fill:#fff3e0
classDef managed fill:#fce4ec
classDef registry fill:#f1f8e9
class User,MVNO,KOS external
class Ingress ingress
class Auth,Bill,Product,KOSMock application
class PostgreSQL,Redis data
class ACR registry