우당탕탕
AWS Lambda 비용 없이 사용하는 방법, 저도 직접 해보고 정리했어요 본문
AWS Lambda를 실제 프로젝트에 도입하다가 비용 문제 때문에 막혔던 적이 있었어요. 이걸 비용 걱정 없이 써보려고 이것저것 세팅하다 보니, 생각보다 복잡한 부분이 많더라고요.
이 글에서는 무료 티어 범위 내에서 Lambda를 어떻게 세팅하는지, 비용 절감 팁과 제가 겪은 어려움, 그리고 직접 쓴 명령어 예시까지 모두 담았어요. AWS Lambda 비용 걱정 없이 시작하고 싶은 분들은 끝까지 읽어보세요.
저의 개발 환경과 설정 버전
이 글은 AWS CLI v2를 사용했고, Lambda 함수는 Node.js 18.x 런타임 환경에서 작성했어요. AWS 무료 티어 조건을 기준으로 설명드립니다.
무료 이용 범위 안에서 Lambda 사용 이렇게 하면 됩니다
사실 AWS Lambda에는 매월 100만 건의 무료 요청과 400,000GB-초의 컴퓨팅 시간이 무료로 제공돼서, 적당히 쓰면 비용이 거의 안 나거든요. 그래서 저는 요청 수와 함수 실행 시간을 최대한 줄이는 쪽으로 세팅했어요.
// Lambda 함수 생성 명령어 - 최대한 최소 메모리 설정
aws lambda create-function \
--function-name MyFreeLambda \
--runtime nodejs18.x \
--role arn:aws:iam::123456789012:role/lambda-ex \
--handler index.handler \
--zip-file fileb://function.zip \
--memory-size 128 \
--timeout 3
// 메모리 사이즈를 128MB로 설정해 비용과 실행 시간을 줄임
// 타임아웃은 3초로 최소한으로 잡음
여기서 --memory-size 128와 --timeout 3 설정이 핵심이에요. 메모리를 낮추면 GB-초 계산 비용이 줄고, 타임아웃을 짧게 하면 실행 시간이 초과로 길어지는 걸 막을 수 있거든요.
저도 이 부분에서 삽질했어요, IAM 권한 문제
처음에 함수가 실행이 안 되길래 로그를 찾아보니 권한 에러였어요. Lambda가 S3나 다른 리소스 접근 권한이 없으면 실패하더라고요. 그래서 최소 권한 정책을 직접 만들어서 붙였는데, 아래처럼 했죠.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents"],
"Resource": "arn:aws:logs:*:*:*"
}
]
}
// Lambda가 CloudWatch 로그에 기록할 수 있게 하는 최소 권한
이걸 안 했으면 로그조차 못 봐서 문제 원인을 못 찾았을 거예요. IAM 역할 적용은 정말 꼼꼼하게 하셔야 합니다.
실제로 비용 확인하는 방법, 저는 이렇게 했어요
AWS 콘솔에서 비용 관리 > 비용 탐색기(Cost Explorer)를 쓰면 됩니다. 근데 실시간이 아니라 하루 정도 딜레이가 있으니까, 저는 CLI로 lambda 호출 수를 모니터링하면서 무료 범위 넘지 않도록 조절했어요.
# 최근 7일간 Lambda 요청 수 확인
aws cloudwatch get-metric-statistics \
--namespace AWS/Lambda \
--metric-name Invocations \
--dimensions Name=FunctionName,Value=MyFreeLambda \
--start-time $(date -u -d '7 days ago' +%Y-%m-%dT%H:%M:%SZ) \
--end-time $(date -u +%Y-%m-%dT%H:%M:%SZ) \
--period 86400 \
--statistics Sum
// 하루 단위 호출 수 합계를 확인해서 무료 100만 건 넘지 않는지 체크
조금 더 심화, 무료 범위 넘었을 때 대처법도 알려드려요
무료 범위를 넘기 시작하면 비용이 붙는데, 그때는 CloudWatch 이벤트로 Lambda 호출을 감시하거나, 호출 자체를 온디맨드에서 예약 실행으로 바꾸는 방법도 있어요. 그리고 꼭 필요한 기능만 Lambda로 돌리고 나머지는 API Gateway 캐싱이나 S3 정적 호스팅 같은 비용 없는 대안으로 분산시키는 방법도 쓸 수 있고요.
자주 물어보시는 분들 질문에 답변해 봤어요
Q. Lambda 함수 메모리를 128MB보다 낮출 수 있나요?
A. 아쉽게도 AWS Lambda에서 128MB가 최소 메모리 크기입니다. 그래서 비용 절감은 메모리를 줄이기보다는 함수 실행 시간 단축 위주로 하셔야 해요.
Q. Lambda 호출이 적으면 무료 확실히 안 나오나요?
A. 호출 수만 적어도, 함수가 오래 실행되면 GB-초가 쌓여 비용이 발생할 수 있어요. 그래서 항상 실행 시간과 메모리 설정을 같이 고려하셔야 합니다.
한번 비용 걱정 없이 Lambda를 시작하고 나니까 다음 프로젝트에도 자신감이 생기더라고요. Lambda 무료 티어를 최대한 활용하는 세팅법과 모니터링 방법, IAM 권한 문제까지 정리했으니 이 글만 읽으면 비용 걱정 없이 바로 시작할 수 있을 거예요.
'Tech > AWS' 카테고리의 다른 글
| AWS Lambda 비용 없이 사용하는 방법, 직접 세팅하며 겪은 삽질과 해결법 (0) | 2026.05.25 |
|---|---|
| AWS EC2 프리티어 서버 처음 만들면서 겪은 삽질과 단계별 설정법 (0) | 2026.05.23 |
| AWS 비용 예상치 못하게 나왔을 때 원인 찾는 법, 제가 직접 겪은 사례로 풀어봤어요 (1) | 2026.05.23 |
| AWS S3 정적 웹사이트 호스팅에 CloudFront 연결하면서 겪은 삽질과 해결법 (0) | 2026.05.18 |
| AWS Lambda 비용 없이 사용하는 방법, 직접 세팅하며 겪은 삽질과 해결 (0) | 2026.05.17 |
