Reserve instances can be a long term commitment and costly investment hence it is important that you know all the facts and limitations about it in-advance.
AWS Reserve Instance is discount model which AWS provides where you can book/reserve some computing power in exchange for a commitment of a 1 year or 3years. This model is available for services like EC2, RDS, ElasticCache, Redshift and ElasticSearch with different commitments and conditions for each.
RIs can give you a significant discount (up to 75%) compared to On-Demand instance pricing, however, the percentage savings varies on the basis of term, offering class and payment option, therefore, before booking any RIs it is recommended that you go to AWS Cost Explorer service to understand the potential saving options.
Cost explorer will give you valid recommendations based on past your usage, thanks to AWS’s AI/Big algorithms.
Always remember two things:
- Book RI’s from the Payable AWS account in your AWS organization, this will automatically share the reserved capacity with your sub/linked accounts.
- Always consider your financial state and future infrastructure plans in the account before reserving instances because once RI is booked you cannot turn around.
Here is a decision matrix for different types of reserved Instances offering that which will help you determine the best savings and risk.
EC2
Offering Class/Payment options | All upfront | Partial upfront | No upfront | Overall Risk + Saving Score (Max 5) |
Standard (1 year) | *** | *** | ** | 3 |
Standard (3 years) | ***** | **** | *** | 5 |
Convertible (1 year) | ** | ** | * | 2 |
Convertible (3 years) | **** | **** | *** | 4 |
Standard Offering means you can change the EC2 instance type within a single-family. For eg., You can only exchange a T3.2xlarge instance for T3.medium/nano/large instances.
Convertible Offering means you can change the EC2 instance family and type. For eg., You can change from T3 family to M5 family instance type.
Limitations:
- You cannot switch the offering type once you’ve placed the order for Reserve Instances
- You cannot change the OS type and Region once you have placed the order for Standard or Convertible offering.
- Converting the reserve instance capacity family will also incur you some additional costs which will be the difference of booking T3 family to the cost of reserving M5 family decided on the basis of the Normalization factor.
More info on the cost of converting/exchanging a Convertible RI here.
RDS
Offering Class/Payment options | All upfront | Partial upfront | No upfront | Overall Risk + Saving Score (Max 5) |
Standard (1 year) | *** | *** | ** | 3 |
Standard (3 years) | ***** | ***** | Not Available | 5 |
Limitations:
- Scaling horizontally is possible. For eg., if you buy 1 db.R5.2xlarge you can run four db.R5.large or two db.R5.xlarge instances
- Changing DB Engine not possible.
- The discounts are not applied to network IO or additional IOPS.
- RDS Multi-AZ reserve instance pricing only applies to the same Engine and deployment type. For eg., Exchange MySQL Multi-Az for a bigger of smaller MySQL Multi-Az instance only. Same applies for Single AZ RDS.
More on RDS reserved instance can be found here.
ElasticCache
Offering Class/Payment options | All upfront | Partial upfront | No upfront | Overall Risk + Saving Score (Max 5) |
Standard (1 year) | *** | *** | ** | 3 |
Standard (3 years) | ***** | **** | *** | 5 |
Limitations:
- No size flexibility that means you cannot change the instance types also in the same family. For e.g., If you buy m4.2xlarge you cannot run two m4.xlarge.
- The discount is applied is the same for nodes in a cluster or a read replica.
Note: The heavy utilized EC payment option is only available for old instance types, As of January 18th 2019, AWS has made changes to payment options on the basis of which the above table is determined.
More info on Elasticache reserved instance can be found here.
Redshift
Offering Class/Payment options | All upfront | Partial upfront | No upfront | Overall Risk + Saving Score (Max 5) |
Standard (1 year) | *** | *** | ** | 3 |
Standard (3 years) | ***** | **** | Not Available | 5 |
Limitations:
- Purchase limited to an instance type and size if you buy. For e.g., If you buy ds1.2xlarge you cannot convert to ds2.2xlarge.
- Scaling horizontally is possible. For eg. one m4.2xlarge to four m4.large
More on Redshift reserved instance can be found here.
Elasticsearch
Offering Class/Payment options | All upfront | Partial upfront | No upfront | Overall Risk + Saving Score (Max 5) |
Standard (1 year) | **** | **** | *** | 4 |
Standard (3 years) | ***** | ***** | **** | 5 |
Limitations:
- Purchase limited to an instance type and size if you buy. For e.g., If you buy m4.2xlarge you cannot convert to m5.2xlarge.
- Scaling horizontally is possible. For eg. one m4.2xlarge to four m4.large
More info on ES reserve instance can be found here.
Last but not least…
AWS Savings Plan
AWS introduced a new pricing model which also gives Reserved instances like discounts on basis of compute usage on a per hour basis in-exchange for 1 year or 3years commitment.
In this model, the customers can get more flexibility compared to the Reserve instances Standard and Convertible offering. The customer needs to commit an amount per hour for a minimum of 1 year or 3 years, These discounts only apply on an on-demand EC2 and Fargate service exclusively and they do not apply on already reserved capacity/instances.
There are two types of discount plans:
- Compute Savings Plans is a flexible option which helps reduce the costs by up to 66%. These plans automatically apply to any type and family of the EC2 instance in any az, region, OS or tenancy, and also apply to Fargate usage.
- EC2 Instance Savings Plans provide the lowest price by offering savings up to 72% in exchange for a commitment to usage of individual instance family in a region (e.g. C5 usage in N. Virginia). It gives the same flexibility as Standard EC2 Reserved instances where one can change the usage between instances within a family in that region.
More info on Savings plans can be found here.
Hope this information helped you! Feel free to share your thoughts in the comment section below.