클라우드 비용 폭탄을 막는 예산과 사용량 알림 설정
클라우드 비용은 서버 한 대의 월정액처럼 움직이지 않는다. 트래픽, 함수 실행 시간, DB 용량, 로그, 파일 전송, 실시간 연결이 각각 늘어난다. 작은 코드 실수나 공개된 API 키 하나가 짧은 시간에 사용량을 키울 수도 있다.
비용을 막는 첫 단계는 가장 싼 플랜을 찾는 것이 아니라, 예상 범위를 벗어났을 때 사람이 알아차리고 안전하게 행동하도록 만드는 것이다.
알림과 차단은 다르다
예산 알림은 대개 청구를 자동으로 멈추지 않는다. AWS Budgets는 실제 비용이나 예측 비용이 기준을 넘을 때 이메일, SNS, Chatbot 알림을 보낼 수 있고 별도의 budget action도 설정할 수 있다. 비용 데이터는 실시간이 아니며 AWS는 Budgets에 쓰는 청구 데이터가 적어도 하루 한 번 갱신된다고 안내한다. AWS Budgets 모범 사례
Vercel Pro의 Spend Management는 정한 금액에 도달하면 알림, webhook, 전체 프로젝트의 운영 배포 일시 정지를 선택할 수 있다. 금액만 설정하면 자동 정지되는 것이 아니므로 pause 옵션을 직접 켜야 한다. 50%, 75%, 100% 구간의 웹과 이메일 알림도 설정할 수 있다. Vercel Spend Management
자동 차단은 비용을 지키지만 업무도 멈출 수 있다. 사내 핵심 시스템은 전면 중지보다 파일 업로드, AI 처리, 대량 내보내기처럼 비용이 큰 부가 기능부터 제한하는 webhook 대응이 더 안전할 수 있다.
세 겹으로 설정한다
1. 총액 예산
조직 전체 월 예상액을 정하고, 절반, 주의 구간, 한도 구간에 알림을 둔다. 담당자 한 사람의 개인 메일이 아니라 운영 채널과 대체 담당자에게도 보낸다.
2. 서비스별 사용량
총액만 보면 원인을 찾는 데 늦는다. 다음 항목을 서비스별로 본다.
- Vercel: Fast Data Transfer, Edge Requests, 함수 실행 시간과 메모리
- Supabase: Compute, DB와 스토리지 크기, 전송량, 실시간 메시지와 연결
- R2 또는 S3: 저장량, 쓰기와 읽기 요청, 인터넷 전송량
- VPS: 인스턴스, 디스크, 스냅샷, 공인 IPv4, 초과 전송량
- 외부 API: AI 토큰, 이메일, 문자, 지도 호출
Vercel의 Usage 화면은 프로젝트와 리전별 사용량을 나눠 볼 수 있다. 어떤 지표가 증가했는지 정기적으로 확인해야 비용 원인을 기능과 연결할 수 있다. Vercel 사용량 관리
3. 비정상 증가 탐지
고정 예산은 한도를 넘은 뒤 알려 줄 수 있다. 평소보다 갑자기 증가한 항목도 감지한다. AWS Cost Anomaly Detection은 서비스별 비용 패턴에 적응하는 monitor와 알림 구독을 제공한다. AWS Cost Anomaly Detection
관리형 탐지가 없는 서비스는 하루 사용량을 수집해 지난 7일 평균과 비교하는 작은 작업부터 시작할 수 있다.
태그와 소유자가 있어야 원인을 찾는다
프로젝트, 환경, 팀, 비용 중심 태그를 통일한다. 운영과 시험 환경을 구분하고, 임시 자원에는 만료일을 붙인다. 사용하지 않는 preview 배포, 스냅샷, 디스크, 공인 IP가 계속 남으면 트래픽이 없어도 비용이 발생한다.
각 비용 항목에는 책임자를 둔다. 알림을 받은 사람이 권한이 없거나 어느 기능의 비용인지 모르면 대응이 늦어진다.
20명에서 100명까지의 운영 방식
20명
총액 예산, 플랫폼 기본 알림, 주 1회 사용량 확인으로 시작한다. 무료 한도에 의존하더라도 결제 수단 등록과 spend cap 상태를 확인한다.
50명
운영과 시험 환경을 분리해 예산을 본다. AI, 파일, 대량 작업에 사용자별 또는 조직별 사용 한도를 둔다. 비용 알림 webhook이 운영 채널에 사건을 만들도록 한다.
100명
서비스별 소유자와 월간 비용 검토를 둔다. 단위 비용도 본다. 직원 1명당, 문서 1건당, 활성 사용자 1명당 비용이 안정적인지 확인하면 성장에 따른 정상 증가와 낭비를 구분하기 쉽다.
알림을 받았을 때의 실행 순서
- 어느 서비스와 지표가 증가했는지 확인한다.
- 최근 배포, 공개 링크, 반복 작업, 공격 트래픽을 확인한다.
- 비용이 큰 비핵심 기능부터 제한한다.
- 유출된 키가 의심되면 즉시 폐기하고 교체한다.
- 사용량이 정상으로 돌아오는지 확인한다.
- 원인과 재발 방지 조치를 기록한다.
비용 관리는 월말 청구서를 보는 회계 작업이 아니다. 가용성과 보안처럼 이상 신호를 감지하고 대응하는 운영 업무다. 총액, 서비스별 사용량, 비정상 증가의 세 겹을 만들면 작은 팀도 예측 가능한 범위 안에서 클라우드를 사용할 수 있다.
함께 읽기
- VPC 하나가 정말 더 쌀까? 서버리스와 단일 서버의 비용 구조 비교Vercel에 앱을 올리고, Supabase에 데이터를 저장하고, Upstash Redis로 요청 제한을 걸고, QStash로 비동기 작업을 전달한다고 해보자. 서비스 이름만 네 개다. 이쯤 되면 자연스럽게 이런 생각이 든다.
- 사내 시스템 공개 전 확인해야 할 운영 체크리스트 30가지사내 시스템은 외부 고객 서비스보다 사용자가 적다는 이유로 공개 전 점검이 짧아지기 쉽다. 하지만 결재, 계약, 인사, 회계처럼 업무의 기준이 되는 시스템은 한 번의 권한 오류나 데이터 손실도 실제 업무 중단으로 이어진다.
- 듀오랩스가 사내 시스템을 설계하고 운영하는 7가지 원칙사내 시스템의 좋은 아키텍처는 가장 큰 서버나 가장 복잡한 기술 조합이 아니다. 현재 업무를 무리 없이 지원하고, 문제가 생겼을 때 되돌릴 수 있으며, 사용자가 늘면 필요한 부분만 확장할 수 있는 구조다.
- 월 10달러 VPS가 정말 더 저렴할까? 숨은 운영 비용 계산하기월 10달러 안팎의 VPS를 보면 Vercel, Supabase 같은 관리형 서비스를 합친 것보다 훨씬 저렴해 보인다. 실제로 안정적인 부하가 있고 서버를 운영할 사람이 있다면 VPS가 경제적일 수 있다. 하지만 인스턴스 가격만 비교하면 백업, 저장 공간, 전송량, 보안 패치, 장애 대응 시간이 빠진다.
- 배포가 실패해도 5분 안에 되돌리는 소규모 서비스 운영법빠른 롤백은 사람이 명령어를 빨리 입력하는 능력이 아니다. 이전 버전이 무엇인지 알고, 같은 산출물을 다시 실행할 수 있고, DB가 이전 코드와 호환되도록 미리 설계한 결과다. 준비 없이 배포한 뒤 5분 안에 되돌리겠다는 목표는 지키기 어렵다.