기타
NSX-ALB에서의 "프록시 역할"이란?
ipxy
2025. 3. 26. 16:29
728x90
✅ NSX-ALB에서의 "프록시 역할"이란?
클라이언트(예: 파드)가 NSX-ALB의 IP로 보낸 요청을,
NSX-ALB가 대신 받아서 → 설정된 백엔드(예: 외부 API)로 요청을 다시 보내고,
그 응답을 클라이언트에게 다시 전달하는 것
즉, NSX-ALB가 중간에 끼어서 대신 통신해주는 중계 서버 역할을 합니다.
이것이 프록시(proxy) 역할입니다.
🔁 요청 흐름 (정확한 순서)
- 파드가 요청 보냄:
- GET http://1.2.3.4/api/data Host: api.example.com
- NSX-ALB 수신 (Virtual Service가 1.2.3.4:80 리스닝 중)
- NSX-ALB 내부 설정 확인:
- 이 요청은 Pool external-api 로 보내야 함
- ALB가 실제로 백엔드 서버(예: api.example.com:80)에 다시 요청 보냄:
- GET /api/data Host: api.example.com
- 외부 API가 응답함 → ALB가 응답 받음
- ALB가 응답을 파드에게 그대로 전달
🧠 이것이 중요한 이유
- 파드 입장에선 외부 API의 주소나 구조를 몰라도 됨
- L4/VIP 하나만 알고 있으면 외부 API와 통신 가능
- 보안상 L4 공인 IP만 허용된 상황에도 대응 가능
- 인증/로깅/라우팅 로직을 ALB에서 추가 가능
🔧 NSX-ALB의 동작 모드
NSX-ALB의 Virtual Service는 기본적으로 L7 프록시(HTTP) 방식으로 동작합니다.
모드 설명
HTTP (L7 Proxy) | 요청/응답 내용을 보고 수정, 헤더 추가 가능 |
TCP (L4 Proxy) | HTTP 외의 트래픽도 가능, 단 세부제어는 어려움 |
📌 요약
개념 의미
프록시 역할 | ALB가 요청을 받아서 대신 외부 API에 요청하고 응답을 클라이언트에게 전달 |
ALB는 직접 요청하지 않음 | 항상 "클라이언트 요청 → ALB → 백엔드" 흐름 |
파드는 외부 API 직접 몰라도 됨 | 오직 공인 IP와 경로만 알면 됨 |
728x90