AWS를 처음 접하게 되면 요금 정책을 일일히 알아보기가 쉽지 않다.
주로 사용하는 리소스들에 대한 소개와 요금 정책을 한페이지로 정리하였다. 리전마다 정책이 다르므로 실제로 어느정도 요금이 나올지는 AWS에서 제공하는 요금 계산기 기능을 추천한다.
AWS 요금 계산기 : https://calculator.aws/#/
EC2
AWS에서 제공하는 VM 서버. 서버사양마다 가격이 다르다. 개인 블로그 용도라면 t2.micro 로도 충분하고, 프리티어도 제공되므로 굳이 고사양의 서버를 사용할 필요가 없다. 어플리케이션의 서버라면 각 시스템의 성능을 고려하여 사양을 결정한다. 사양 변경은 EC2 stop 처리후 가능하고, 변경 자체에 대한 비용은 들지 않으므로 저사양부터 시작하여 사양을 올려봐도 된다.
EC2 유형을 간단히 설명하면 온디맨드는 필요할때 바로바로 만들어서 쓰는 경우이다. 일반적으로 다 온디맨드라고 보면 된다. 스팟은 언제든 사라질 수 있는 EC2 지만 테스트용도로 잠깐 쓰기에는 좋다. 비용이 온디맨드보다 저렴하다. 예약 인스턴스는 기간을 약정하여 사용한다. 1년간 EC2를 24시간 내내 쓴다고 하면 예약 인스턴스가 더 저렴하다. 하지만 중간에 사용하지 않는 기간이 있을 경우 EC2를 내리면 되므로 이런 경우에는 온디맨드나 스팟을 쓰는게 낫다.
유형 | 요금 정책 |
온디맨드 | – 장기약정 없이 컴퓨팅 파워에 대해 시간당 또는 초당(최소60초) 비용 지불 – EC2 유형에 따라 요금 다름 |
스팟 | – 인스턴스가 실행되는 기간에 따라 요금 지불 – amazon ec2에서 요금 정하고 공급에 따라 조정 – 온디맨드에 비해 최대 90프로까지 할인 가능. 한시간 단위로 (최대6시간까지) 30~50프로 할인가 |
https://aws.amazon.com/ko/ec2/pricing/
RDS
AWS 에서 제공하는 DB 서비스이다. postgreSQL, MSSQL 등의 엔진을 탑재한 RDS도 있고, AWS 자체적으로 제공하는 Aurora 도 사용 가능하다. EC2에 DB를 직접 올려서 사용하는 것보단 비싸지만, 비용에 좀 여유가 있다면 충분히 사용할 만 하다. 일단 AWS에서 좀 관리해주는 부분이 있어서 굉장히 편하고 multi az에 클러스터링 되어 가용성을 고려하지 않아도 된다. 하지만 EC2 보다는 많이…비싸니까 꼭 도입 전에 비용을 확인할 것을 추천한다.
EC2와 마찬가지로 온디맨드 유형과 예약 유형이 있다. 시스템의 상황에 맞게 결정하면 되겠다.
가용영역(AZ)가 달라지면 EC2와 RDS 간 데이터 전송에 요금이 발생하므로 AZ는 가급적 한 곳을 주로 사용할 것을 추천한다.
요금 발생 유형 | 요금 정책 |
온디맨드 | 인스턴스에서 실행한 컴퓨팅 파워에 대해서 시간당 요금 지불 |
예약 | 온디맨드보다 저렴. 1년~3년 약정 기간에 DB 인스턴스 예약 |
DB Storage | 범용(SSD) 스토리지 : 프로비저닝한 스토리지에 대해 요금 청구 (I/O는 요금 청구 없음) 프로비저닝 IOPS(SSD) 스토리지 : DB에 필요한 I/O 용량을 지정하거나 프로비저닝 가능. 프로비저닝한 처리량 및 스토리지에 대해 비용 청구(I/O 요금청구 없음) |
백업 스토리지 | 리전별로 할당. 리전 전체 데이터베이스 스토리지의 최대 100프로에 해당하는 백업 스토리지는 추가비용 없음 DB 인스턴스 종료 후에 백업스토리지에 월별 GiB당 요금청구 추가 백업 스토리지에는 월발 GiB당 요금 청구 |
스냅샷 내보내기 | 스냅샷 용량에 따라 요금 지불. 동일한 스냅샷에서 추가로 데이터 내보내는건 요금 없음. RDS내에서 데이터 내보내거나 S3로 내보냄 |
데이터 전송 | 동일한 가용 영역에서 Amazon RDS와 Amazon EC2 인스턴스 간에 전송된 데이터는 무료 같은 리전의 서로 다른 가용 영역에서 Amazon EC2 인스턴스와 Amazon RDS DB 인스턴스 간에 전송된 데이터의 경우, 양쪽 모두에 Amazon EC2 리전 데이터 전송 요금이 청구 |
https://aws.amazon.com/ko/rds/pricing/
VPC
vpc, subnet 모두 AWS 위에 인프라를 만드려면 필수로 만들어야 하는 부분이다. 비용적인 측면을 고려하자면 자체적인 요금은 전혀 없다.
VPC와 관련되서는 NAT GW 사용료가 있다. EC2를 인터넷에 열려 있지 않은 private subnet에 만들게 될수도 있는데 그럼 NAT GW를 public subnet에 만들어 트래픽이 나갈수 있게 해주어야 한다. 이때 데이터 처리 요금이 발생한다.
유형 | 정책 |
NAT 게이트웨이 | NAT 게이트웨이 시간당 요금 데이터 처리요금 – NAT 게이트웨이를 통해 처리된 각 기가바이트에 적용. 표준 AWS 데이터 전송 요금도 발생 |
https://aws.amazon.com/ko/vpc/pricing/
ELB(Load Balancer)
Load Balancer 기능으로 L4(포트기반)이나 L7(어플리케이션 레벨)의 LB를 선택할 수 있다. 라우팅 룰도 round robbin 혹은 트래픽이 적은 쪽 LB 등으로 결정할 수 있다. LB 종류로는 Classic LB(CLB), Network LB(NLB), Application LB(ALB), Gateway LB(GLB)가 있는데 CLB는 예전에 생성된 LB로 사용하지 않을 것을 추천한다. port 기반 라우팅이거나 고정IP가 필요한 LB의 경우 NLB, path 기반이거나 SSL 통신이 필요한 경우 ALB를 사용한다.
NLB는 고정 IP를 사용할 수 있고 지정된 IP로 multi az 구성가능하다. ALB는 유동 IP로 트래픽이 늘어나게 될 경우 AWS 에서 자체적으로 LB를 auto-scale 처리한다. 역시 multi AZ 구성 가능하다.
유형 | 정책 |
CLB | 실행된 각 시간 또는 한 시간 미만, 그리고 로드 밸런서를 통해 전송된 각 GB 단위 데이터에 대해 비용이 청구 |
NLB | 실행된 시간 또는 부분 시간 그리고 시간당 Network Load Balancer에서 사용된 로드 밸런서 용량 단위(LCU)에 대해 요금이 부과 |
ALB | 실행된 시간 또는 부분 시간 그리고 시간당 사용된 로드 밸런서 용량 단위(LCU)에 대해 요금이 부과 |
https://aws.amazon.com/ko/elasticloadbalancing/pricing/
EIP
고정 IP 기능으로 NLB나 EC2 에 고정 IP를 할당할 수 있다. 주의해야 할 사항은 EIP가 어딘가에 연결이 되어 있으면 요금발생이 없지만, 연결되지 않은 EIP에 대해서는 요금이 발생하므로 사용하지 않는 EIP는 삭제 처리한다.
유형 | 정책 |
EIP | 무료 EIP가 EC2 인스턴스에 연결되었고, 연결된 인스턴스가 실행중임. 인스턴스에 연결된 EIP가 하나뿐임 그외 경우는 유료 |
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html#eip-pricing
S3
object storage 이다. 사용한 만큼만 요금을 지불한다. 요금 자체가 저렴한 편이라서 로그 등을 저장해두는 용도로 많이 사용한다. S3에도 등급이 있는데 일반적으로는 Standard 등급을 사용하게 된다. 특이한 건 Glacier 라는 장기 보관용 등급의 경우 storage 저장 비용은 정말 저렴하지만 데이터를 꺼낼때 요금이 굉장히 세다. 그러므로 이건 거의 안쓰는데 혹시 몰라서 보관한다의 의미일때 그레이셔 등급에 저장한다.
동일한 리전의 EC2와는 데이터 전송 요금이 발생하지 않으므로 S3와 EC2의 리전은 동일하게 설계한다.
유형 | 정책 |
스토리지 요금 | 객체 저장 비용(객체크기, 해당 월에 객체 저장한 기간, 스토리지 클래스에 따라 다름) |
요청 및 데이터 검색 | GET, LIST 및 기타 요청에 대한 비용 발생(DELETE 및 CANCEL 요청은 무료) |
데이터 전송 | 특정 케이스를 제외하고 모든 송수신 대역폭에 대해 요금 지불 인터넷에서 전송된 데이터, 동일한 리전의 EC2 인스턴스로 전송된 데이터, CloudFront로 전송된 데이터 |
https://aws.amazon.com/ko/s3/pricing/
IAM
계정 관리를 위한 서비스이다. User(Group)을 관리하기도 하고 AWS 서비스들을 위한 Role을 관리하기도 한다. Policy를 관리해서 User(Group)나 Role에 바인딩 한다. 주의사항은 어드민 계정의 관리를 잘 못하면 채굴등의 목적으로 해킹당해 요금 폭탄을 맞게 될 수도 있으니 가급적 MFA 인증(2 factor 인증)을 사용하고 access key와 secret key는 발급에 주의하며 발급시 주기적으로 교체해주는것이 좋다.
유형 | 정책 |
IAM | 비용 없음. 사용자가 사용한 다른 AWS 서비스에 대해서만 요금 부과 |
https://aws.amazon.com/ko/iam/
Route 53
도메인 등록을 위한 DNS 서비스이다. 도메인 등록(도메인별 비용 상이. 1년 단위 등록) 후 동일한 이름으로 호스팅 영역을 등록한다. 호스팅 영역에 대해 필요한 만큼 레코드를 등록하여 사용할 수 있다. 도메인 등록시 평균 1일 최대 3일 소요된다.
유형 | 정책 |
호스팅 영역 관리 | 호스팅 영역에 대한 월별 요금 지불(25개까지 영역당 $ 0.5. 추가부터 영역당 $0.1) |
DNS 쿼리 제공 | ELB, CloudFront, Elastic Beanstalk, API Gateway, Alia A 레코드를 제외하고 요금 부과(비례할당) |
도메인 이름 관리 | TLD별로 요금 다름. 1년 단위로 등록. 계정당 최대 50개까지 등록 가능 |
https://aws.amazon.com/ko/route53/pricing/
Cloud Trail
감사기능(Audit log)으로 사용자나 aws 리소스가 90일 이내 활동한 내역을 확인할 수 있다. 로그를 S3에 저장하여 Cloud watch에 이상 이벤트 발생시 알람 오도록 설정할 수 있다.누가 내 계정을 마음대로 사용한 경우 여기서 로그를 확인한다.
지원되는 AWS 서비스의 모든 관리 이벤트에 대한 지난 90일간의 계정 활동을 무료로 보고 필터링하고 다운로드 가능
CloudTrail Trail이 설정되면 Amazon S3 요금이 사용량에 따라 적용
유형 | 정책 |
관리 이벤트 | 관리 이벤트의 첫번째 사본은 무료로 전송. 추가 사본에는 이벤트 십만건당 $2 요금 부과 |
데이터 이벤트 | Amazon S3 객체 수준 API 및 Lambda 함수 Invoke API와 같은 작업을 포함. 이벤트 10만건당 $ 0.1 부과 |
https://aws.amazon.com/ko/cloudtrail/pricing/
Cloud Watch
모니터링 및 알람을 보낼 수 있는 서비스이다. EC2 및 RDS 등 AWS 의 모든 리소스에 대해 모니터링할 수 있다.
사용한 만큼만 요금을 지불한다.
유형 | 정책 |
지표 | 모든 사용자 지정 지표 요금은 시간당 책정. CloudWatch에 지표를 전송하는 경우에만 계산 |
대시보드 | 월별 대시보드당 $ 3 |
경보 | 3개 경보지표 따라 요금 부과 |
로그 | 수신요금은 부과 안됨. 송신 요금은 EC2 송신 요금과 동일하게 부과 |
이벤트 | 이벤트 1백만개당 부과 |
카나리아 | 카나리아 실행당 $ 0.0012 |
https://aws.amazon.com/ko/cloudwatch/pricing/
CodeCommit
AWS내에서 제공하는 git 코드 관리 서비스이다.
유형 | 정책 |
CodeCommit | 매달 무료로(제한 범위 내에서) 5명의 활성 사용자를 보유할 수 있으며, 그 후에는 매달 추가되는 활성 사용자 1명당 1.00 USD를 지불 |
'AWS' 카테고리의 다른 글
S3 public 열지 않고 public 처럼 사용하기(pre-signed url 발행) (0) | 2023.01.03 |
---|---|
EC2에서 access key 없이 role 활용하여 사용하기(Java aws sdk credential) (0) | 2023.01.03 |
EC2에 SSH Key 없이 Session Manager 활용하여 접속하기 (0) | 2023.01.03 |
Cloud watch에서 EC2 메모리 모니터링 (0) | 2023.01.03 |
[도서리뷰] 배워서 바로 쓰는 14가지 AWS 구축 패턴 (0) | 2020.07.24 |