AWS 프리티어 요금 폭탄 방지! CloudWatch 결제 알람 가이드

 

"자고 일어났더니 AWS에서 10만 원이 결제됐어요!" 개발자 커뮤니티의 단골 괴담인 AWS 프리티어 요금 폭탄. 나도 모르게 새어나가는 숨은 과금 요소를 찾아내고, 1달러만 넘어도 즉시 알려주는 CloudWatch 결제 알람 설정법을 완벽 정리해 드립니다!

 

코딩 공부를 시작하거나 개인 사이트를 배포할 때, 누구나 한 번쯤 거쳐 가는 관문이 바로 AWS(아마존 웹 서비스) 프리티어입니다. 1년 동안 서버를 무료로 준다길래 신나서 가입하고 이것저것 클릭해 보던 기억, 다들 있으시죠? 저도 처음 AWS에 입문했을 때 "와, 아마존 진짜 혜자다!" 하면서 이것저것 막 눌러봤던 기억이 나네요.

그런데 문제는 그로부터 한두 달 뒤에 발생합니다. 갑자기 날아온 카드사 알림에 찍힌 'AWS $50.00 결제'... 솔직히 말해서 이때 심장이 철렁 내려앉는 기분, 안 당해본 사람은 모릅니다. "난 분명 무료라고 해서 썼는데 왜 돈이 나가지?!" 하고 억울해하지만, 알고 보면 우리가 프리티어의 '숨은 한도'를 넘겼기 때문이에요. 그래서 오늘은 여러분의 소중한 지갑을 지켜드리기 위해, AWS에서 나도 모르게 돈이 새는 주범들을 샅샅이 찾아내고, 요금이 단 1달러라도 발생하면 즉각 내 이메일로 경고를 보내주는 CloudWatch 결제 알림 설정법을 아주 쉽게 알려드릴게요. 이 글만 다 읽으시면 더 이상 월말마다 불안에 떨지 않으셔도 됩니다! 😊

 

따뜻한 지구 테라코타와 밝은 회색 팔레트를 사용한 친근하고 디테일한 3D 아이소메트릭 일러스트레이션입니다. 아늑한 데스크에 앉아 노트북으로 작업하는 여성 웹 개발자가 보입니다. 노트북 주변으로 빛나는 주황색 알림 벨이 떠 있으며, 반투명한 보호 방패가 떨어지는 동전과 달러 지폐를 막아내고 있습니다. 노트북 화면에는 녹색 체크 표시가 있는 단순한 대시보드가 표시되어 시스템 보안 상태를 보여줍니다. 데스크 위에는 다육이 식물, 'DEV INFRA'라고 적힌 머그컵, 마우스, 키보드가 놓여 있습니다. 배경으로는 벽돌 벽과 책장, 그리고 창밖의 도시 야경이 보입니다. 네온 사인이 'SECURE INFRA'라고 적혀 있습니다. 전체적으로 부드러운 주변 조명이 안전하고 전문적인 인프라 관리 메시지를 전달합니다.

1. AWS 프리티어, 진짜 '완전 무제한 무료'일까? 🤔

많은 분들이 가장 크게 오해하시는 부분부터 확실히 짚고 넘어갈게요. AWS 프리티어는 '무제한 무료 뷔페'가 아닙니다. 정확히 정해진 접시 수(한도)만큼만 무료로 제공하는 시식 코너에 가깝습니다.

예를 들어, 가장 많이 쓰는 EC2(가상 서버)의 경우 한 달에 750시간이 무료입니다. 한 달은 보통 720~744시간이므로 서버 1대를 한 달 내내 켜두는 것은 완벽하게 무료입니다. 하지만! 만약 서버를 2대 켜둔다면? 보름(375시간 × 2대 = 750시간) 만에 무료 한도를 다 써버리고, 남은 보름 동안은 고스란히 요금이 청구되는 식이죠. 그니까요, 규칙을 모르면 코 베이기 딱 좋은 시스템이랍니다.

