Reserved Instances

Earn 25 points (50 with Pro) in two steps

  1. ① Read through the lesson — each section gets a ✓ as you scroll through it.
  2. ② When every section has a ✓, tap Complete lesson.

0 of 10 read · keep scrolling

✦ See fewer ads and earn double points — 50 a lesson instead of 25 — with Pro

Lesson: Mastering Reserved Instances for Cost-Optimized Compute

Introduction: The Economics of Cloud Compute

When organizations move workloads to the cloud, they often start with an "on-demand" model. This model offers incredible flexibility, allowing you to spin up or shut down virtual machines (VMs) at a moment's notice. While this agility is a primary benefit of cloud computing, it comes at a premium price. If you run your production servers on-demand 24/7, you are essentially paying "retail" prices for a commodity that you know you will need for the foreseeable future.

Reserved Instances (RIs) represent a fundamental shift in how you procure compute capacity. By committing to use a specific amount of compute power over a fixed term—typically one or three years—you signal to the cloud provider that you have predictable, baseline needs. In exchange for this commitment, the provider offers significant discounts, often ranging from 30% to 72% compared to on-demand rates. Understanding how to use RIs effectively is one of the most impactful levers you have as an architect or systems administrator to control and reduce your cloud spend.

This lesson explores the mechanics of Reserved Instances, how to determine when they are appropriate, and how to build a strategy that balances cost savings with the necessary flexibility to adapt to changing business requirements.


Not read yet

The Fundamentals of Reserved Instances

At its core, a Reserved Instance is not a physical server that you boot up. Instead, it is a billing discount applied to the usage of a specific type of compute resource. When you purchase an RI, you are essentially buying a "coupon" that the cloud provider automatically applies to any running instance that matches the attributes of that reservation.

Key Attributes of a Reservation

To understand how RIs work, you must understand the four primary attributes that define them. If your running instances do not match these attributes, the discount will not be applied:

  • Instance Type: This refers to the hardware family and size (e.g., an m5.large or c6.xlarge). You cannot buy a reservation for an m5.large and expect it to apply to a c5.large.
  • Platform/Operating System: Reservations are specific to the OS. A reservation for a Linux instance will not cover a Windows instance.
  • Tenancy: This relates to whether the instance is running on shared hardware (default) or dedicated hardware.
  • Region: Reservations are tied to a specific geographic region. If you have a reservation in the US-East-1 region, it cannot be applied to an instance running in US-West-2.

Payment Models

The financial commitment you make when purchasing an RI can be structured in three distinct ways, each offering a different balance of upfront cash flow and total savings:

  1. All Upfront: You pay for the entire term (1 or 3 years) at the moment of purchase. This provides the highest discount percentage because you are effectively providing the provider with capital immediately.
  2. Partial Upfront: You pay a portion of the cost upfront, and the remainder is billed monthly over the term of the reservation. This is often the preferred middle ground for many finance departments.
  3. No Upfront: You make no initial payment. Instead, you pay a discounted monthly rate for the duration of the term. While this provides the lowest discount of the three, it is still significantly cheaper than on-demand pricing.

Callout: Reserved Instances vs. Savings Plans While Reserved Instances are tied to specific instance types, regions, and OS types, Savings Plans offer a more flexible alternative. Savings Plans allow you to commit to a specific dollar amount per hour rather than a specific instance type. This means if you decide to switch from an m5 instance family to a newer c7 family, your Savings Plan discount will follow you automatically, whereas an RI would require you to sell or modify the reservation.


Not read yet

When to Use Reserved Instances: The Decision Framework

Not every workload is a candidate for Reserved Instances. The key to cost optimization is identifying "steady-state" workloads. These are the applications, databases, and microservices that run 24 hours a day, 7 days a week, throughout the year.

Identifying Steady-State Workloads

To determine if a workload is a candidate for an RI, ask yourself the following questions:

  • Is this a production environment? Production systems are almost always running at a baseline capacity.
  • How long has this workload been running? If you have been running a set of web servers for six months without turning them off, it is highly likely you will need them for the next year.
  • Is the architecture expected to change? If you are planning a migration to serverless (like Lambda) or a container orchestration platform (like Kubernetes) in the next three months, buying a one-year RI for your current virtual machines might be a mistake.

The Math of Break-Even Analysis

Before committing to a 3-year term, calculate the "break-even" point. If a 1-year RI offers a 40% discount and you only plan to run the instance for 8 months, you have likely overpaid.

Example Calculation:

  • On-Demand cost per hour: $0.10
  • 1-Year RI cost per hour (effective): $0.06
  • Total savings over 12 months: $0.04 * 8,760 hours = $350.40
  • Break-even point: If you use the instance for more than 7-8 months, the RI becomes cheaper than on-demand.

