- 단일 엣지 노드 — 캐싱 역방향 프록시로 NGINX를 실행하는 Ubuntu 24.04 VM 1대, 최소 실행 가능한 CDN 엣지
- Terraform 배포 — 완전한 Azure 인프라 코드: VNet, PIP, NSG, cloud-init 프로비저닝이 포함된 VM
- 67개 이상의 CDN 벤더 헤더 — True-Client-IP, CF-Connecting-IP, 지리적 위치, 디바이스 감지, JA3/JA4 핑거프린트, 봇 점수를 포함한 Akamai, Cloudflare, CloudFront, Fastly, Azure Front Door 요청 헤더 시뮬레이션
- 오리진 통합 — 캐시 미스를 오리진 서버로서 F5 XC HTTP 부하 분산기에 전달하도록 엣지 구성
- 캐시 검증 — X-Cache-Status 헤더와 NGINX 캐시 검사를 통한 HIT/MISS 동작 확인
배포 후, CDN 엣지 노드는 다음을 노출합니다:
| 엔드포인트 | 메서드 | 목적 |
|---|
http://<PUBLIC_IP>/health | GET | 상태 확인 — 구성 요소 상태 및 벤더 프로필이 포함된 JSON 반환 |
http://<PUBLIC_IP>/ | GET | CDN 프록시 — 오리진 서버로의 요청을 캐시하고 전달 |
http://<PUBLIC_IP>/<any-path> | GET | CDN 프록시 — 모든 경로는 캐싱 및 벤더 헤더와 함께 프록시 처리 |
모든 프록시 응답에 추가되는 응답 헤더:
| 헤더 | 예시 | 목적 |
|---|
X-Cache-Status | HIT 또는 MISS | 응답이 캐시에서 제공되었는지 여부 |
X-CDN-Edge | cdn-simulator | 이 엣지 노드를 식별 |
X-CDN-POP | SJC | 시뮬레이션된 거점(Point of Presence) 코드 |
X-Served-By | cache-sjc3120-SJC | 시뮬레이션된 캐시 노드 식별자 |
X-Request-ID | UUID | 요청별 고유 식별자 |
| 페이지 | 대상 | 목적 |
|---|
| 개요 | 사람 + AI | 아키텍처, 멀티 벤더 컨텍스트, 시뮬레이션 대상 |
| 사전 요구 사항 | AI | 필요한 도구, Azure 구독, SSH 키, 비용 추정 |
| 배포 | AI | 완전한 Terraform HCL — 복사 후 적용하여 배포 |
| NGINX 구성 | 사람 + AI | 정확한 값과 목적이 포함된 67개 이상의 CDN 벤더 헤더 |
| 검증 | AI | 예상 요청/응답 동작이 포함된 스모크 테스트 명령 |
| F5 XC와 통합 | 사람 + AI | 오리진 서버로 F5 XC에 엣지 연결, 종단 간 검증 |
| 해체 | AI | 모든 리소스 삭제, 정리 명령 |