AWS CloudFront Cost Explorer분석

by 멘토사피엔스

웹 성능은 오늘날 비즈니스의 성패를 좌우합니다. AWS CloudFront는 전 세계에 분산된 엣지 로케이션을 통해 사용자에게 콘텐츠를 빠르게 전달하며 이 문제를 해결해 주죠. 그러나 이러한 강력한 성능 뒤에는 복잡하고 예측하기 어려운 비용 구조라는 또 다른 얼굴이 숨어 있습니다. 수많은 기업이 CloudFront를 사용하지만, 비용이 어디서 어떻게 발생하는지 명확하게 이해하지 못해 불필요한 지출이 쌓이곤 합니다. 마치 안개 속을 걷는 것처럼 말이죠.


AWS Cost Explorer를 활용하면 이 복잡한 비용의 미로를 간결하고 구체적으로 풀어낼 수 있습니다. 이 글은 CloudFront의 비용 구조를 항목별로 낱낱이 분석하고, 그 결과를 바탕으로 실행 가능한 비용 절감 전략을 제시합니다.


CloudFront 비용 진단 및 분석


AWS CloudFront는 AWS 환경에서 콘텐츠를 빠르게 전송하는 데 필수적인 서비스입니다. 강력한 성능을 제공하지만, 효율적인 비용 관리를 위해서는 CloudFront의 과금 구조를 정확히 이해하고 현재 비용을 진단하는 것이 중요합니다. CloudFront는 주로 데이터 전송량, 요청 수, 그리고 엣지 함수 호출 횟수에 따라 요금이 부과되므로, 이 세 가지 주요 항목을 중심으로 분석해야 효과적인 비용 절감 전략을 수립할 수 있습니다.

CloudFront의 비용을 분석하려면 AWS Cost Explorer를 활용할 수 있습니다. 다음은 CloudFront 비용을 확인하고 분석하는 구체적인 방법입니다.


Cost Explorer 접속 방법


AWS CloudFront 비용 분석을 시작하려면, 먼저 AWS Management Console에 로그인하세요. 콘솔 상단의 검색창에 "Cost Explorer"를 입력하여 해당 서비스를 선택한 다음, "Cost Explorer 열기" 버튼을 클릭하여 비용 분석 도구에 진입합니다.


Group By 설정

비용 데이터를 효과적으로 분류하고 분석하려면 Group By 항목을 전략적으로 설정하는 것이 중요합니다. CloudFront 관련 비용을 파악할 때는 다음 기준들을 활용하는 것이 특히 효과적입니다.


UsageType

이 설정을 통해 CloudFront의 다양한 과금 요소별로 비용 항목을 명확하게 구분할 수 있습니다. 예를 들어, 데이터 전송량(GB), HTTP/HTTPS 요청 수, Lambda@Edge 실행 비용 등을 명확히 분리하여 볼 수 있습니다. 이를 통해 어떤 사용 패턴이 전체 CloudFront 비용에서 가장 큰 비중을 차지하는지 한눈에 파악하여 최적화의 우선순위를 정할 수 있습니다.


Resource ID

Resource ID를 기준으로 그룹핑하면 각 CloudFront 배포(Distribution)의 ID별로 발생하는 개별 비용을 상세히 확인할 수 있습니다. 이를 통해 "어떤 CloudFront 배포가 가장 많은 비용을 발생시키고 있는가?"를 명확히 파악하고, 특정 애플리케이션이나 서비스에 연결된 배포의 사용량과 비용을 심층 분석할 수 있습니다.


Operation (선택 사항)

특정 CloudFront API의 동작이나 타입(예: PutObject, GetObject)별로 비용을 더 세분화하여 분석하고자 할 때 이 옵션을 활용할 수 있습니다.


필터링 설정


정확하고 집중적인 CloudFront 비용 분석을 위해서는 다음 필터링 설정을 적용해야 합니다. 분석 범위를 좁혀서 원하는 데이터만 편리하게 확인할 수 있습니다.


Service

