...
EC2 4가지 가격 모델
AWS EC2 인스턴스에 대한 요금을 지불하는 방법에는 온 디맨드 인스턴스, 예약 인스턴스, 스팟 인스턴스 및 전용 호스트의 네 가지 방법이 존재한다.
이렇게 가격 모델을 나눈 이뉴는 일종의 마케팅 전략이라고 보면 된다.
대신 소비자 입장에서도 더욱 저렴하게 필요할때만 쓸수 있어 사용량 요금을 절약할 수 있으니, 클라우드를 사용한다고 마음을 먹었다면, aws 가격정책 모델에 대해서 이해는 필수이라고 봐도 된다.
AWS EC2 요금제 지불하는 방식이 AWS 공식사이트에도 명시되어 있지만, 보다 명확하면서도 이해되기 쉽게 재정리 해본다.
온 디멘드 (On-Demand Pricing)
온 디맨드 인스턴스를 사용하면 실행하는 인스턴스에 따라 시간당 또는 초당 컴퓨팅 용량을 지불하게 된다.
이를 수요에 반응한다고 말하는데, 그냥 쓴만큼 낸다라고 이해하면 된다.
가장 기본적인 초보용 요금제이며, 장기 약정 없이 시간 단위로 인스턴스를 사용하기 때문에 보편적으로 가장 많이 선택하는 요금제이며, 인스턴스 생성 시에 과금이 시작되고 종료(반납)을 하면 정산되는 방식이다.
애플리케이션 요구 사항을 충족하기 위해 컴퓨팅 용량을 늘리거나 줄일 수 있으며 사용하는 인스턴스에 대해 지정된 시간당 요금 만 지불하면 된다.
- 레드햇 같은 오픈소스가 아닌 인스턴스 - 시간당 지불
- 아마존 리눅스, 오픈소스 기반 - 초당 지불
온 디멘드 이용 고객
권장되는 소비자층은 다음과 같다.
- 선불 결제 또는 장기 약정없이 Amazon EC2의 저렴한 비용과 유연성을 선호하는 사용자
- 중단 할 수 없는 단기, 예측할 수 없는 워크로드가 있는 애플리케이션
- Amazon EC2에서 처음으로 개발 또는 테스트중인 애플리케이션
예약 인스턴스 (Resserved Instance - RI Pricing)
미리 일정 기간(1년 ~ 3년)을 약정해서 쓰는 방식이다. 즉, 선납금을 납부하는 방식이다.
최대 75% 정도 저렴하다. 당연히 온디멘드의 쓴만큼 내는 유연성을 희생해서 할인을 받는 격으로 생각하면 된다.
예약 인스턴스를 특정 가용 영역에 지정하면 용량 예약이 제공되므로 필요할 때 예약한 인스턴스를 시작할 수 있다.
예를들어 만일 회사가 수요일날 특히 서버자원을 많이 쓴다면 수요일은 자원을 늘려야 한다. 그러면 예약 인스턴스를 수요일날 늘리게끔 설정을 하면 돈을 아낄 수 있는 원리이다.
즉, 예측 가능한 사용량이 있는 애플리케이션의 경우 예약 인스턴스는 온 디맨드 인스턴스와 비교하여 상당한 비용을 절감 할 수 있는 것이다.
몇년동안 얼만큼 사용 예정 계획이 확실할때 사용하면 좋은 요금제이다.
일정 규모의 인스턴스를 항상 사용하기 떄문에 주로 큰 기업들이 이용하는 편이다.
예약 인스턴스 이용 고객
- 수요가 꾸준한 애플리케이션
- 예약 용량이 필요할 수 있는 애플리케이션
- 총 컴퓨팅 비용을 절감하기 위해 1년 또는 3년 동안 EC2를 사용하기로 약정할 수 있는 고객
스팟 인스턴스 (Spot Instances Pricing)
스팟 인스턴스는 경매 형식으로 시장에 남는 인스턴스를 구매해서 쓰는 방식인 요금제이다.
이게 무슨 소리냐 하면은, aws에서는 항상 인스턴스를 빵빵하게 확보해 놓고 있는데, 사람들이 안쓰면 손해이기 때문에 aws 입장에서는 재고가 남은 인스턴스들을 소비 하기위해서 남은 것들을 저렴하게 내놓아서 소비자들이 그걸 입찰해서 이용하는 방식인 것이다.
온디맨드 요금보다 90% 할인된 가격으로 내놓으니 가장 저렴한 요금 정책이라고 말할 수 있다.
하지만 문제는 언제 반납해야할지 모른다는 것이다.
남는 인스턴스가 아까워서 싸게 판매하는 취지는, 만일 언제 비싼 요금을 내고 사용하는 고객들의 인스턴스 수요가 많아지면, 이들에게 제공하기 위해 곧바로 다시 회수 해간다는 의미를 내포한다.
정말로 어느순간 AWS가 인스턴스를 가져가버려 정작 내 서비스가 잠시동안 끊겨버리는 순간이 올수 있다는 말이다.
물론 인스턴스 수요가 적어지면 다시 인스턴스를 할당받아 내 애플리케이션을 다시 서비스가 가능하다.
따라서 반환 시간이 예측이 불가능하기에, 인스턴스가 확보되고 종료되는 것을 반복해도 문제없는 애플리케이션에 적합하며 주로 빅데이터 처리, ML등 많은 인스턴스가 필요한 작업에 사용된다. (최대 90% 저렴하니까)
스팟 인스턴스 원리
아래의 그래프를 보자.
고객들이 인스턴스를 많이 쓰면 스팟 인스턴스 가격(노랑선)이 올라가게 된다.
일단 먼저 내가 원하는 지정 가격(초록선)을 정한다.
이 지정가격 보다 비싸지면 반납해서 인스턴스를 중지시키고, 가격이 싸지면 다시 인스턴스를 사용한다는 원리이다.
즉, 스팟 인스턴스 사용 루프를 정리하자면 다음과 같다.
- 수요에 따라 스팟 인스턴스의 가격은 계속 변동한다.
- 내가 지정한 가격보다 현재 가격이 낮다면 인스턴스를 할당받고 사용한다.
- 내가 지정한 가격보다 현재 가격이 높다면 반환된다.
- 다시 가격이 낮아지면 사용한다.
스팟 인스턴스 이용 고객
- 시작 및 종료 시간이 자유로운(유연한, flexible) 응용 애플리케이션
- 지금 내가 급하게 사용할 필요없고, 사용할때를 기다리고 내가 원하는 가격에 입찰되어 내가 사용할 수 있을때, 그때 해도 되는 것들에 활용하면 적합
- 컴퓨팅 가격이 매우 저렴해야만 수익이 나는 애플리케이션
- 대량의 서버 용량 추가로 긴급히 컴퓨팅 파워가 필요한 사용자
전용 호스트
실제 물리적인 서버를 임대하는 요금제이다.
aws 인스턴스 자체가 가상환경에서 사용하는 컴퓨터인데, 그 반대라고 보면 된다.
즉, 가상화된 서버에서 EC2를 빌리는 것이 아닌 지정된 물리서버에서 EC2가 대여가 된다
보안적인 이유, 규정(라이센스)에 따른 이유, 퍼포먼스를 위한 이유(CPU Steal 등) 등으로 사용된다.
간단히 말하자면 가상 컴퓨팅은 구조적 한계 때문에 여러사람들이 사용하면 퍼포먼스 하락 요소가 있기 때문이다.
전용 호스트 이용 고객
- EC2에서 Microsoft 및 Oracle 같은 공급업체의 적격 소프트웨어 라이선스를 사용할 경우
- 기존의 물리적 서버에서 EC2를 사용할 경우
EC2 요금 정책 정리
- 가격순서
- 스팟 인스턴스 < 예약 인스턴스 < 온디맨드 < 전용 호스트
- EC2의 가격모델과 EBS와는 별도로 요금이 청구된다. (EBS는 사용한만큼 지불)
- 기타 데이터 통신 등의 비용은 별도로 청구 (참고로 AWS는 AWS 바깥으로 나가는 트래픽에 대해서만 요금 부과)
- 예를들어 50테라바이트의 파일을 업로드할때는 무료
- 단, 그 파일을 다운받을때 요금 청구
EC2 Instance 요금 계산 방법
EC2 서비스를 사용할때 각각의 인스턴스 모델과 사양 및 사용 지역 등에 따라서 요금이 각각 다르게 측정되어 있다.
그러므로 프리티어 인스턴스를 사용하지 않는 이상 사용전에 미리 요금을 계산해보는 것이 좋다.
먼저 EC2 요금 서비스에 들어가준다.
들어가면 총 5개의 요금 지불 방식이 있는 것을 확인할 수 있다.
사용 환경을 고려하여 자신에게 맞는 요금 측정 방식을 선택하면 된다.
가장 보편적으로 사용하는 온디멘드 요금을 선택한다.
온디맨드를 눌러 들어오면 기본적인 선택사항을 골라주면 되는데 상황에 맞게 골라주면 된다.
선택이 끝났다면 마지막으로 사용 인스턴스를 검색해주면 다음과 같이 사양과 시간당 요금을 볼 수 있다.
달러 기준으로 나오기 때문에 오늘 기준자 환율로 계산한 표도 참고하길 바란다. (요금 계산 방법은 간단하게 시간당 금액이므로 하루 금액은 24를 곱하고 한달 사용 기준으로는 하루 금액에 30을 곱하면 된다)
인스턴스 타입 요금 예시)
Amazon EC2 사용량은 인스턴스의 크기, 운영 체제 및 인스턴스가 시작되는 AWS 리전에 따라 시간 또는 초 단위로 계산이 되고 요금은 각 인스턴스에 사용된 인스턴스 시간, 즉 인스턴스가 시작된 시간부터 종료 또는 중지될 때까지의 시간을 기준으로 책정된다.
AWS 프리티어 유의사항
많은 AWS 서비스를 프리티어(무료)로 제공하지만, 각 프리티어 서비스는 한도가 존재한다.
만일 프리티어 사용 중 요금이 발생 하였다면?
- 하나 이상의 서비스에서 월별 프리티어 사용량 한도 초과하였나?
- 프리티어가 아닌 서비스를 사용하였나?
- 프리티어 기간이 만료되었나?
를 확인할것 💰💰💰💰
프리티어 과금 대처 방법
- 요금 발생 리소스 추적 (결제 대시보드 - 서비스 별 상세 내역 조회)
- 요금 지불 의향 없는 서비스 종료
- 리소스 사용량 모니터링
# Reference
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.