반응형

AWS에서 보안 모범 사례(Best Practice)에 따라 EC2, ECS, EKS(Kubernetes), RDS를 프라이빗 서브넷(Private Subnet)에 배치하고 외부 인터넷 통신을 위해 가용 영역(AZ)마다 Managed NAT Gateway를 연결해 두면, 어느 순간 EC2 컴퓨팅 비용보다 NatGateway-Bytes(데이터 처리 요금)가 더 많이 청구되는 요금 폭탄을 맞곤 합니다. 특히 서울 리전(ap-northeast-2) 기준 NAT Gateway는 시간당 고정비($0.059/hr) 외에도 통과하는 트래픽 1GB당 $0.059를 이중으로 과금하기 때문에, S3 백업이나 ECR Docker 이미지 배포만 반복해도 매달 수백~수천 달러가 빠져나갑니다.

이번 글에서는 1) AWS NAT Gateway vs VPC Endpoint(Gateway / Interface) vs 오픈소스 NAT 인스턴스(fck-nat)의 월간 비용 구조 비교, 2) 트래픽의 70%를 차지하는 S3·ECR 데이터 요금을 즉시 $0원(무료)으로 만드는 Gateway VPC Endpoint 실전 설정, 그리고 3) VPC Flow Logs로 어떤 서버·컨테이너가 NAT 요금을 유발하는지 1분 만에 색출하는 쿼리를 정리합니다.


1. AWS 프라이빗 서브넷 네트워크 아키텍처별 요금 비교 (서울 리전 기준)

프라이빗 서브넷 내부의 서버가 AWS 내부 서비스(S3, DynamoDB, ECR)나 외부 인터넷과 통신할 때 어떤 경로를 타느냐에 따라 월간 클라우드 네트워크 청구서가 완전히 달라집니다.

구분 / 연결 방식 시간당 기본료 (Multi-AZ 2개 기준) 데이터 처리 단가 (1GB당) 핵심 특징 및 추천 용도
AWS Managed NAT Gateway 시간당 $0.118
(월 고정 약 $86.14)
$0.059 / GB
(10TB 처리 시 월 $604 추가)
완전 관리형 고가용성 제공, 단 대용량 S3·Docker 트래픽 통과 시 요금 폭탄 발생
Gateway VPC Endpoint
(S3 / DynamoDB 전용)
$0 (완전 무료) $0 / GB (완전 무료) 라우팅 테이블에 추가만 하면 S3·DynamoDB 트래픽이 NAT를 우회해 비용 100% 면제
Interface VPC Endpoint
(AWS PrivateLink)
AZ당 시간당 $0.013
(2개 AZ 월 약 $19)
$0.01 / GB
(NAT 대비 83% 저렴)
ECR, CloudWatch Logs, Secrets Manager 트래픽이 월 350GB 이상일 때 손익분기점 돌파
자체 구축 NAT 인스턴스
(fck-nat + t4g.nano)
인스턴스 2대 월 약 $6.5
(기본료 92% 절감)
$0 / GB (데이터 처리비 무료)
(일반 인터넷 아웃바운드만 과금)
개발(Dev/Staging) 환경 및 중소규모 프로덕션에서 NAT 고정비·처리비 동시 제거

특히 CI/CD 파이프라인에서 빌드된 대용량 Docker 이미지를 하루 수십 번 풀(Pull)하거나 컨테이너 로그·모니터링 에이전트를 운영 중이라면 아래 두 가이드를 함께 적용해 빌드 시간과 서버 메모리·트래픽 비용을 동시에 줄일 수 있습니다.

반응형

2. S3 및 ECR Docker 이미지 트래픽 비용을 즉시 $0원으로 만드는 VPC Endpoint 설정

① 왜 ECR에서 Docker 이미지를 받는데 S3 Endpoint가 핵심일까?

많은 엔지니어가 놓치는 중요한 사실이 있습니다. Amazon ECR(Elastic Container Registry)의 실제 컨테이너 이미지 레이어(Layer) 파일은 내부적으로 Amazon S3에 저장됩니다. 즉 ECS나 EKS 워커 노드가 ECR에서 수 기가바이트짜리 이미지를 다운로드할 때, 인증 메타데이터만 ECR API를 거치고 실제 용량의 99%를 차지하는 이미지 레이어 다운로드는 S3 엔드포인트로 통신합니다.