Service 필터에서 AWS CloudFront를 명확히 선택하여, 다른 AWS 서비스의 비용과 혼동되지 않고 오직 CloudFront 관련 비용만 분석 대상으로 포함합니다.


UsageType

UsageType 필터에서는 CloudFront의 주요 비용 항목들을 세부적으로 선택하여 분석할 수 있습니다. 여기에는 주로 다음과 같은 항목들이 포함됩니다.

DataTransfer-Out-Bytes: CloudFront 엣지 로케이션에서 최종 사용자에게 전송된 데이터 양에 대한 요금입니다. 지역별 요율이 다르므로, 특정 지역의 트래픽을 집중적으로 분석할 때 유용합니다.

Requests--HTTPS 또는 Requests--HTTP: CloudFront로 들어온 요청 건수에 대한 요금입니다. HTTP와 HTTPS 요청에 대한 요금이 다르게 부과됩니다.

Lambda-Edge-Compute-Duration-ARM: Lambda@Edge 함수가 ARM 아키텍처에서 실행된 시간에 대한 요금입니다.

CloudFront-Function-Invocations: CloudFront Functions 호출 횟수에 대한 요금입니다.

CloudFront-Requests-Origin-Bytes: CloudFront가 캐시 미스로 인해 원본(Origin) 서버에서 데이터를 가져올 때 발생하는 데이터 전송 비용입니다. 이 항목이 높다면 캐싱 효율성을 개선할 필요가 있다는 신호입니다.

CloudFront-Invalidation-Requests: 캐시 무효화(Invalidation) 요청 건수에 대한 요금입니다.


CloudFront 비용 분석 기간 설정


AWS CloudFront 비용의 시간적 변화를 파악하고 심층 분석하기 위해서는 적절한 트렌드 분석 기간을 설정하는 것이 중요합니다. 이는 트래픽 변화나 배포 최적화가 비용에 미치는 영향을 이해하는 데 필수적입니다.


일별 분석

CloudFront 비용 데이터의 일별 추이를 분석하는 것은 특정 날짜에 발생한 비용 급증의 원인을 파악하는 데 특히 유용합니다.

용도: 예를 들어, 특정 날짜에 갑작스러운 트래픽 급증(예: 바이럴 마케팅, DDoS 공격)이 발생했거나, 배포 오류로 인해 캐시 미스율이 급격하게 증가한 경우를 즉시 식별할 수 있습니다. 또한, CDN 캐싱 전략을 변경한 후 비용 추이를 분석하여 그 효과를 측정할 수 있습니다.

활용 팁: 일별 그래프에서 갑작스러운 스파이크를 발견하면, 해당 날짜의 CloudFront 모니터링 지표(예: 요청 수, 캐시 히트/미스율, 데이터 전송량)를 CloudWatch에서 확인하여 원인을 심층적으로 조사할 수 있습니다.


월별 분석

장기적인 관점에서 CloudFront 비용 추세를 파악하려면 월별 분석이 적합합니다. 이는 서비스 운영의 큰 그림을 이해하고 전략적인 최적화 방안을 모색하는 데 도움을 줍니다.

용도: 월별 분석을 통해 서비스 성장과 함께 트래픽이 꾸준히 증가하는 패턴을 파악하거나, 아키텍처 변경(예: S3에서 ALB로 오리진 전환) 이후의 비용 변화를 장기적인 관점에서 확인할 수 있습니다. 또한, 특정 기간에 발생한 프로모션이나 이벤트가 전체 비용에 미치는 영향을 종합적으로 평가할 수 있습니다.

활용 팁: 월별 추이를 통해 데이터 전송량이 지속적으로 증가하는 패턴을 파악하면, 웹사이트의 미디어 콘텐츠 압축, 이미지 포맷 최적화(예: WebP 변환) 등의 구조적인 최적화 방안을 모색할 수 있습니다. 또한, HTTPS 요청 비용이 높은 경우, 비디오 스트리밍이나 대용량 파일 다운로드 같은 트래픽 패턴에 맞게 전략을 조정하는 것을 고려할 수 있습니다.