Note: Always consult your cloud provider's cost explorer tools before making a purchase. These tools analyze your actual historical usage and recommend specific RI purchases based on your actual 30-day, 60-day, and 90-day utilization patterns.


Not read yet

Step-by-Step: Purchasing and Managing Reservations

The process of purchasing RIs involves careful planning to ensure you don't end up with "zombie" reservations that provide no value.

Step 1: Analyze Current Usage

Use your cloud provider's Cost Management or Cost Explorer interface. Filter by:

  • Usage type (compute)
  • Instance family
  • Region
  • Usage duration (look for instances that are running 100% of the time)

Step 2: Define Your Coverage Target

Do not attempt to cover 100% of your compute with RIs. If you have spikes in traffic that require auto-scaling, those spikes should be handled by on-demand instances. Aim to cover the "baseline" (the minimum number of instances running at 3:00 AM on a Sunday). A common industry standard is to cover 70-80% of your baseline with RIs, leaving a buffer for unexpected changes.

Step 3: Execute the Purchase

Once you have identified the baseline, proceed to the reservation dashboard. Choose the instance type, region, and term length. Select your payment option (All/Partial/No Upfront) based on your organization's budget cycle.

Step 4: Monitor and Modify

Set up alerts for your reservation expiration dates. Many organizations lose money because they fail to renew or replace expiring RIs. If you are using regional RIs, you may have the ability to "modify" the reservation if your needs change (e.g., moving from an m5.large to two m5.small instances within the same family).


Not read yet

Best Practices for Cost-Optimized Compute

Managing RIs effectively requires more than just purchasing them; it requires a lifecycle approach to cloud management.

1. Centralized Procurement

Avoid letting individual developers or teams purchase RIs. This leads to fragmented ownership and unused reservations. Create a central "Cloud Center of Excellence" or a dedicated DevOps team that manages reservations at the organization level. This allows you to pool usage across multiple accounts and maximize the utilization of each reservation.

2. Leverage Instance Size Flexibility

When purchasing regional RIs, take advantage of "instance size flexibility." If you buy a reservation for an m5.large, the cloud provider will automatically apply that discount to two m5.small instances or one m5.xlarge instance (at a weighted rate). This gives you the ability to right-size your environment without losing your discount.

3. Use Automated Tags

Tagging is not just for organization; it is for accounting. Ensure that all instances are tagged by department, environment, and project. When you see a reservation that is underutilized, you can use these tags to charge back the cost to the specific team responsible for the compute usage.

4. Regularly Review Expirations

Create a calendar or an automated alert system that triggers 90, 60, and 30 days before a reservation expires. This gives your team time to evaluate whether to renew the reservation, switch to a different instance family, or move to a different pricing model like a Savings Plan.

Warning: Do not purchase RIs for development or testing environments. These environments are often spun down at night or on weekends, or the instance types are changed frequently during the development lifecycle. RIs are strictly for production, steady-state, predictable workloads.


Not read yet

Common Pitfalls and How to Avoid Them

Even experienced teams fall into common traps when managing compute costs. Being aware of these will save your organization thousands of dollars.

The "Shelf-Life" Trap

Many teams purchase 3-year reservations to get the maximum discount. However, technology moves fast. If your application architecture shifts from monolithic VMs to serverless or containerized services, a 3-year RI becomes a "sunk cost" that you cannot recover.

  • Solution: Stick to 1-year terms for most workloads. Only commit to 3-year terms for legacy, stable core infrastructure that you are certain will not change for the foreseeable future.

Ignoring the "Regional" vs. "Zonal" Distinction

Some RIs are "zonal," meaning they are tied to a specific Availability Zone (AZ). If you experience an outage and need to move your workload to a different AZ, a zonal reservation will not follow you.

  • Solution: Always prefer "regional" reservations. They provide the same discount but offer the flexibility to move your instances across different AZs within the same region, which is critical for high availability.

Over-Provisioning

It is tempting to buy RIs for the peak capacity of your application. This is a classic mistake. If you buy enough RIs to cover your Black Friday traffic, you will have massive waste for the other 364 days of the year.

  • Solution: Buy RIs only for your minimum baseline. Use on-demand instances or Spot Instances (which we will cover in a future module) for your auto-scaling groups.

Not read yet

Quick Reference: Comparison of Compute Pricing Models

Feature On-Demand Reserved Instance Savings Plan
Commitment None 1 or 3 Years 1 or 3 Years
Flexibility High Low (Instance type specific) High (Dollar-based)
Discount None Up to 72% Up to 66%
Payment Per second/hour Upfront or Monthly Hourly commitment
Best For Spiky, unpredictable Steady-state, stable Broad, evolving needs

Practical Example: Implementing a Strategy

Imagine you are managing an e-commerce platform. Your traffic is generally stable during the day but spikes during sales events.