💡 핵심 정보: YMYL (Your Money Your Life) 주의사항
클라우드 요금은 사용자의 트래픽과 설정에 따라 기하급수적으로 늘어날 수 있습니다. 본 포스팅의 가이드는 일반적인 방지책을 안내하지만, 최종적인 청구 내역 확인과 책임은 계정 소유자에게 있으므로 주기적으로 AWS Billing Dashboard를 직접 확인하는 습관을 들이는 것이 가장 안전합니다.

 

2. 통장을 텅장으로 만드는 숨은 과금 주범 Top 3 🕵️‍♂️

그렇다면 도대체 어디서 요금이 새어나가는 걸까요? 초보자들이 가장 많이 실수해서 요금 폭탄을 맞는 3대장을 표로 깔끔하게 정리해 봤습니다. 지금 당장 여러분의 AWS 콘솔에 들어가서 이 녀석들이 방치되어 있진 않은지 확인해 보세요!

과금 주범 원인 및 설명 해결책 (방어법)
탄력적 IP (Elastic IP) 고정 IP를 발급받아 놓고, 이를 실행 중인 서버(EC2)에 연결하지 않고 방치하면 요금이 부과됩니다. (IP 낭비를 막기 위한 AWS의 정책) 서버를 중지/삭제할 때는 반드시 할당받은 탄력적 IP도 같이 '릴리스(Release)' 처리하여 반납하세요.
EBS 볼륨 (디스크) 프리티어는 최대 30GB의 스토리지 용량만 제공합니다. 무심코 50GB를 할당하거나, EC2 인스턴스는 지웠는데 하드디스크(EBS)만 남겨둔 경우 과금됩니다. EC2 삭제 시 "인스턴스 종료 시 루트 볼륨 삭제" 옵션을 꼭 체크하세요.
데이터 전송 (Data Transfer) AWS로 들어오는 데이터(In)는 무료지만, 밖으로 나가는 데이터(Out)는 월 100GB까지만 무료입니다. 트래픽이 몰리면 초과 요금이 발생합니다. 이미지나 대용량 파일은 외부 CDN(Cloudflare 등)을 경유하게 하여 아웃바운드 트래픽을 줄이는 것이 필수입니다.
⚠️ 주의하세요! (NAT 게이트웨이)
프라이빗 서브넷 실습을 한답시고 'NAT 게이트웨이'를 생성해 두고 까먹는 분들이 많습니다. NAT 게이트웨이는 프리티어가 없으며 시간당 요금이 꽤 비싸니, 실습이 끝나면 즉시 삭제해야 합니다. 이거 켜뒀다가 5만 원 넘게 낸 분들 진짜 많이 봤어요!

 

3. 내 예상 청구서, 미리 계산해 볼까요? 🧮

"혹시 내가 실수로 서버를 하나 더 켜뒀다면 돈이 얼마나 나올까?" 궁금하신 분들을 위해 아주 간단한 가상 청구서 계산기를 만들어 보았습니다. 프리티어 초과 시 대략적인 요금을 체감해 보세요.

🔢 무단 방치 자원 요금 시뮬레이터

실수로 방치해 둔 자원의 수량을 입력해 보세요. (대략적인 월별 청구액을 달러 단위로 보여줍니다)

(개당 약 $3.6/월)
(GB당 약 $0.08/월)
(개당 약 $43.2/월)

 

4. 요금 폭탄 완벽 방어! CloudWatch 결제 알람 설정법 🚨

자, 이제 가장 중요한 예방 백신을 맞을 차례입니다. 우리가 매일매일 AWS에 들어가서 요금을 확인할 순 없잖아요? 그래서 요금이 '단돈 $1'이라도 발생할 기미가 보이면, 즉시 이메일로 알림을 쏴주는 결제 경보 시스템을 만들어 두어야 합니다.

🛠️ 1단계: 결제 알림 기능 켜기

1. AWS 콘솔 우측 상단 내 아이디 클릭 > [결제 대시보드(Billing)]로 이동합니다.

2. 좌측 메뉴에서 [결제 기본 설정(Billing Preferences)]을 클릭합니다.

3. 알림 기본 설정 섹션에서 [결제 알림 받기(Receive Billing Alerts)]에 체크하고 저장합니다.

🚨 2단계: CloudWatch에서 경보 만들기

