Cloud/AZURE
Azure Application Gateway 정리
BOKCH1
2025. 4. 7. 17:19
Azure Application Gateway란?
Azure Application Gateway는 L7(애플리케이션 계층) 기반의 고급 로드밸런서로,
HTTP/HTTPS 트래픽을 라우팅하고, SSL 종료, 도메인 기반 라우팅, 경로 기반 라우팅,
그리고 웹 애플리케이션 방화벽(WAF) 기능을 제공
구성요소설명
수신기 (Listener) | 외부에서 들어오는 요청을 수신하는 엔드포인트. IP/포트/프로토콜/도메인을 설정하고, HTTPS의 경우 TLS 인증서를 적용 |
TLS 인증서 | 수신기가 HTTPS 요청을 해독(SSL 종료)하기 위해 사용하는 인증서 |
라우팅 규칙 (Routing Rule) | 수신된 요청을 어떤 백엔드 풀로 보낼지 결정. 경로 기반, 호스트 기반 설정 가능 |
백엔드 풀 (Backend Pool) | 실제 요청이 전달될 VM, App Service 등의 리소스 그룹 |
프로브 (Health Probe) | 백엔드 서버의 상태를 주기적으로 체크하여 비정상 서버로의 트래픽 전달 방지 |
트래픽 흐름 요약
- 사용자가 https://www.mycompany.com/api 요청
- Application Gateway의 수신기가 요청 수신
- 수신기는 TLS 인증서로 HTTPS 해독
- 요청 경로(/api)에 따라 라우팅 규칙 적용
- 트래픽을 백엔드 풀(예: VM 10.0.1.4, 10.0.1.5)로 전달
- 백엔드에서 응답 → 사용자에게 전달
도식 구조
[User Request: https://www.mycompany.com/api]
↓
┌────────────────────────────┐
│ Azure Application Gateway │
└────────────────────────────┘
│
┌────────────┐
│ 수신기 │ ← HTTPS + 인증서
└────────────┘
│
┌────────────┐
│ 라우팅 규칙 │ ← /api/* → Backend Pool A
└────────────┘
│
┌────────────────────┐
│ Backend Pool (VMs) │ ← VM1: 10.0.1.4, VM2: 10.0.1.5
└────────────────────┘
Azure L4 vs L7 로드밸런서 비교표
OSI 계층 | 4계층 (전송 계층) | 7계층 (애플리케이션 계층) |
지원 프로토콜 | TCP, UDP | HTTP, HTTPS, WebSocket |
로드밸런싱 기준 | IP 주소와 포트 | URL 경로, 호스트 헤더 (도메인) |
SSL 종료 (TLS Offload) | ❌ 불가능 | ✅ 가능 (HTTPS 복호화) |
경로 기반 라우팅 | ❌ 불가능 | ✅ 가능 (예: /api, /img) |
호스트 기반 라우팅 | ❌ 불가능 | ✅ 가능 (예: a.com, b.com) |
세션 유지 (쿠키 기반) | ❌ 불가능 | ✅ 가능 (Cookie 기반 세션 유지) |
WAF (웹 애플리케이션 방화벽) | ❌ 없음 | ✅ 있음 (OWASP 룰 기반) |
헬스 체크 (프로브) | TCP 응답 | HTTP 상태 코드 (ex. 200 OK) |
주요 활용처 | 일반 TCP/UDP 트래픽 (DB, FTP 등) | 웹 애플리케이션 트래픽 (API, 웹사이트 등) |
비용 | 상대적으로 저렴 | 기능이 많아 다소 비용 발생 |