Current State:

  • You have 10 c5.xlarge instances running 24/7.
  • You have an auto-scaling group that adds up to 20 more c5.xlarge instances during peak hours.

The Strategy:

  1. Analyze: You see that your minimum load is consistently 8 instances.
  2. Purchase: You purchase 8 units of 1-year, Partial Upfront RIs for c5.xlarge instances.
  3. Result: Your baseline is now discounted. The remaining 2 instances (your "buffer") and the 20 auto-scaled instances remain on-demand.
  4. Optimization: If you decide to upgrade to c6g instances later, you can use the "exchange" feature (if available) or simply let the RIs expire and transition to a Savings Plan to maintain your discount while upgrading your hardware.

Not read yet

Technical Implementation: Infrastructure as Code (IaC)

While you can purchase RIs through the web console, it is best practice to manage your infrastructure procurement through code. If you use Terraform or similar tools, you can ensure that your environment remains consistent.

While most cloud providers do not allow you to "provision" an RI via Terraform in the same way you provision a VM, you can use the provider's CLI or API to integrate RI management into your deployment pipelines.

Example: CLI Command for Purchasing

# Example of using the cloud CLI to purchase a reservation
# This command is conceptual and varies by provider
cloud-cli compute reservations purchase \
  --instance-type "c5.xlarge" \
  --term "1y" \
  --offering-class "standard" \
  --instance-count 8 \
  --payment-option "partial-upfront"

Explanation of the command:

  • --instance-type: Specifies the exact hardware you are locking in.
  • --term: Sets the 1-year duration.
  • --instance-count: Defines the number of "coupons" you are purchasing.
  • --payment-option: Defines the financial structure.

Note: Always run a "dry run" or use a simulation tool before executing purchase commands in production.


Not read yet

Advanced Topic: Selling Unused Reservations

What happens if you purchase an RI and your project is canceled? Many cloud providers maintain a "Reserved Instance Marketplace." This allows you to list your unused reservations for sale to other customers.

  • Pros: You can recoup some of your costs.
  • Cons: You may not get the full value back, and there is no guarantee of a buyer.
  • Best Practice: Treat the marketplace as a last resort. Prevention (through careful planning) is always better than cure (trying to sell unused assets).

Common Questions (FAQ)

Q: Can I share RIs across different accounts? A: Yes, if you are using an organization-wide billing structure (like AWS Organizations or GCP Projects). RIs purchased in the management account can be applied to usage in member accounts, provided they are in the same region and match the instance type.

Q: What happens if I stop the instance? A: If you stop an instance, the reservation remains "active" and the clock keeps ticking. You are still paying for the reservation, and you are not getting any compute value for it. This is why RIs must be used for 24/7 steady-state workloads.

Q: Can I change my mind after buying an RI? A: Generally, no. RIs are a binding contract. This is why it is critical to start with a conservative estimate and increase your coverage as your confidence in the workload's stability grows.

Q: How do I know if my RIs are being utilized? A: Most cloud providers offer a "Reservation Utilization Report." If your utilization is below 100%, you have purchased too many RIs for your current workload. If it is 100%, you might have an opportunity to purchase more to increase your savings.


Not read yet

Key Takeaways

  1. Prioritize Stability: Reserved Instances are exclusively for predictable, steady-state workloads that run 24/7. They are not suitable for development, testing, or highly elastic, short-lived workloads.
  2. Start Small: Never attempt to cover 100% of your compute capacity with RIs. Aim for 70-80% of your minimum baseline to avoid paying for unused capacity during fluctuations.
  3. Prefer Regional RIs: Always choose regional reservations over zonal reservations to ensure your discount persists even if you need to move your instances between availability zones for high availability.
  4. Master the Lifecycle: RI management is a continuous process. Use tagging to track usage, set alerts for expiration dates, and conduct quarterly reviews to ensure your reservations still align with your actual architecture.
  5. Understand the Financials: Choose the payment model (All/Partial/No Upfront) that aligns with your organization's cash flow requirements, but remember that the "All Upfront" option usually yields the highest total savings.
  6. Centralize Procurement: Assign the responsibility of purchasing and managing RIs to a central team. This prevents fragmentation and allows for the pooling of reservations across multiple accounts, which is the most effective way to maximize utilization.
  7. Know Your Alternatives: Always compare RIs against Savings Plans. If your architecture is expected to evolve or change instance families within the next 12 months, a Savings Plan may offer the necessary flexibility without sacrificing significant cost savings.

By following these principles, you will transform your compute infrastructure from a variable, high-cost utility into a predictable, cost-optimized asset. The goal is not just to save money, but to free up budget that can be invested in innovation, performance improvements, and the continued growth of your platform.

Not read yet

Each section gets a ✓ as you scroll through it. Tap the button to jump to the next one.