1. AWS 검색창에 CloudWatch를 검색해서 들어갑니다. (지역(Region)이 '미국 동부(N. Virginia)'로 되어 있어야 결제 지표가 보입니다! 매우 중요 ⭐)

2. 좌측 메뉴에서 [경보(Alarms)] > [모든 경보] 클릭 후 [경보 생성] 버튼을 누릅니다.

3. 지표 선택: [결제(Billing)] > [예상 청구액 총계]를 선택하고 지표를 추가합니다.

4. 조건 설정: 임계값 유형은 '정적', 조건은 '보다 크거나 같음(>=)'으로 두고, 임계값을 1 (즉, $1)로 설정합니다.

5. 작업 구성: 새 SNS 주제(Topic) 생성을 선택하고, 알림을 받을 본인의 이메일 주소를 적어줍니다.

6. 마지막으로 본인 이메일로 날아온 확인 메일에서 'Confirm subscription'을 눌러주면 끝입니다!

이 설정 하나만 해두면, 나도 모르게 프리티어 한도를 넘겨서 과금이 시작되려고 할 때 이메일이 옵니다. 메일을 받자마자 바로 들어가서 원인이 되는 서버를 끄면 요금 폭탄을 완벽하게 피할 수 있답니다. 정말 마음이 편안해지죠? 그니까 귀찮더라도 이건 가입하자마자 무조건 세팅하셔야 해요!

핵심 요약 카드 📝

🛡️

AWS 요금 폭탄 방어 매뉴얼

1. 함정 피하기: 사용하지 않는 탄력적 IP(EIP) 반납과 EC2 삭제 시 EBS 볼륨 동시 삭제는 필수입니다.
2. 알림 권한 켜기: 결제 대시보드 환경 설정에서 '결제 알림 받기' 체크 박스를 활성화하세요.
3. 경보 세팅: CloudWatch(버지니아 북부 리전)에서
지표: 예상 청구액 총계 >= $1
조건으로 이메일 수신 SNS 구독을 생성하세요.
4. 실천하기: 메일을 꼭 'Confirm' 눌러 인증해야 알림이 옵니다!

 

자주 묻는 질문 ❓

Q: 이미 요금 폭탄을 맞았어요. 환불받을 수 있는 방법은 없나요?
A: 처음 한 번 발생한 실수(단순 실수로 인한 프리티어 초과)라면 AWS Support(고객 센터)에 영어로 간곡하게 사정을 설명하는 티켓을 남겨보세요. AWS는 초보자의 실수에 꽤 관대한 편이라 1회에 한하여 청구액을 면제해 주는 경우가 매우 많습니다. 포기하지 말고 시도해 보세요!
Q: CloudWatch 지표에 '예상 청구액(EstimatedCharges)'이 안 보여요!
A: 두 가지를 확인해야 합니다. 첫째, 결제 대시보드에서 '결제 알림 받기'를 체크한 뒤 활성화될 때까지 약 15~30분 정도 걸릴 수 있습니다. 둘째, 우측 상단의 지역(Region) 설정이 반드시 미국 동부(버지니아 북부, us-east-1)로 되어 있는지 확인하세요. 청구 관련 지표는 이 리전에서만 수집됩니다.
Q: 알람을 $1로 설정하면 프리티어 무료 한도를 넘자마자 바로 알려주나요?
A: 네, 맞습니다. 무료 한도를 초과하여 요금이 발생하는 순간 $0.01 단위로 지표가 상승하기 때문에, $1 언저리에 도달하면 설정해 둔 이메일로 경고가 발송됩니다. 넉넉하게 방어하고 싶다면 임계값을 $0.5 로 설정하셔도 됩니다.

서버 만지는 건 늘 조심스럽고 때론 무섭기도 하죠? 하지만 오늘 배운 대로 든든한 알람망을 구축해 두셨다면 이제 마음 푹 놓고 AWS의 다양한 기능들을 마음껏 실습해 보셔도 좋습니다. 나만의 멋진 서비스를 배포하는 그날까지 응원할게요! 더 궁금한 점이 있다면 언제든 편하게 댓글로 물어봐 주세요~ 😊