AWS 컴퓨팅 자원 할인 프로그램 Savings Plans의 이해
예약 인스턴스(RI)를 대체할 약정 할인 방식

Savings Plans 소개

AWS에서는 컴퓨팅 자원의 사용량을 미리 약정하고 할인 받을 수 있는 새로운 요금 체계인 Savings Plans를 발표했습니다. 기존에도 아마존 EC2 예약 인스턴스RI, Reserved Instance를 사용하면 사용량을 미리 약정할 수 있었습니다만, 리전, 사이즈, 인스턴스 세대 등을 명시적으로 선택해서 약정을 해야했습니다. AWS를 경험이 있으신 분들이 이 조합이 얼마나 다양한지 알고 있을 것입니다. 또한 이렇게 고정된 약정 사항에 대해서는 추후에 변경이 불가능하거나 제한적으로만 변경이 가능했습니다.

이와 달리 Savings Plans은 예약 인스턴스보다 훨씬 할인이 포괄적으로 적용됩니다. Saving Planse은 시간당 사용 금액을 미리 약정하고, 이 약정한 금액에 대해서는 리전, 인스턴스 세대, 사이즈에 상관없이 요금 할인이 적용됩니다. 심지어는 EC2 뿐만 아니라 파게이트(Fargate) 사용 금액에 대해서도 할인이 적용됩니다.

44BITS 소식과 클라우드 뉴스를 전해드립니다. 지금 5,000명 이상의 구독자와 함께 하고 있습니다 📮

Compute Savings Plans와 EC2 Instance Savings Plans

이번에 출시된 Savings Plans는 크게 Compute Savings Plans와 EC2 Instance Savings Plans 두 가지 종류로 나뉩니다.

Copmute Savings Plans
온디맨드 가격 대비 최대 66%할인이 적용되는 가장 유연한 플랜. 인스턴스 패밀리, 사이즈, AZ, 리전, OS, 테넌시에 상관없이 적용되는 플랜. EC2와 함께 파게이트에도 자동 적용됨.
EC2 Instance Savings Plans
온대민드 가격 대비 최대 72% 할인이 적용되는 플랜. 리전과 인스턴스 패밀리를 정해서 적용하며, 사이즈, AZ, OS, 테넌시에 상관없이 적용되는 플랜. 파게이트는 적용되지 않음.

Compute Savings Plans는 예약 인스턴스나 EC2 Instance Savings Plans보다 훨씬 더 포괄적으로 할인이 적용됩니다. 인스턴스 패밀리나 리전을 지정하지 않아도 EC2를 사용하는 거의 모든 경우에 할인이 적용됩니다. 이와 더불어 EC2뿐만 아니라 ECS에서 사용할 수 있는 파게이트에도 할인이 자동 적용됩니다. EC2 Instance Savings Plans의 경우 리전과 인스턴스 패밀리를 미리 지정해야합니다. 이 방식의 장점은 Compute Savings Plans보다 최대 할인 폭이 조금 더 크다는 점입니다.

Savisngs Plans의 구매 방식 이해하기

먼저 Savings Plans를 통해 할인되는 시간당 가격은 인스턴스 패밀리, 사이즈, 리전, OS, 테넌시에 따라 다르며, 이에 대해서는 가격 페이지에 확인할 수 있습니다.

예를 들어 Seoul 리전의 m5.large Linux(Shared 테넌시) 인스턴스의 경우 온디맨드 요금은 $0.118입니다. 1년 계약에 선결제가 없는 경우 Savings Plans이 적용된 가격은 $0.085입니다. RI에서 같은 조건의 인스턴스를 검색할 경우 선결제 없는 조건의 convertible 클래스의 가격과 거의 같은 것을 확인할 수 있습니다. 예약 인스턴스를 구매하는 경우 특정 조건의 인스턴스를 필요한 댓수만큼 주문하는 방식입니다. RI를 선결제 없이 구매하는 경우 인스턴스 사용 여부와 관계 없이 시간당 요금이 과금됩니다.

