kui-vault/03.Note/Pod를 Private subnet에 두는 이유.md

1.8 KiB

1. 공격 표면(Attack Surface)의 최소화

파드가 퍼블릭 서브넷에 있고 공인 IP(Public IP)를 직접 가지고 있다면, 전 세계 누구나 해당 파드에 직접 접속을 시도할 수 있습니다.

  • 위험성: 애플리케이션 코드의 작은 취약점이나 설정 오류만으로도 서버 전체가 해킹당할 수 있습니다.

  • 해결: 프라이빗 서브넷에 두면 외부에서는 아예 길 자체가 없어서 직접 접근이 불가능해집니다.

2. 단일 진입점 강제 (로드 밸런서 활용)

사용자는 파드에 직접 붙는 것이 아니라, **로드 밸런서(ALB/NLB)**라는 검증된 관문을 통해서만 들어와야 합니다.

  • 로드 밸런서는 퍼블릭 서브넷에서 외부 요청을 안전하게 걸러서 받고, 내부 네트워크를 통해 프라이빗 서브넷에 있는 파드에게 전달합니다.

  • 이 구조를 통해 트래픽 제어, SSL 인증서 관리, WAF(웹 방화벽) 적용이 훨씬 쉬워집니다.

3. IP 주소 자원 관리

퍼블릭 IP는 전 세계적으로 한정된 자원이며 비용이 발생합니다.

  • 쿠버네티스 특성상 파드는 수십, 수백 개가 생성되었다가 사라집니다. 이때마다 퍼블릭 IP를 할당하는 것은 매우 비효율적이고 비용 낭비가 심합니다.

  • 내부망(Private IP)을 사용하면 주소 부족 걱정 없이 자유롭게 스케일링할 수 있습니다.

4. 아키텍처의 논리적 분리 (Tiering)

현대적인 3-Tier 아키텍처 원칙을 따르기 위함입니다.

  • Public Tier: 로드 밸런서, 배스천 호스트 (외부 소통 창구)

  • Private Tier: 애플리케이션 서버, 데이터베이스 (실제 핵심 데이터와 로직)