따라서 비용이 전혀 들지 않는 S3 Gateway VPC Endpoint 하나만 프라이빗 라우팅 테이블에 붙여도 S3 업로드/다운로드 비용은 물론 ECR 이미지 Pull 시 발생하던 막대한 NAT Gateway 데이터 처리 요금이 즉시 $0원으로 사라집니다.

② AWS CLI 및 Terraform을 이용한 무료 S3 Gateway Endpoint 1분 생성

# 1. AWS CLI로 서울 리전(ap-northeast-2) S3 Gateway VPC Endpoint 즉시 생성 (과금 $0)
aws ec2 create-vpc-endpoint \
  --vpc-id vpc-0123456789abcdef0 \
  --vpc-endpoint-type Gateway \
  --service-name com.amazonaws.ap-northeast-2.s3 \
  --route-table-ids rtb-private-az1 rtb-private-az2

Terraform으로 인프라(IaC)를 관리 중이라면 아래 블록을 추가하는 것만으로 모든 프라이빗 서브넷의 S3 및 DynamoDB 경로가 AWS 내부 백본망으로 즉시 우회됩니다.

# Terraform: 무료 S3 & DynamoDB Gateway VPC Endpoint 구성
resource "aws_vpc_endpoint" "s3_gateway" {
  vpc_id            = aws_vpc.main.id
  service_name      = "com.amazonaws.ap-northeast-2.s3"
  vpc_endpoint_type = "Gateway"
  route_table_ids   = aws_route_table.private[*].id

  tags = {
    Name = "prod-s3-gateway-endpoint-free"
  }
}

resource "aws_vpc_endpoint" "dynamodb_gateway" {
  vpc_id            = aws_vpc.main.id
  service_name      = "com.amazonaws.ap-northeast-2.dynamodb"
  vpc_endpoint_type = "Gateway"
  route_table_ids   = aws_route_table.private[*].id
}
반응형

3. NAT Gateway 요금 폭탄 주범(IP·컨테이너) 색출 및 트러블슈팅

S3 엔드포인트를 연결했는데도 여전히 NatGateway-Bytes 요금이 높게 나온다면, 프라이빗 서브넷의 특정 컨테이너나 배치 서버가 외부로 대용량 데이터를 전송하고 있는 것입니다. 아래 표와 CloudWatch Logs Insights 쿼리로 범인을 정확히 특정할 수 있습니다.

숨은 트래픽 발생 원인 왜 NAT Gateway를 타는가? 해결 및 아키텍처 개선 방법
CloudWatch Logs / 외부 APM 로그 전송 컨테이너 표준 출력(stdout) 디버그 로그가 초당 수천 줄씩 NAT를 통해 퍼블릭 엔드포인트로 전송됨 프로덕션 로그 레벨을 INFO/WARN으로 상향하고 com.amazonaws.ap-northeast-2.logs 엔드포인트 연결
가용 영역(AZ) 간 교차 트래픽 AZ-a의 프라이빗 서브넷이 AZ-c에 있는 단일 NAT Gateway를 경유하도록 라우팅되어 Cross-AZ 요금($0.01/GB) 중복 부과 반드시 동일한 가용 영역(Local AZ) 내의 NAT Gateway/인스턴스를 바라보도록 서브넷 라우팅 테이블 분리
외부 패키지·AI 모델 반복 다운로드 오토스케일링 시마다 apt/yum 패키지나 수 GB짜리 AI/임베딩 모델 가중치를 외부에서 매번 다운로드 모델 가중치와 패키지를 S3 버킷 또는 Golden AMI/Docker 이미지 내부에 미리 캐싱하여 S3 Gateway로 수신
# CloudWatch Logs Insights: NAT Gateway 인터페이스(eni-xxx) 기준 트래픽 상위 10개 서버/목적지 IP 조회
filter interfaceId = "eni-0123456789natgw" and action = "ACCEPT"
| stats sum(bytes) / 1024 / 1024 / 1024 as Total_GB by srcAddr, dstAddr, dstPort
| sort Total_GB desc
| limit 10

4. 함께 읽으면 클라우드·AI 인프라 비용을 아끼는 실전 가이드

네트워크 트래픽 비용 절감과 더불어 데이터베이스, 보안 터널, LLM API 과금을 통합 최적화할 수 있는 추천 가이드입니다.

반응형
Posted by Real_G