예약 인스턴스 가격표에서 확인한 서울 리전 m5.large Linux Shared 테넌시 가격
예약 인스턴스 가격표에서 확인한 서울 리전 m5.large Linux Shared 테넌시 가격

Savings Plans의 경우 이와 달리 댓수가 아닌 시간당 사용 금액을 미리 약정하는 방식입니다. RI와 달리 Savings Plans을 구매할 때 지정하는 조건들은 몇가지가 되지 않습니다. Compute Savings Plans을 구매하는 경우 오직 기간(1년 or 3년)과 선결제 방식(선결제 없음 or 부분 선결제 or 전액 선결제) 그리고 시간당 금액만을 지정합니다. 이 때 기간과 선결제 방식에 따라서 할인율이 달라집니다. 여기서 지정한 시간당 금액은 인스턴스의 사용 여부와 관계 없이 지불하는 약정 금액입니다. 예를 들어 $0.085를 시간당 요금으로 지정하면, 매 시간 $0.085가 과금됩니다. 인스턴스를 사용하지 않더라도 한 달을 대략 744시간으로 계산하면 $63.24의 비용이 발생합니다.

이 조건 상에서 서울 리전의 m5.large Linux(Shared 테넌시) 인스턴스를 한 대 사용한다고 가정해보겠습니다. 비용은 시간당 $0.085이므로 Saving Plans에서 지정한 시간당 요금과 정확히 일치합니다. 이 경우 할인된 가격이 적용되므로 시간당 $0.085를 지불하고 이 인스턴스를 사용할 수 있습니다. 요금은 (월기준) 약정 금액과 같은 $63.24가 됩니다. 같은 인스턴스를 2대를 사용한다고 가정해보겠습니다. 1대를 사용하면서 이미 미리 지정한 시간당 요금은 모두 소진하므로, 나머지 한 대는 온디맨드 가격으로 과금이 이루어질 것입니다. 따라서 시간당 $0.203($0.085 + $0.118)이 과금되며, 한 달에 $151.032의 요금이 발생합니다. Saving Plans를 전혀 사용하지 않았을 경우에는 $175.584가 됩니다.*

* 이 계산은 예상되는 요금이며 실제 적용 방식에는 차이가 날 수 있습니다. 좀 더 자세한 내용은 Savings Plans의 가격, FAQ 등 공식 문서를 참고해서 판단하시기 바랍니다.

앞서 이야기한 대로 기간을 늘리거나 선결제를 하는 경우 할인율이 좀 더 높아집니다. 예약 인스턴스의 경우 기간을 늘리거나 선결제를 하는 경우 결제 금액이 낮아집니다. 하지만 Savings Plans를 사용하는 경우 시간당 요금을 직접 결정하기 때문에 전체 금액은 달라지지 않는다는 차이점이 있습니다. 기간을 늘리거나 선결제로 요금을 더 아끼고자 하는 경우에는 약정 금액도 적절하게 조정할 필요가 있어보입니다.

Savings Plans 구매하기

Savings Plans는 AWS Cost Management 서비스에서 구매할 수 있습니다. 하지만 구매하기에 앞서 적절한 약정 금액을 계산할 필요가 있습니다.

Savings Plans의 서브 메뉴에는 추천Recommendations 메뉴가 있습니다. 이 메뉴에서는 현재 계정의 온디맨드 인스턴스의 사용량을 기반으로 옵션에 따라 약정 금액을 추천해줍니다. *

* 스크린샷을 찍은 계정에서는 온디맨드 사용량이 얼마 되지 않아 추천 금액이 나오지 않았습니다. 😅

약정 금액 추천 메뉴
약정 금액 추천 메뉴

이는 과거 데이터를 기반으로 한 정보이므로, 이후에도 1년 이상 비슷한 정도나 그 이상 사용할 계획인 경우에는 이를 참고해서 약정을 진행하면 될 것으로 보입니다. 다른 변수들이 있는 경우에는 요금 페이지를 참고해서 직접 계산해보고 옵션과 약정 금액을 결정하는 것을 추천드립니다.

