AWS에서 제공하는 대표적인 EC2 가격 할인 모델에는 예약인스턴스와 세이빙스 플랜이 있습니다. 이 두 가격할인 모델은 혼동하기 쉽고 어느 것을 구매해서 사용해야 비용 절감이 더 효과적인지 결정하는데 가격표, 사용율, 성능측정 데이터를 보고 판단하는 과정을 거쳐야 합니다.
예약 인스턴스(Reserved Instances : RI)
예약 인스턴스는 일명 RI 라고 하는데 1년 혹은 3년 동안 특정 가용존(Availiability Zone)에 용량과 자원을 예약하여 사용하는 것을 의미합니다.
예약 인스턴스를 구매할 때 1년 혹은 3년간을 기한으로 비용 지불에 동의하면 온디맨드보다 훤씬 낮은 가격에 EC2를 사용할 수 있습니다. RI는 단순히 비용절감만을 의미하는 것이 아니라 특정 존(Zone)에서 필요한 자원을 미리 예약하여 사용할 수 있는 비용 절감 모델입니다.
약정 기간에 따라 다음과 같이 두 개의 선택 사항이 있습니다.
- 1년
- 3년
결제 옵션에 따라 다음과 같은 3가지 선택 사항이 있습니다.
- 선결제 없음(No Upfront) : 매월 약정된 금액을 내고 시간 단위로 사용
- 부분 선결제(Parial Upfront) : 일부를 선결제하고 시간당 선결제 없음(No Upfront) 보다 낮은 가격에 시간당 사용료를 지불
- 전체 선결제(All Upfront) : 약정 기간내에 사용 금액을 모두 선지불하여 가장 낮은 가격으로 인스턴스 사용
전환 가능 유무에 따라 다음 두가지 선택 사항이 있습니다.
- 표준현(Standard) : 약정 기간 동안 인스턴스 타입 변경이 불가능
- 전환형(Convertible) : 약정 기간 동안 인스턴스 패밀리, 운영체제, 테넌시 및 결제 옵션 변경 가능
그러므로 예약 인스턴스는 약정 기간에 따라 2가지, 결제에 따라 3가지, 전환 가능 선택 사항에 따라 2가지를 조합하여 구매해야 하므로 총 12가지 선택 사항이 있습니다. 12개 중 현재 사용 패턴과 시스템에 가장 적합한 선택 사항을 조합하여 구매해야 합니다.
예약을 하는 가장 큰 이유는 온디맨드 가격보다 낮은 가격으로 EC2 인스턴스를 사용할 수 있다는 점이다.
1. 가격 할인
EC2가 전체 클라우드 비용 중 차지하는 비중이 일반적으로 가장 크므로 RI는 비용 절감에 있어서 가장 유용한 툴이 된다. 이미 온디맨드로 사용중인 EC2에 대하여 낮은 가격으로 사용할 수 있는 가장 효과적인 가격 정책이다. 기존 온디맨드로 사용중인 EC2를 RI로 전환할 것인가에 대한 결정을 할때 사용하는 지표가 사용율(Utilization rate) 이다. 사용율이 낮은 인스턴스인 경우는 예약 인스턴스를 사용하면 더 많은 비용을 지불해야 할 수 있다.
2. 용량 및 자원 예약
두번째 이유는 대용량으로 EC2를 사용하는 기업에서는 선택한 가용 여역에서 자원의 예약을 할 수 있다는 장점입니다. 같은 지역 내에서 보통 3~4개 가용 영역을 제공하는데, 지역간 혹은 가용 영역 사이에 통신보다는 같은 가용 영역내에서 링크는 지연시간(latency)가 작다는 장점이 있습니다. 대규모 서비스를 운영하면서 급작스러운 트래픽 증가로 대규모 서버 증설이 단시간내에 불가피할 경우 한 가용 영역에서 자원을 예약하게 되면 자원 고갈로 대처 못하는 상황을 피할 수 있습니다. 이러한 경우는 대용량을 사용하는 기업 외에는 매우 드문 경우라고 얘기할 수 있습니다.
세이빙스 플랜(Savings Plans: SP)
지금까지 EC2 할인 모델로 예약 인스턴스가 가장 널리 사용되어 왔습니다. 그러나 가장 문제점은 지역, 크기, 인스턴스 패밀리를 정하게 되면 변경이 거의 불가능하다는 점이다. 전환형을 산다고 하더라도 인스턴스 패밀리를 변경하거나 지역을 변경할 수 없다는 단점이 있습니다. 이 부분은 클라우드의 유연성과 탄력성이라는 장점에 반하는 가격 정책이었습니다. 또한, 아마존은 구매한 예약 인스턴스 중 원하지 않는 인스턴스를 제2의 마켓에 판매를 할 수 있도록 허용하고 있으나 거래 성사를 이루기 쉽지 않습니다.
2019년 11월에 발표된 세이빙스 플랜은 인스턴스 패밀리, 크기, 운영체제, 테넌시, 지역에 관계없이 더 낮은 가격을 제공하고 있습니다. 특정 인스턴스, 인스턴스 패밀리와 지역에 적용하는 플랜으로 사이즈, 운영체제, 테넌시(Tenancy)에 관계없이 할인을 적용받을 수 있습니다. 온디맨드 가격에 비해 최대 72%까지 낮은 가격으로 EC2 인스턴스 사용할 수 있습니다.
예약 인스턴스와 가장 큰 차이점은 사용자가 특정 기간에 특정 인스턴스 타입 사용량을 약정하는 것이 아니라 특정 인스턴스 패밀리의 일정 비용을 지불하겠다고 약정하여 할인을 받는 가격 모델이다.
세이빙스 플랜에는 두 가지 종류를 제공
- EC2 instance plan
- AWS Compute Savings plan
결제 방법에 선택 사항은 다음과 같습니다.
- 선결제 없음(No Upfront) : 선결제 없이 약정한 금액을 사용 시간당 지불하는 모델
- 부분 선결제(Parial Upfront) : 일부를 선결제하고 조금 더 낮은 요율에서 사용하는 시간당 지불하는 모델
- 전체 선결제(All Upfront) : 미리 선결제하여 가장 낮은 가격으로 사용하는 모델
약정 시간에 따라 두가지 선택 사항이 주어짐
- 1년
- 3년
세이빙스 플랜 단점은 예약인스턴스와 달리 재판매나 전환이 불가능합니다. 그러므로, 한번 구매하게 되면 계속 추가해야 되므로 신중하게 구매해야 합니다.
AWS EC2 할인 정책 비교
RI와 SP 비교
RI와 SP의 적용 우선순위
- 동일한 조건을 충족하는 RI가 존재하면 SP보다 RI가 우선
- 동일한 조건을 충족하는 EC2 Instance SP 및 Compute SP가 있으면 EC2 Instance SP가 우선
- 동일한 조건의 SP에서 할인율이 높은 대상에게 적용이 우선
[참고]
- https://www.costclipper.io/blog/rireserved-instance-vs-savings-plan
- https://dev.classmethod.jp/articles/buying-ec2-cost-effectively-about-ri-and-sp/