이처럼 CloudFront 비용을 체계적으로 분석하고 모니터링함으로써, 사용자 경험을 향상시키면서도 콘텐츠 전송 관련 비용을 효율적으로 관리할 수 있습니다. 예를 들어, 특정 일자에 DataTransfer-Out-Bytes가 급증했다면 대규모 파일 전송, 버전 오류로 인한 캐시 미스, 혹은 정적 리소스 불필요한 중복 요청 등이 원인일 수 있습니다.


Cost Explorer 항목 분석


AWS Cost Explorer에서 CloudFront 사용량을 UsageType으로 그룹핑했을 때 나타나는 항목들은 CloudFront 서비스가 제공하는 다양한 기능과 비용 발생 지점을 명확하게 보여줍니다. 서울(AP), 미국(US), 일본(JP) 리전을 중심으로 각 항목에 대해 쉽고 자세하게 설명해 드리겠습니다.


AP-Requests-Tier1


이 항목은 아시아 태평양(AP) 지역의 CloudFront 엣지 로케이션에서 발생한 Tier 1 요청에 대한 비용을 나타냅니다. Tier 1 요청은 캐시 미스(Cache Miss)가 발생하여 CloudFront가 원본(Origin) 서버로부터 직접 데이터를 가져와야 할 때 발생하는 요청입니다. 즉, 엣지 캐시에서 콘텐츠를 찾지 못하고 원본 서버로 전달된 모든 HTTP/HTTPS 요청이 여기에 포함됩니다.


AP-Requests-Tier2-HTTPS


이 항목은 아시아 태평양(AP) 지역의 CloudFront 엣지 로케이션에서 발생한 Tier 2 HTTPS 요청에 대한 비용을 나타냅니다. Tier 2 요청은 CloudFront의 엣지 캐시에 콘텐츠가 존재하여 사용자에게 직접 서비스되는 캐시 히트(Cache Hit) 요청을 의미합니다. 특히 'HTTPS'가 붙어 있으므로, SSL/TLS 암호화를 사용하여 전송된 요청에 대한 비용을 나타냅니다. Tier 1 요청보다 비용이 저렴합니다.


AP-DataTransfer-Out-Bytes


이 항목은 아시아 태평양(AP) 지역의 CloudFront 엣지 로케이션에서 최종 사용자에게 데이터를 전송(Outbound Data Transfer)한 양에 대한 비용을 나타냅니다. 사용자가 웹사이트나 파일을 다운로드할 때 발생하는 트래픽으로, CloudFront 비용의 가장 큰 부분을 차지하는 경우가 많습니다. 전송된 데이터의 총 바이트를 기준으로 과금됩니다.


US-Requests-Tier2-HTTPS


이 항목은 미국(US) 지역의 CloudFront 엣지 로케이션에서 발생한 Tier 2 HTTPS 요청에 대한 비용을 나타냅니다. 아시아 태평양 지역과 마찬가지로, 미국 엣지 로케이션에서 캐시 히트가 발생하여 HTTPS를 통해 사용자에게 직접 서비스된 요청에 대한 비용을 의미합니다.


US-DataTransfer-Out-Bytes


이 항목은 미국(US) 지역의 CloudFront 엣지 로케이션에서 최종 사용자에게 데이터를 전송(Outbound Data Transfer)한 양에 대한 비용을 나타냅니다. 미국 지역 사용자들이 콘텐츠를 소비하면서 발생하는 트래픽 비용입니다.


JP-Requests-Tier2-HTTPS


이 항목은 일본(JP) 지역의 CloudFront 엣지 로케이션에서 발생한 Tier 2 HTTPS 요청에 대한 비용을 나타냅니다. 일본 엣지 로케이션에서 캐시 히트가 발생하여 HTTPS를 통해 사용자에게 직접 서비스된 요청에 대한 비용을 나타냅니다.


JP-DataTransfer-Out-Bytes


