Elastic Load Balancer(ELB)는 AWS 환경에서 트래픽을 분산하고 애플리케이션의 가용성을 높이는 핵심 서비스입니다. 하지만 ELB는 ALB, NLB, GWLB 등 다양한 유형과 세분화된 과금 항목을 가지고 있어 각 항목에 대한 이해가 필요하며 자칫 방치하면 예상치 못한 비용 폭탄으로 돌아올 수 있습니다. 이 글은 AWS Cost Explorer를 활용하여 ELB 비용을 정확히 진단하고, 효과적인 비용 절감 전략을 수립하는 데 필요한 인사이트를 제공합니다.
Elastic Load Balancer(ELB)는 ALB, NLB, GWLB와 같은 로드 밸런서를 포함하며, 각 유형은 사용량 기반으로 다양한 과금 항목이 발생합니다. ELB의 비용을 효과적으로 파악하려면 AWS Cost Explorer를 활용하여 상세 항목별로 분석하는 것이 중요합니다.
ELB 비용은 로드밸런서의 실행 시간, 처리 요청 수, 전송된 데이터량, 연결 수, PrivateLink(GWLBE) 사용 여부 등에 따라 세분화되어 과금됩니다. 따라서 항목별 구조를 명확히 파악하면 비용 절감 전략 수립에 도움이 됩니다.
AWS Console의 상단 검색창에 “Cost Explorer”를 입력한 후 실행합니다.
“Cost Explorer 열기” 버튼을 눌러 비용 분석 화면으로 이동합니다.
비용의 구조를 더 세부적으로 확인하려면 Group By 기능을 사용하여 다음과 같이 설정합니다.
Group By: Usage Type
Usage Type: ELB 관련 과금 항목별로 비용을 세분화하여 분석합니다.
APN2-LoadBalancerUsage: 로드 밸런서 실행 시간 비용
APN2-LCUUsage (ALB), APN2-NLCUUsage (NLB), APN2-GLCUUsage (GWLB): 로드 밸런서 처리량 단위 비용
APN2-DataTransfer-Out-Bytes: 인터넷 아웃바운드 데이터 전송 비용
APN2-DataTransfer-Regional-Bytes: AZ 간 데이터 전송 비용
APN2-USE1-AWS-Out-Bytes 등: 리전 간 데이터 전송 비용
APN2-GWLBE-Hours, APN2-GWLBE-Bytes: GWLB PrivateLink 엔드포인트 관련 비용
Group By: Resource ID
개별 로드 밸런서 인스턴스별로 비용을 식별하고 비교 분석할 수 있습니다. 서비스 구조상 여러 ELB를 운영한다면, 특정 도메인이나 애플리케이션에 비용이 집중되는지 파악하는 데 특히 유용합니다.
Service: Elastic Load Balancing 선택 후 Usage Type을 목적에 맞게 선택해 해당 비용만 확인합니다.
Service: Elastic Load Balancing을 선택하여 ELB 관련 비용만 필터링합니다.
Usage Type: 분석 목적에 맞춰 특정 Usage Type(예: APN2-LCUUsage만)을 선택하여 해당 비용만 집중적으로 확인합니다.
추가 필터링: 특정 로드 밸런서의 비용만 보고 싶다면 Resource ID나 Tag를 활용하여 더 세부적으로 필터링할 수 있습니다. 예를 들어, Environment:Production 태그가 붙은 ELB의 비용만 확인할 수 있습니다.
분석 기간: 이번 달, 지난 3개월, 지난 6개월 등으로 설정
일별 분석: 트래픽 폭증, 배포 이벤트, 비정상 요청 급증 등 이상 징후 탐지에 효과적
월별 분석: 전체적인 트렌드 및 서비스 성장과 비용 증가 간 상관관계 파악 가능
예를 들어 다음과 같은 지표에서 비용이 급증한 경우 원인을 다음과 같이 1차로 유추할 수 있습니다.
APN2-LCUUsage 증가 → 특정 ALB에 대한 요청 수 또는 처리량 폭증
APN2-DataTransfer-Out-Bytes 증가 → ALB를 통해 전달된 응답 데이터가 많아짐 (예: 대용량 API 응답)
APN2-DataTransfer-Regional-Bytes 증가 → AZ 간 트래픽 증가 (예: 다중 AZ 배포 구조)
예를 들어 특정 이벤트(마케팅 캠페인, 배포 등)와 비용의 연관성을 역추적하여 최적화 방안을 마련할 수 있습니다.
Elastic Load Balancing(ELB)의 비용을 정확히 이해하기 위해서는 AWS Cost Explorer에서 확인되는 항목들을 잘 해석해야 합니다. 각 항목은 특정한 과금 요소를 나타내며, 이를 통해 어떤 요인이 비용을 유발하는지 알 수 있습니다. 아래는 주요 항목들에 대한 설명입니다.
이 항목은 인터넷으로 나가는 데이터 전송량(아웃바운드 트래픽)에 대한 비용입니다.
예를 들어, 사용자가 ALB나 NLB를 통해 웹사이트나 API에 접속할 때, 서버에서 사용자에게 보내는 데이터(예: 이미지, HTML, JSON 응답)가 이 항목으로 계산됩니다.
AWS 외부(인터넷)로 나가는 모든 데이터량이 포함됩니다.
GB 단위로 측정되며, 요금은 전송량에 따라 발생합니다.
이 항목은 ELB(Load Balancer) 자체의 시간당 사용료를 의미합니다.
즉, ELB를 생성해두기만 해도, 생성된 시간 단위로 요금이 발생합니다.
ALB, NLB, GWLB 등 모든 유형의 ELB에 적용됩니다.
ELB 인스턴스가 하나라도 생성되어 있는 시간 전체에 대해 비용이 청구됩니다.
ELB가 처리하는 요청의 양과 상관없이, 생성해두기만 해도 시간 요금이 계속 나갑니다.
이 항목은 ALB(특히 Application Load Balancer)에만 적용되는 LCU (Load Balancer Capacity Unit) 사용량에 대한 비용입니다. LCU는 ALB가 처리하는 트래픽의 양, 활성 연결 수, 새 연결 수, 규칙 수 등을 종합적으로 측정한 단위입니다.
ALB는 단순히 인스턴스 시간 요금 외에도, 이 LCU 단위별로 추가 요금이 발생합니다.
LCU는 ALB의 처리량이 높아질수록 많이 소비되며, 특히 다양한 URL 경로/호스트 기반 라우팅을 많이 사용하는 경우 LCU가 증가할 수 있습니다.
이 항목은 같은 리전 내 다른 가용영역(AZ) 간의 데이터 전송 비용입니다.
예를 들어, ALB는 서울 리전의 여러 AZ에 걸쳐 배포되는데, 특정 AZ의 EC2에서 다른 AZ의 ALB로 데이터를 전송할 때 이 비용이 발생합니다.
단일 AZ 내에서는 전송 비용이 발생하지 않지만, AZ 간에는 GB 단위로 비용이 부과됩니다.
ELB의 리스너와 타겟 그룹 간의 데이터 흐름에서 AZ 간 통신이 많으면 비용이 커질 수 있으므로 주의해야 합니다.
이 항목은 AWS 리전 간 데이터 전송(Cross-Region Data Transfer)에 대한 비용입니다.
예를 들어, 서울 리전의 ELB에서 유럽(EU) 리전의 리소스(예: S3, EC2)로 데이터를 전송하면 이 항목에 포함됩니다.
AWS 리전 간 데이터 전송은 무료가 아니며, GB 단위로 별도의 요금이 부과됩니다.
멀티리전에 걸쳐 서비스를 운영할 때 주의해야 할 항목입니다.
이 외에도 각 지역별로 아래와 같은 항목으로 데이터 전송 비용들이 분리될 수 있습니다.
APN2-USE2-AWS-Out-Bytes - 미국 동부(Ohio) 리전
APN2-USE1-AWS-Out-Bytes - 미국 동부(N. Virginia) 리전
총 ELB 비용은 2024년 11월 $1,459.09에서 시작하여 2025년 3월 $1,987.30까지 증가했다가, 2025년 4월 $1,609.14로 감소하는 변동성을 보였습니다. 이 기간 동안 총 $10,274.68의 ELB 관련 비용이 발생했습니다. 대부분의 요금이 3가지 항목에서 지출되고 있습니다. APN2-DataTransfer-Out-Bytes, APN2-LoadBalancerUsage, APN2-LCUUsage 이렇게 3 항목입니다. 그 의미를 보면 다음과 같이 해석할 수 있습니다.
APN2-LoadBalancerUsage
이 항목은 $712.80(2024년 11월)에서 $814.57(2025년 1월)까지 증가했다가 $502.20(2025년 4월)으로 크게 감소하는 추세를 보입니다. 지난 6개월간 총 $4,194.20가 지출되어 전체 ELB 비용의 약 40.8%를 차지합니다.
이 비용은 로드밸런서가 가동된 시간에 비례하므로, 월별 변동폭이 크다는 것은 특정 월에 로드밸런서의 생성 및 삭제가 활발하게 이루어졌거나, 유휴 로드밸런서가 정리되었을 가능성을 시사합니다. 2025년 4월의 급격한 감소는 불필요한 로드밸런서가 종료되었거나, 일부 로드밸런서의 가동 시간이 줄어들었음을 강력히 시사하며, 이는 긍정적인 비용 최적화 활동의 결과일 수 있습니다.
APN2-DataTransfer-Out-Bytes
이 항목은 2024년 11월 $544.44에서 지속적으로 증가하여 2025년 3월 $1,026.80으로 정점을 찍은 후 2025년 4월 $881.17로 소폭 감소했습니다. 지난 6개월간 총 $4,655.25가 지출되어 전체 ELB 비용의 약 45.3%로 가장 큰 비중을 차지합니다.
이 비용은 ELB를 통해 인터넷으로 전송된 데이터량에 비례하므로, 사용자 트래픽 또는 서비스가 제공하는 데이터의 양이 지속적으로 증가했음을 나타냅니다. 특히 2025년 3월의 급증은 특정 이벤트(예: 마케팅 캠페인, 대용량 콘텐츠 배포)나 서비스 트래픽의 급격한 증가와 연관될 수 있습니다. 4월의 감소는 트래픽이 안정화되었거나, 데이터 전송 최적화 노력이 있었음을 시사합니다.
APN2-LCUUsage
이 항목은 2024년 11월 $192.32에서 2024년 12월 $237.86으로 증가했다가 2025년 2월 $208.80으로 소폭 감소 후 2025년 3월 $261.13로 다시 증가, 2025년 4월 $191.65로 큰 폭으로 감소했습니다. 총 $1,304.98가 지출되어 전체 ELB 비용의 약 12.7%를 차지합니다.
LCUUsage는 ALB가 처리하는 트래픽의 복잡도와 양을 나타내므로, 이 비용의 변동은 ALB를 통한 요청 수, 연결 수, 또는 규칙 평가량의 변화를 반영합니다. LoadBalancerUsage와 마찬가지로 2025년 4월의 감소는 ALB 트래픽 최적화 또는 일부 ALB의 트래픽 감소와 관련될 수 있습니다.
DataTransfer-Out-Bytes 외 다른 데이터 전송 비용이 적은 것은 인터넷으로 송출되는 데이터양이 많다는 것을 의미합니다. 한편으로 내부에서 처리되는 비용은 거의 없으므로 적절하게 관리되고 있다고 볼 수 있습니다.
리소스 ID 기준 주요 비용 발생 로드 밸런서를 살펴보면 아래와 같습니다.
arn:aws:elasticloadbalancing:ap-northeast-2:2997347119519:loadbalancer/net/fortigate-production-nlb/... 이 로드 밸런서는 net으로 시작하는 것으로 보아 NLB (Network Load Balancer)임을 알 수 있습니다. 이 리소스는 2025년 1월 $414.86, 2월 $378.08, 3월 $325.37, 4월 $288.93로 지속적으로 비용이 감소하는 추세를 보입니다. 총 $1,407.20를 차지하여 단일 리소스 중 가장 높은 비용을 기록했습니다.
arn:aws:elasticloadbalancing:ap-northeast-2:2997347119519:loadbalancer/net/fortigate-k8s-pub-nlb/... 역시 NLB 유형으로, Kubernetes(k8s) 환경에서 fortigate와 함께 사용되는 공용(pub) NLB로 추정됩니다. 하나는 2025년 1월 $16.75에서 시작하여 3월 $541.53, 4월 $710.14로 비용이 급증하는 모습을 보입니다. 다른 하나는 2025년 1월 $339.10에서 2월 $467.63으로 증가 후 3월 $287.10, 4월 $16.21로 급감하는 대조적인 패턴을 보입니다. 이 두 NLB의 비용 패턴이 상반된다는 것은 특정 NLB로 트래픽이 전환되었거나, 구 버전의 NLB가 트래픽 처리에서 제외되고 신규 NLB가 이를 대체했음을 강력히 시사합니다. Kubernetes 환경의 서비스 배포 전략(예: 블루/그린, 카나리 배포) 또는 트래픽 라우팅 변경과 밀접한 관련이 있을 가능성이 높습니다. 급증한 NLB의 트래픽을 세밀하게 분석하여 비용 효율성을 재검토할 필요가 있습니다.
arn:aws:elasticloadbalancing:ap-northeast-2:2997347119519:loadbalancer/app/itnl-alb-prod-intl-co-kr/... app으로 시작하는 것으로 보아 ALB (Application Load Balancer)임을 알 수 있습니다. 이 ALB는 $82.16(1월)에서 $40.82(4월)로 점진적으로 비용이 감소하는 추세를 보입니다. 비용 감소는 해당 서비스의 트래픽이 줄었거나, 트래픽을 다른 ALB로 분산했거나, ALB의 LCU 소비를 줄이는 최적화(예: 캐싱, 규칙 최적화)가 이루어졌을 가능성을 나타냅니다.
제공된 ELB 비용 데이터를 종합해 볼 때, 다음의 핵심 인사이트와 최적화 기회를 도출할 수 있습니다.
데이터 전송 비용(DataTransfer-Out-Bytes)이 가장 큰 비중: 전체 ELB 비용의 절반에 가까운 비중을 차지하고 있어, CloudFront 도입을 통한 정적 콘텐츠 캐싱 및 압축 전송 최적화가 가장 큰 비용 절감 효과를 가져올 것으로 예상됩니다.
로드밸런서 가동 시간 요금(LoadBalancerUsage) 관리: 2025년 4월에 해당 비용이 크게 감소한 것은 긍정적인 신호입니다. 하지만 여전히 상당한 비중을 차지하므로, 개발/테스트 환경의 ELB를 필요할 때만 활성화하거나, 사용하지 않는 ELB를 주기적으로 삭제하는 라이프사이클 관리를 강화해야 합니다.
ALB LCU 비용 최적화: LCU 사용량은 트래픽 증가와 복잡한 규칙에 비례합니다. APN2-LCUUsage가 꾸준히 발생하고 있으므로, ALB 규칙 수를 줄이거나, 규칙 평가 순서를 최적화하고, 불필요한 ALB 로깅을 줄이는 등의 노력을 통해 LCU 소비를 줄일 수 있습니다.
개별 로드밸런서의 비용 패턴 추적: 특정 NLB(fortigate-k8s-pub-nlb)의 비용이 2025년 4월에 급증한 것은 주목할 만합니다. 이 원인을 정확히 파악(트래픽 급증, 비정상 요청, 라우팅 변경 등)하고, 해당 로드밸런서의 사용량을 면밀히 모니터링하여 추가적인 최적화 방안을 모색해야 합니다. 동시에, 비용이 $0.00이 되는 ALB(istio-alb-prv-athena-prod 등)는 현재 사용되지 않는 ELB일 가능성이 높으므로, 즉시 확인하여 삭제하는 것이 비용 절감에 도움될 수 있습니다.
낮은 AZ 간/리전 간 전송 비용: 현재로서는 AZ 간 또는 리전 간 데이터 전송 비용은 미미하여 이 부분에 대한 최적화 필요성은 낮습니다. 하지만 향후 아키텍처 확장 시에는 이 비용이 증가할 수 있으므로 지속적인 모니터링이 필요합니다.
이러한 실제 비용 데이터 분석은 추측이 아닌 구체적인 증거를 바탕으로 비용 절감 포인트를 식별하고, 비즈니스 성장과 클라우드 비용 간의 균형을 찾아가는 데 필수적인 과정입니다.