AWS를 쓰지 않은 지 꽤 됐다. 지금 굴리는 것들은 대부분 Cloudflare로 옮겼다. AWS 계정은 예전 삶의 마지막 잔재다.
그런데 그 뒤로도 매달 얼마씩 빠져나갔다. 이번 달은 1.89달러. 3년 동안 알아볼 생각이 안 들 만큼 작은 금액이었다. 이번 달에야 원인을 끝까지 파보기로 하고 콘솔에 로그인했다.
그러고 나서 왜 떠났는지 기억났다.
찾기가 곧 포기다
AWS 콘솔은 형편없게 설계돼 있다. 종료하거나 삭제할 대상을 찾으려면 진짜 수고가 든다. 드롭다운과 점 세 개 메뉴 아래 여러 층으로 흩어져 있고, 정작 필요한 클릭은 생각하지 못한 자리에 있다.
이렇게 반문할 수 있다. “삭제가 쉬우면 사람들이 실수로 프로덕션을 날리잖아.” 그 이유가 아니다. 콘솔은 뭘 하나 지울 때마다 “delete”를 직접 타이핑하게 시킨다. 파괴를 의도적으로 만드는 법은 정확히 알고 있다. 이 마찰은 나를 보호하려고 깔린 게 아니다. 내가 확인 창 근처에도 못 가게, 내비게이션 단계에 깔려 있다.
그리고 리전을 정확히 맞춰야 한다. us-west-2에 있는 리소스는 검색창을 아무리 노려봐도 us-east-1에 없다. 어떤 서비스는 더 심하다. 순서가 있다. 로드밸런서를 먼저 종료하고 인스턴스는 나중에 지워야 한다. Elastic Beanstalk 환경을 먼저 허물지 않고 그게 만든 리소스를 지우면, 다시 만들어놓는다. AWS 자기 문서가 이 순서를 아무렇지 않게 설명해 놓았다.
내 1.89달러의 정체

청구서다. CloudTrail 0.00달러. AWS Key Management Service 1.00달러. Glue 0.00달러. Data Transfer 0.00달러. 항목별 세부 내역을 다 더하면 1달러다. 청구서는 1.89달러를 내라고 한다. 나머지 89센트는 그 페이지 어디에도 항목으로 없다. 다른 데 줄이 있는 건지, 페이지가 안 맞는 건지 — 어쨌든 AWS가 보내준 청구서로 내 청구서를 설명할 수가 없다.
중요한 건 KMS 줄이다. 키 하나당 월 1달러, 시간 단위로 쪼개서 부과되고, 내 계정에서 그 키를 쓰든 안 쓰든 상관없다. 청구 금액 전체가 이거다. 몇 년 전에 한 번 만들고 지금은 아무것도 돌지 않는 무언가를 위해 만든 키. 세상 끝날 때까지 나를 청구한다.
KMS만 그런 게 아니다. 존재 자체로 과금되는 리소스 명단이 따로 있다.
- KMS 키 — 키당 월 1달러. 만들고 잊으면 영원히 낸다.
- Secrets Manager — 시크릿당 월 0.40달러. 정액이고, 볼륨 할인도, 안 쓴다고 빼주는 것도 없다.
- 퍼블릭 IPv4 주소 — 시간당 0.005달러, 월 약 3.60달러. 2024년 2월부터는 무언가에 붙어 있든 아니든 같은 요율이 적용된다. 애초에 붙이지도 않은 주소는 그 전부터 이미 과금이었다.
- 헬시 타깃이 없는 로드밸런서 — 아무것도 서비스하지 않고 앉아 있는 값이 월 16달러쯤.
- EBS 볼륨, 스냅샷, NAT 게이트웨이, 중지된 RDS 인스턴스 — 컴퓨팅은 멈춰도 청구서는 멈추지 않는다.
AWS는 자기 문서에 자백을 인쇄해 놓았다. 프리 티어 페이지에는 이렇게 쓴다. “계정에 정기적으로 로그인하지 않더라도, 실행 중인 리소스가 있을 수 있습니다.” 예상치 못한 요금 페이지에는 이렇게 쓴다. “계정을 닫거나 서비스 구독을 해지했다면, AWS 리소스를 할당한 모든 리전에서 적절한 조치를 취했는지 확인하십시오.”
두 번째 문장이 바로 이 설계다. 리소스는 기본값으로 영원히 과금된다. 멈추려면 여러 단계에, 리전마다, 순서까지 맞춘 해체 작업이 필요하다. 단계마다 조용히 실패할 자리가 있고, 실패하면 한 달치 매출이 더 쌓인다.
AWS가 돌리는 산수
소액 징수는 소수점 반대편에서 보면 초라해 보일 뿐이다. AWS를 떠나면서 뭔가를 남겨둔 사용자가 100만 명이고, 각자에게서 월 2달러를 받아낸다고 하자. 월 200만 달러다. 제품을 쓰지 않는 사람들이 만들어주는 연 2,400만 달러.
AWS는 2026년 2분기에 연환산 매출 런레이트 1,690억 달러를 보고했다. 2,400만 달러는 그 0.014%다. 각주 한 줄의 반올림 오차 수준이다. 그게 핵심이다. 이 금액은 AWS 직원 누구도 해체 흐름을 고칠 만큼 크지 않고, 내가 지원 티켓을 열 만큼 크지도 않다. 싸우는 것보다 내는 게 싸다. 그리고 모이면 진짜 돈이다. 내 계정 같은 게 부족할 리 없다.
계정을 닫아도 깔끔한 퇴장은 아니다. 그 달 쓴 만큼의 최종 청구서는 여전히 온다. 마켓플레이스 구독은 계정 폐쇄로 자동 해지되지 않는다. 먼저 직접 종료해야 한다. 계정에 남아 있던 서비스는 계정을 다시 열면 과금이 재개된다.
2달러는 내가 나서기 시작하는 선 아래에 있고, 마찰은 그 선 위에 있다. 이건 거대한 제품이 어쩌다 이렇게 된 결과가 아니다. 가격 설계다.
“그냥 지우면 되잖아”
지울 수 있다. 그게 정직한 답이고, 이게 사기가 아니라 전략인 이유다. 다만 귀찮기가 딱 사람들이 안 하게 되는 지점에 맞춰져 있다.
내 경우에 결국 통한 방법: Cost Explorer에서 서비스별로 묶고, 다시 리전별로 묶고, 손댄 적 있는 모든 리전에서 리소스를 하나씩 해체했다. Resource Explorer는 어떤 리전이 남은 걸 숨겼는지 추측하지 않아도 되게 찾아준다. 무엇을 찾아야 하는지 이미 아는 사람이라면 CLI가 전부 제대로 해준다.
애초에 문을 열어두지 않는 게 이기는 수다. AWS를 끝낼 거라면 진짜로 끝내라. 순서에 맞게 종료하고, 모든 리전을 훑고, 계정을 닫아라.
결론
1.89달러는 아무것도 아니다. 매달 2달러 나간다고 이 글을 쓰는 게 아니다. 3년 동안 알아보지 않은 것이 바로 의도된 결과였다는 얘기를 하려고 쓴다. 이건 고장 난 콘솔이 아니라, 그 뒤에 있는 비즈니스를 위해 정확히 설계대로 작동하는 콘솔이다. 인터페이스가 나쁜 게 아니다. 나와 다른 사용자, 즉 돈을 내는 쪽에 맞춰 최적화돼 있을 뿐이다.