이 항목은 일본(JP) 지역의 CloudFront 엣지 로케이션에서 최종 사용자에게 데이터를 전송(Outbound Data Transfer)한 양에 대한 비용을 나타냅니다. 일본 지역 사용자들이 콘텐츠를 소비하면서 발생하는 트래픽 비용입니다.


APN2-Lambda-Edge-GB-Second


이 항목은 서울 리전(ap-northeast-2)에서 실행된 Lambda@Edge 함수의 실행 시간에 대한 비용을 나타냅니다. Lambda@Edge는 사용자와 가장 가까운 엣지 로케이션에서 실행되는 서버리스 함수로, 함수에 할당된 메모리(GB)와 실행 시간(초)을 곱한 값인 GB-초(Gigabyte-Seconds)를 기준으로 과금됩니다. 이는 CloudFront 이벤트에 반응하여 웹 요청을 수정하거나 사용자 지정 로직을 실행할 때 발생합니다.


APN2-Lambda-Edge-Request


이 항목은 서울 리전(ap-northeast-2)에서 실행된 Lambda@Edge 함수의 요청 수에 대한 비용을 나타냅니다. Lambda@Edge 함수가 호출될 때마다 1개의 요청으로 계산되며, 이 요청 수에 따라 과금됩니다.


Invalidations


이 항목은 CloudFront 캐시에서 콘텐츠를 무효화(Invalidate)할 때 발생하는 비용을 나타냅니다. CloudFront는 캐시된 콘텐츠를 삭제하거나 업데이트할 때 무효화 요청을 사용하는데, 특정 횟수를 초과하는 무효화 요청에 대해서는 추가 비용이 발생합니다. 예를 들어, 웹사이트 업데이트 후 즉시 변경 사항을 반영하고 싶을 때 이 기능을 사용하게 됩니다.


Cost Explorer 분석 예시

아래는 CloudFront의 지난 6개월 비용을 usage type과 resource id로 나누어 조회해본 결과입니다.


스크린샷 2025-06-17 오후 7.34.27.png
스크린샷 2025-06-17 오후 7.34.08.png


이 데이터를 활용하여 AWS CloudFront 비용을 종합적으로 분석할 수 있습니다. 첫 번째 이미지는 사용량 유형별 비용을, 두 번째 이미지는 리소스 ID별 비용을 보여주며, 이들을 결합하면 서비스의 주요 비용 발생 원인과 최적화 기회를 명확히 파악할 수 있습니다.


사용 유형별 비용 분석 결과


총 CloudFront 비용은 지난 6개월간 약 9,700달러를 기록했습니다. 이 비용은 2024년 11월 약 1,900달러에서 2025년 4월 약 1,300달러로 감소하는 추세를 보였습니다.


비용의 가장 큰 비중을 차지하는 것은 아시아 태평양(AP) 지역의 트래픽입니다. 전체 비용의 약 93%가 이 지역의 HTTPS 요청과 데이터 전송에서 발생했습니다. 구체적으로, HTTPS 요청이 약 4,672달러, 데이터 전송량이 약 4,383달러를 차지하여 대부분의 사용자가 한국이나 일본과 같은 아시아 태평양 지역에 집중되어 있음을 나타냅니다.


반면, 미국, 일본, 유럽 지역의 요청 및 데이터 전송 비용은 상대적으로 매우 낮아 전체 비용에서 차지하는 비중이 미미합니다.


특히 주목할 점은 2025년 4월에 서울 리전에서 Lambda@Edge 실행 비용이 약 5.84달러로 처음 발생했다는 것입니다. 이는 최근에 엣지 컴퓨팅 로직이 도입되었음을 시사하며, 향후 비용 관리의 새로운 항목이 될 수 있습니다.


리소스 ID별 비용 분석 결과


전체 비용 중 대부분은 단일 CloudFront 배포에서 발생했습니다.