약정 옵션과 금액을 정했으면 Savings Plans 구매하기Purchase Savings Plans 메뉴에서 Savings Plans를 구매할 수 있습니다.

Savings Plans 구매 화면
Savings Plans 구매 화면

Savings Plans 타입과 기간, 선결제 옵션을 선택하면 됩니다. 이는 할인 방식과 할인율을 결정하는 옵션들입니다. 앞서 설명했듯이 총 결제 금액은 오직 약정 금액에 의해서만 결정됩니다. 따라서 추천 메뉴나 직접 계산을 통해서 미리 적절한 약정 금액을 정해야합니다. Savings Plans을 카트에 넣고 결제를 진행할 수 있습니다. Savings Plans 구매 이후 에는 Utilization Report, Coverage Report 메뉴에서 현재 할인이 얼마나 적용되고 있는지를 확인할 수 있습니다.

예약 인스턴스와 Savings Plans

예약 인스턴스 종료에 대한 별도 공지는 없는 것으로 보입니다. Savings Plans의 FAQ에도 예약 인스턴스는 이후에도 계속 구매할 수 있다고 이야기하고 있습니다. 단, Savings Plans이 비슷한 수준의 할인을 제공하면서 훨씬 유연한 정책을 가지고 있기 때문에 현재 사용중인 예약 인스턴스 만료 이후에는 Savings Plans을 사용할 것을 권장한다고 합니다.

44BITS 로고

아마존 웹 서비스(AWS, Amazon Web Serivce)란?

🏷️ 키워드, 2020-01-20 - 아마존 웹 서비스는 아마존의 자회사로 같은 이름으로 퍼블릭 클라우드 컴퓨팅 서비스를 제공하고 있습니다. 대표적인 서비스로는 컴퓨팅 자원을 제공하는 EC2, 오브젝트 스토리지 S3, 프라이빗 클라우드 VPC, 권한 제어 IAM, 컨테이너 오케스트레이션 ECS, EKS 등이 있습니다.
도움이 되셨나요?
RSS 리더 피들리에서 최신 글을 구독할 수 있습니다.
트위터, 페이스북으로 44BITS의 새소식을 전해드립니다.
✔ 44BITS의 다른 활동도 확인해보세요. 다양한 채널에서 만나볼 수 있습니다.
✔ 따뜻한 댓글 하나와 피드백은 큰 힘이 됩니다.

AWS 람다(AWS Lambda) 레이어 사용법

🗞 새소식, 2018-12-26 - AWS 람다는 서버리스 애플리케이션 실행 환경입니다. re:Invent 2018에서는 루비 런타임 지원, ALB 타깃 그룹 타입 추가와 더불어 람다 레이어라는 새로운 기능을 발표했습니다. 람다 레이어는 람다 함수의 의존성을 분리하거나 함수간의 파일을 공유할 수 있는 기능입니다.

D3.js 기초: select()와 enter() 함수 이해하기

🗒 기사, 2015-02-04 - 자바스크립트 시각화 라이브러리 D3.js에는 select API가 있습니다. 이 함수는 제이쿼리(jQuery)의 select와도 비슷합니다만, 실제로는 작동 방식이 조금 다릅니다. 이 함수는 시각화할 대상을 선택하는 함수로 D3.js의 모든 시각화가 시작되는 함수라고 할 수 있습니다. 이 글에서는 select 함수의 동작 방식에 대해 설명합니다.

AWS RDS for PostgreSQL에서 S3 데이터 임포트 기능 지원

🗞 새소식, 2019-04-26 - 4월 24일 AWS에서는 PostgreSQL Amazon S3에 있는 데이터를 Amazon RDS for 에 가져오는(import) 기능을 발표했습니다. 이 기능을 사용하면 S3에 저장되어있는 text, csv, binary 형식의 데이터를 RDS에서 직접 임포트하는 것이 가능합니다.