• PRODUCT

    PRODUCT

  • PRICING
    PRICING

  • HELP
    HELP

  • BLOG
    BLOG

  • APPSTORE
    APPSTORE

  • COMPANY
    COMPANY

  • LEGAL
    LEGAL

  • LOGIN
    LOGIN

  • AWS EC2 buyers guide: On-Demand Instances Reserved Instances Spot Instances compared


  • Optimizing AWS billing could be quite a task. We will discuss the difference between on demand, reserved and spot instances. We also encourange the use of Izyware Digital Asset Calendar for planning the renewals for the reserved instances.


  • We recenently realized that we did have a reserved instance from 11-2015 to 11-2016. We saw our billing going up noticably around December 2016 but we were growing at the time and didnt have time for little accounting issues, we had assumed that the increase in our billing was only due to increased demand on infrastructure. Wrong! In turns out that Amazon switched us from reserved to on demand without any warnings or heads up. We went back and checked our email records and did not find anything.

    Izy Tip

    We encourange the use of Izyware Digital Asset Calendar for planning the renewals for the reserved instances.

    Reserved vs On-Demand

    Amazon EC2 offers three pricing options for instances:

    • On-Demand Instances
    • Reserved Instances
    • Spot Instances

    Better to use reserved than on demand. will save you a lot of money As an example, one of the nodes behind the ELB is a m3.medium us-west-2b which has 4GB RAM, 8GB Storage, Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz. As an on demand instances it was running at about $0.067 per on demand instance per hour $50 / month. In contrast the same box as a reserved instance would vost about $15 / month.

    Payment Comparison Chart

    The parameters that you could play with are:

    • Term

    * (A) 12 Month

    * (B) 36 Month
    • Payment Options
    * (A) All UpFront

    * (B) Partial UpFront

    * (C) No Upfront

    For a m3.medium instance in us-west-2 region (prices as of February 2018):

    Price term payment options effective rate/hour Total cost over 3 years

    $687 UF/0 Y B A $0.026 $687

    $337 UF/131.4Y B B $0.028 $731

    $353 UF/0 Y A A $0.040 $1059

    $211 UF/149Y A B $0.041 $1080

    $0 UF/420Y A C $0.048 $1261

    The 2nd option is the best option because for an extra $44 it provides optionality for change after the 2nd year.

    February 2021 Update: The prices for Partial Upfront Linux/UNIX m3.medium for 36 months, Payment Terms: Upfront + Hourly (Regardless of usage) are $337.00 upfront and $0.015/hour.

    Renewal

    To renew the instance, go to EC2 console > Instances > Reserved Instances, select the item and pick Renew Reserved Instance from the dropdown menu.

    Converting from on Demand Instances to Reserved Instances

    The only thing different between on demand and reserved is how its billed. All you need to do is to purchase a reserved instance that matches the size and zone that your instance is in. In other words, the conversion of an on-demand instance to a reserved instance is purely a billing issue and so to simply buy a reserved instance, and the instances will be billed as reserved instance. No changes need to be made to your AutoScaling group. Please note that reserved instances currently need to be purchased for a specific AZ. In order to get the benefit of reserved instance pricing, your AutoScaling group should be configured to launch instances in those AZs.

    For example, if you only buy a reserved instance in us-east-1a, you should setup your AutoScaling group to launch instances in us-east-1a. If your AutoScaling group is configured to launch instances in us-east-1a and us-east-1b, and AutoScaling launches an instance in us-east-1b, it will be billed as an on-demand instance unless you also buy a reserved instance in us-east-1b.

    Note that the tool that AWS provides to purchase a reserved instance appears to want to create a new instance. It does not provide an interface to select an existing instance to change billing on. The "Purchase Reserved Instances" wizard in the console appears to be creating a new instance--a new virtual server. It is asking questions like which platform, which availability zone, etc.

    It might help to realize that a reserved instance is actually just a reservation and no instance will be created when you purchase one. If you have an existing instance, you simply purchase a reservation matching that instance type, platform, and availability zone. Behind the scenes, the billing system is constantly looking at the running instances and your reservations. When there is a match (same type, platform, az), you automatically get the lower hourly rate.

    In short a reservation isn't tied to any particular instance.

    Log

    • 2024: Partial upfront Linux/UNIX m3.medium for 36 months, Standard US West (Oregon)
    * Payment terms: Upfront + Hourly $337.00 $0.015

  • Izyware Blog
    Izyware Blog