arn:aws:cloudfront:...E2CDXFIL2X5S4B라는 ID를 가진 이 배포는 지난 6개월간 약 8,700달러의 비용을 발생시켜, 전체 CloudFront 비용의 약 90%를 차지하는 압도적인 주요 원인으로 확인되었습니다. 이 배포가 서비스의 메인 트래픽을 처리하는 핵심 배포임을 알 수 있습니다.


두 번째로 높은 비용을 발생시킨 배포는 arn:aws:cloudfront:...E2X-JFSWYFSO5EH로, 약 800달러를 기록했습니다. 이 외의 다른 배포들은 비용 발생량이 매우 적었습니다.


또한, 2025년 4월에 발생한 Lambda@Edge 비용은 arn:aws:lambda:ap-northeast-2:...dims와 같은 특정 함수에서 비롯된 것으로 확인되었습니다. 이 함수는 서울뿐만 아니라 미국 동부, 미국 서부, 유럽 등 여러 리전에서 실행된 흔적이 보입니다. 이는 해당 함수가 전 세계 사용자 요청을 처리하도록 여러 엣지 로케이션에 배포되었음을 의미합니다.


종합 결론 및 최적화 방안


두 분석 결과를 종합하면 비용 최적화의 핵심은 명확합니다. 가장 큰 비용을 차지하는 E2CDXFIL2X5S4B 배포의 효율성을 개선하는 것이 급선무입니다. 이 배포의 비용은 데이터 전송과 요청 수에서 발생하므로, 캐싱 효율성을 높이는 것이 가장 효과적인 절감 방안입니다. 캐시 정책을 최적화하고, 불필요한 쿼리 문자열이나 헤더를 캐시 키에서 제외하여 캐시 히트율을 높이면 오리진 요청에 따른 이중 과금을 줄이고 전반적인 데이터 전송 비용을 낮출 수 있습니다.


또한, 2025년 4월부터 새롭게 비용을 발생시키기 시작한 Lambda@Edge 함수를 면밀히 관리해야 합니다. 현재는 비용이 적지만, 호출 수가 늘어나면 급증할 수 있으므로, 이 함수가 어떤 로직을 수행하는지 파악하는 것이 중요합니다. 만약 가벼운 로직이라면 비용이 훨씬 저렴한 CloudFront Functions로 대체하는 것을 적극적으로 고려해야 합니다.


마지막으로, 지난 6개월간의 총비용 감소 추세를 분석하여 그 원인을 파악해야 합니다. 이 감소가 의도적인 최적화 노력의 결과라면, 어떤 조치가 효과적이었는지 기록하고 다른 배포에도 적용하는 것을 고려해야 합니다. 자연적인 트래픽 감소라면, 향후 비용 예측에 반영해야 합니다.


결론


우리는 AWS Cost Explorer 분석을 통해 CloudFront 비용의 90%가 특정 배포에서 발생하며, 이 비용이 주로 아시아 태평양 지역의 요청과 데이터 전송에서 비롯된다는 사실을 발견했습니다. 이러한 명확한 진단은 이제 우리에게 구체적인 행동 계획을 세울 수 있는 토대를 마련해 주었습니다. 핵심 배포의 캐싱 효율성을 개선하여 불필요한 요청 및 데이터 전송 비용을 줄이고, 새롭게 등장한 Lambda@Edge 비용을 면밀히 검토하여 더 저렴한 CloudFront Functions로의 전환 가능성을 모색하는 것이 그 핵심입니다.


결국, 비용 최적화는 '그냥 사용'하는 것을 넘어 '지능적으로 사용'하는 것으로의 전환을 의미합니다. 데이터가 주는 통찰력을 활용해 문제의 원인을 정확히 파악하고, 간결하지만 구체적인 행동 계획을 수립한다면, CloudFront는 단순히 빠른 콘텐츠 전송을 넘어 진정한 비용 효율적인 솔루션으로 거듭날 것입니다. 이제 CloudFront는 더 이상 예측 불가능한 비용이 아니라, 관리하고 최적화할 수 있는 전략적 자산이 될 것입니다.

keyword
매거진의 이전글AWS CloudFront 비용 구조 완전 이해하기