CLF-C02Chapter 80 of 130Objective 3.1

EC2 Instance Types and Families

This chapter covers EC2 instance types and families, a core topic for the CLF-C02 exam under Domain 3: Cloud Technology Services (Objective 3.1). Understanding instance families, sizes, and use cases is critical because EC2 is the foundational compute service in AWS, and questions about selecting the right instance type appear frequently. This objective carries approximately 8-10% of the exam weight, so mastering it is essential for a strong score.

25 min read
Intermediate
Updated May 31, 2026

The Cloud Server Supermarket

Imagine you're running a food delivery business. You need a kitchen to prepare meals. AWS EC2 is like a supermarket of pre-built kitchens, each designed for a specific type of cooking. The "instance family" is the kitchen layout: some are optimized for quick frying (compute-optimized), others for storing large freezers (storage-optimized), and some for handling many orders at once (memory-optimized). Each family has different "instance sizes"—like small, medium, large kitchens—so you can scale up as your business grows. You can also choose how you pay: On-Demand is like renting a kitchen by the hour—flexible but expensive for 24/7 use; Reserved Instances are like a long-term lease—cheaper but you commit for 1-3 years; Spot Instances are like using a kitchen that someone else reserved but isn't using—huge discounts but the supermarket can kick you out with 2-minute notice. The key is to match the kitchen (instance type) to your menu (workload). If you pick a kitchen with too little freezer space, your ingredients spoil. If you pick one with too many stoves, you waste money on idle capacity. AWS's Nitro System is like a smart building manager that makes each kitchen run faster and more securely by offloading virtualization overhead to dedicated hardware.

How It Actually Works

What is an EC2 Instance Type and Why Does It Matter?

Amazon EC2 (Elastic Compute Cloud) is a web service that provides resizable compute capacity in the cloud. An EC2 instance is a virtual server running on AWS's infrastructure. The "instance type" defines the underlying hardware specifications: CPU (number of virtual CPUs, architecture), memory (RAM), storage (local instance store volumes), and network performance. Choosing the right instance type is critical because it directly affects application performance, cost, and scalability. AWS offers over 600 instance types across multiple families, each optimized for different workloads. For the CLF-C02 exam, you must know the five main families: General Purpose, Compute Optimized, Memory Optimized, Storage Optimized, and Accelerated Computing. Each family has multiple sizes (e.g., t3.micro, m5.large, c5.2xlarge) that scale resources linearly.

How Instance Types Work: The Mechanism

When you launch an EC2 instance, you select an Amazon Machine Image (AMI) and an instance type. The AMI contains the OS and software, while the instance type determines the virtual hardware. AWS uses the Nitro System, a combination of dedicated hardware and lightweight hypervisor, to provide near-bare-metal performance. Each instance type has a specific ratio of vCPUs to memory and includes a baseline level of network bandwidth. For example, a t3.micro has 2 vCPUs and 1 GiB RAM, while an m5.24xlarge has 96 vCPUs and 384 GiB RAM. Instance types also have a "burstable" or "dedicated" performance model. Burstable instances (e.g., T3, T4g) accumulate CPU credits when idle and spend them when busy, suitable for variable workloads. Dedicated instances (e.g., M5, C5) provide consistent performance.

Key Instance Families and Their Use Cases

General Purpose (A1, T3, T3a, T4g, M5, M5a, M6g, M7g): Balanced CPU, memory, and networking. Ideal for web servers, small databases, development environments. T3 instances are burstable and cost-effective for low-to-medium traffic. M5 offers fixed performance for production workloads.

Compute Optimized (C5, C5a, C6g, C7g): High CPU-to-memory ratio. Best for compute-intensive tasks like batch processing, media transcoding, high-performance web servers, scientific modeling. C5 instances have up to 3.0 GHz Intel Xeon Scalable processors.

Memory Optimized (R5, R5a, R6g, X1, X2g, High Memory): Large memory capacity for memory-intensive applications like in-memory caches (Redis, Memcached), real-time big data analytics (Spark), and SAP HANA. R5 instances offer up to 768 GiB RAM; X1 instances have up to 3.9 TiB.

Storage Optimized (I3, I3en, D2, H1): High, sequential read/write access to large datasets on local storage. Ideal for distributed file systems, data warehouses, Hadoop, and NoSQL databases. I3 instances use NVMe SSD storage; D2 instances use HDD for high disk throughput.

Accelerated Computing (P3, P4, G4ad, G5, Inf1, Trn1): Use hardware accelerators (GPUs, FPGAs, AWS Trainium) for graphics processing, machine learning training/inference, and video encoding. P3 instances have NVIDIA Tesla V100 GPUs; Inf1 instances have AWS Inferentia chips for ML inference.

Pricing Models and How They Relate to Instance Types

On-Demand: Pay by the hour or second (minimum 60 seconds). No upfront commitment. Best for short-term, unpredictable workloads.

Reserved Instances (RI): 1- or 3-year term with significant discount (up to 72%) in exchange for commitment. Standard RI requires consistent instance family and size; Convertible RI allows changes but with lower discount. Best for steady-state applications.

Savings Plans: Flexible pricing model that commits to a dollar amount of compute usage per hour (e.g., $100/hour) for 1 or 3 years. Applies to any EC2 instance, Fargate, and Lambda usage. Discounts similar to RIs.

Spot Instances: Purchase unused EC2 capacity at up to 90% discount. Instances can be reclaimed by AWS with a 2-minute warning. Best for fault-tolerant, flexible workloads like batch jobs, CI/CD, and stateless web servers.

Dedicated Hosts: Physical server dedicated for your use. You control instance placement. Useful for compliance (e.g., software licensing).

Dedicated Instances: Instances run on single-tenant hardware but you don't control the host. More expensive than regular instances.

Comparison to On-Premises

In an on-premises data center, you buy physical servers with fixed capacity. If you need more CPU, you buy a new server or upgrade, which takes weeks. With EC2, you can change instance types in minutes (stop, change type, start). You also pay only for what you use, whereas on-premises requires upfront capital expenditure. However, EC2 instances share underlying hardware (unless using dedicated hosts), so performance can vary due to the "noisy neighbor" effect. The Nitro System mitigates this by providing consistent performance.

When to Use Each Instance Family

Use General Purpose for most workloads unless you have specific high-compute, high-memory, or high-storage needs.

Use Compute Optimized for CPU-bound applications like video encoding, batch processing, and high-traffic web servers.

Use Memory Optimized for applications that cache large datasets in memory, such as Redis, Memcached, or SAP HANA.

Use Storage Optimized for workloads that require high sequential I/O, such as data warehousing (Redshift), Hadoop, or log processing.

Use Accelerated Computing for machine learning, deep learning, graphics rendering, and scientific simulations.

How to Choose an Instance Type

AWS provides a tool called the EC2 Instance Selector (via CLI or web). You specify requirements like vCPU count, memory, network bandwidth, and the tool suggests instance types. For example:

aws ec2-instance-selector --memory-min 4096 --vcpus-min 2 --cpu-architecture x86_64

This returns instance types like m5.large, c5.large, etc. You can also use the AWS Compute Optimizer service, which analyzes your usage and recommends optimal instance types based on CloudWatch metrics.

Instance Type Naming Convention

Instance types follow a pattern: [family][generation].[size]. For example, m5.large: - m = General Purpose family - 5 = 5th generation - large = size (larger sizes have more resources)

Sizes typically scale in powers of 2: nano, micro, small, medium, large, xlarge, 2xlarge, 4xlarge, 8xlarge, 16xlarge, 32xlarge. Some families have metal sizes for bare-metal instances.

Important Limits and Defaults

Default vCPU limit: 5 vCPUs per region for On-Demand and Spot instances (can be increased via quota request).

Maximum instance size: Some families have up to 96 vCPUs and 384 GiB RAM (e.g., m5.24xlarge).

Network bandwidth: Varies by instance size. Smaller instances have lower baseline bandwidth; larger instances have higher. Some instances support Elastic Network Adapter (ENA) for up to 100 Gbps.

EBS bandwidth: Also varies. Some instances have dedicated EBS bandwidth (e.g., m5d instances).

Launching an Instance: CLI Example

aws ec2 run-instances --image-id ami-0abcdef1234567890 --instance-type t3.micro --key-name MyKeyPair --security-group-ids sg-12345678 --subnet-id subnet-12345678

This launches a t3.micro instance in the specified subnet. The instance type can be changed later (stop, modify, start) as long as the new type is compatible with the AMI and region.

Key Exam Points

Know the five instance families and their primary use cases.

Understand the difference between burstable (T3) and fixed performance (M5, C5) instances.

Recognize that Reserved Instances and Savings Plans are tied to instance family and size, but Savings Plans are more flexible.

Be aware that Spot Instances are for fault-tolerant workloads and can be interrupted.

Remember that Nitro System improves performance and security.

Summary

EC2 instance types are the building blocks of compute in AWS. By matching the right family and size to your workload, you optimize cost and performance. The CLF-C02 exam expects you to identify which instance family is best for a given scenario, understand pricing models, and know the naming convention.

Walk-Through

1

Identify Workload Requirements

Before selecting an instance type, determine your application's compute, memory, storage, and network needs. For example, a web server may need balanced resources (General Purpose), while a video transcoding job requires high CPU (Compute Optimized). Use AWS Compute Optimizer or the EC2 Instance Selector to match requirements to instance types. Consider whether the workload is steady-state or variable—burstable instances (T3) are cost-effective for variable loads with low average CPU usage.

2

Choose the Instance Family

Based on requirements, pick the appropriate family: General Purpose (A, T, M), Compute Optimized (C), Memory Optimized (R, X), Storage Optimized (I, D, H), or Accelerated Computing (P, G, Inf, Trn). For exam scenarios, match keywords: "balanced" → General Purpose, "CPU-intensive" → Compute Optimized, "large datasets in memory" → Memory Optimized, "high sequential I/O" → Storage Optimized, "machine learning" → Accelerated Computing. Each family has multiple generations; newer generations (e.g., M6g vs M5) offer better price/performance.

3

Select the Instance Size

Within a family, sizes scale resources. For example, m5.large has 2 vCPUs and 8 GiB RAM; m5.xlarge has 4 vCPUs and 16 GiB RAM. Choose the smallest size that meets your performance requirements to minimize cost. Use CloudWatch metrics (CPUUtilization, MemoryUtilization) to right-size. If your workload is burstable, consider T3 instances with CPU credits. Note that some sizes have enhanced networking (e.g., m5.xlarge and above support ENA).

4

Choose a Pricing Model

Decide how to pay: On-Demand for short-term or unpredictable workloads; Reserved Instances or Savings Plans for steady-state, predictable usage (1 or 3-year commitment); Spot Instances for fault-tolerant, flexible workloads (up to 90% discount). For the exam, remember that Standard RIs apply to a specific instance family and size, while Convertible RIs allow changes but have lower discounts. Savings Plans apply to any instance family and size within a region.

5

Launch and Monitor the Instance

Use the AWS Management Console, CLI, or SDK to launch the instance with the chosen AMI, instance type, and pricing model. After launch, monitor performance with CloudWatch. If the instance is underutilized, consider downsizing; if overutilized, upgrade. Use Auto Scaling to automatically adjust instance count based on demand. For exam questions, remember that you can change the instance type after launch (stop, modify, start), but the new type must be compatible with the instance's architecture and region.

What This Looks Like on the Job

Scenario 1: E-commerce Web Application with Variable Traffic

An online retailer runs a web application on EC2. During normal hours, traffic is low, but during flash sales, traffic spikes 10x. The team chooses General Purpose T3 instances for the web tier because they are burstable and cost-effective. They use Auto Scaling with a target CPU utilization of 70%. During a sale, instances burst using CPU credits; if credits run out, performance throttles. To avoid this, they set a CloudWatch alarm to launch additional instances when CPU credits are low. Cost is minimized because T3 instances are cheaper than M5 for low baseline usage. Misconfiguration: If they had chosen M5 instances, they would pay for idle capacity during low traffic. If they chose T3 but didn't monitor CPU credits, performance would degrade during the sale, causing slow page loads.

Scenario 2: Batch Video Processing Pipeline

A media company transcodes thousands of videos daily. The workload is CPU-intensive and can be parallelized. They use Compute Optimized C5 instances with Spot Instances to reduce costs by 70%. They set up a fleet using EC2 Fleet with Diversified Spot allocation. Processing jobs are idempotent—if a Spot Instance is reclaimed, the job restarts on another instance. They also use Reserved Instances for the baseline capacity (e.g., 10 C5.2xlarge) and Spot for the rest. Cost consideration: Spot prices fluctuate; they set a max bid at 80% of On-Demand. Misconfiguration: If they used On-Demand only, costs would be high. If they used Spot without fault tolerance, lost instances would corrupt data.

Scenario 3: Real-Time Analytics with In-Memory Cache

A financial services company runs a real-time fraud detection system that uses Redis for caching transaction data. The workload is memory-intensive and requires low latency. They choose Memory Optimized R5 instances with a large RAM capacity (e.g., r5.24xlarge). They use a cluster of instances with ElastiCache for Redis. Cost is high, but performance is critical. They purchase 3-year Reserved Instances to reduce costs by 40%. Misconfiguration: If they used General Purpose instances, memory would be insufficient, causing swapping and high latency. If they used Compute Optimized, they would pay for unused CPU. If they didn't use Reserved Instances, costs would be unsustainable.

How CLF-C02 Actually Tests This

What CLF-C02 Tests on This Objective

The exam tests your ability to select the appropriate EC2 instance type for a given use case. Domain 3 (Cloud Technology Services) includes questions that present a scenario (e.g., "A company needs to run a CPU-intensive batch job") and ask you to choose the best instance family. You must also understand pricing models and when to use each. Expect 3-5 questions on instance types.

Common Wrong Answers and Why Candidates Choose Them

1.

Choosing General Purpose for all workloads: Many candidates pick T3 or M5 for every scenario because they are familiar. Wrong when the scenario explicitly mentions "high CPU" or "compute-intensive." The correct answer is Compute Optimized (C5, C6g).

2.

Selecting Storage Optimized for memory-intensive tasks: Candidates confuse storage and memory. Storage Optimized (I3, D2) is for high I/O, not large RAM. Memory Optimized (R5, X1) is for large datasets in memory.

3.

Using Spot Instances for a stateful database: Spot Instances can be terminated; databases need persistent storage and availability. The correct choice is On-Demand or Reserved Instances.

4.

Thinking that all instances have fixed performance: T3 instances are burstable; candidates may assume they provide consistent performance. The exam tests whether you know T3 uses CPU credits.

Specific Terms and Values That Appear Verbatim

Instance family names: T3, M5, C5, R5, I3, D2, P3, G4, Inf1

Pricing: On-Demand, Reserved (Standard, Convertible), Spot, Savings Plans

Burstable vs. Dedicated: T3 (burstable), M5 (dedicated)

Nitro System: Mentioned as the underlying virtualization technology.

Tricky Distinctions

Burstable vs. Fixed Performance: T3 instances accumulate CPU credits. If credits are exhausted, performance is throttled. Fixed performance instances (M5, C5) do not have this limitation.

Reserved Instances vs. Savings Plans: RIs apply to a specific instance family and size; Savings Plans apply to any instance family and size within a region. Both require a 1- or 3-year commitment.

Dedicated Hosts vs. Dedicated Instances: Dedicated Hosts give you visibility and control over physical server placement; Dedicated Instances run on single-tenant hardware but you don't control the host.

Decision Rule for Multiple Choice

When asked to choose an instance type, follow these steps: 1. Identify the workload characteristic: CPU-intensive? → Compute Optimized. Memory-intensive? → Memory Optimized. High I/O? → Storage Optimized. Balanced? → General Purpose. Machine learning? → Accelerated Computing. 2. If the question mentions cost savings and the workload is fault-tolerant, consider Spot Instances. 3. If the workload is steady-state, consider Reserved Instances or Savings Plans. 4. Eliminate any option that mentions an incompatible family or pricing model.

Key Takeaways

EC2 instance families include General Purpose (T3, M5), Compute Optimized (C5), Memory Optimized (R5, X1), Storage Optimized (I3, D2), and Accelerated Computing (P3, G4, Inf1).

Burstable instances (T3) use CPU credits; fixed performance instances (M5, C5) do not.

Reserved Instances and Savings Plans provide significant discounts (up to 72%) for 1- or 3-year commitments.

Spot Instances are up to 90% cheaper but can be terminated with 2-minute notice; use for fault-tolerant workloads.

Instance type naming: family + generation + size (e.g., m5.large).

You can change instance types after launch (stop, modify, start).

The Nitro System provides near-bare-metal performance by offloading virtualization to dedicated hardware.

Easy to Mix Up

These come up on the exam all the time. Here's how to tell them apart.

Burstable Instances (T3)

Accumulate CPU credits when idle, spend when busy

Baseline CPU utilization (e.g., T3.micro baseline 10%)

Cheaper for low-average CPU workloads

Performance may throttle if credits exhausted

Ideal for variable workloads like web servers

Fixed Performance Instances (M5)

Consistent CPU performance at all times

No credit mechanism; full performance always

More expensive for low-utilization workloads

No risk of throttling

Ideal for steady-state production applications

Watch Out for These

Mistake

All EC2 instances provide the same performance regardless of size.

Correct

Performance scales with size. Larger instances have more vCPUs, memory, and network bandwidth. Also, some families (T3) are burstable and may throttle if CPU credits run out.

Mistake

Spot Instances are always the cheapest and should be used for everything.

Correct

Spot Instances can be terminated with 2-minute notice, so they are only suitable for fault-tolerant, stateless workloads. For critical, stateful applications, use On-Demand or Reserved.

Mistake

Reserved Instances lock you into a specific instance type and size forever.

Correct

Standard RIs are tied to a specific instance family and size, but Convertible RIs allow changes (with lower discount). Savings Plans are even more flexible, applying to any instance family and size.

Mistake

You cannot change an instance's type after launching.

Correct

You can stop the instance, change the instance type, and start it again. The new type must be compatible (e.g., same architecture, same virtualization type).

Mistake

General Purpose instances are always the best choice for any workload.

Correct

General Purpose is balanced but not optimized. For CPU-, memory-, or storage-intensive workloads, specialized families provide better performance per dollar.

Frequently Asked Questions

What is the difference between burstable and fixed performance EC2 instances?

Burstable instances (like T3) accumulate CPU credits when they are idle and use those credits when they need more CPU. They have a baseline CPU utilization (e.g., 10% for t3.micro). If they run out of credits, performance is throttled to the baseline. Fixed performance instances (like M5) provide consistent CPU performance regardless of load, but cost more. For the exam, remember that burstable instances are cost-effective for workloads with low average CPU usage and occasional spikes, while fixed performance is for steady-state, high-performance needs.

Can I change the instance type after launching an EC2 instance?

Yes, you can change the instance type after launch. First, stop the instance. Then, in the console or via CLI, modify the instance type. Finally, start the instance. The new type must be compatible with the instance's architecture (e.g., x86_64) and region. Not all instance types are available in all regions. This flexibility allows you to right-size your instances as your workload changes.

What are the main EC2 pricing models and when should I use each?

The main pricing models are On-Demand, Reserved Instances (RI), Savings Plans, and Spot Instances. On-Demand is best for short-term, unpredictable workloads. Reserved Instances (1- or 3-year commitment) offer up to 72% discount for steady-state usage. Savings Plans also require a commitment but are more flexible, applying to any instance type. Spot Instances provide up to 90% discount but can be reclaimed; use for fault-tolerant, flexible workloads like batch processing.

Which EC2 instance family should I choose for a machine learning training job?

For machine learning training, you should choose Accelerated Computing instances like P3 (NVIDIA V100 GPUs), P4 (A100 GPUs), or Trn1 (AWS Trainium chips). These instances have hardware accelerators that significantly speed up training. If the exam scenario mentions ML inference, consider Inf1 (Inferentia) instances. General Purpose or Compute Optimized instances lack the parallel processing power needed for deep learning.

What is the Nitro System and why does it matter?

The Nitro System is the underlying platform for all modern EC2 instances. It consists of dedicated hardware (Nitro cards) that offload virtualization functions like network, storage, and management from the host CPU. This provides near-bare-metal performance, improved security, and consistent performance. For the exam, know that Nitro is used in most current generation instances (e.g., M5, C5, R5) and enables features like ENA (Elastic Network Adapter) and NVMe storage.

How do Reserved Instances and Savings Plans differ?

Reserved Instances (RIs) are tied to a specific instance family and size (e.g., m5.large) in a specific region. You commit to 1 or 3 years and get a discount. Convertible RIs allow you to change the instance family but with a lower discount. Savings Plans, on the other hand, commit to a dollar amount of compute usage per hour (e.g., $100/hour) and apply to any EC2 instance, Fargate, or Lambda usage. Savings Plans are more flexible but offer similar discounts.

What are the default vCPU limits for EC2 and how can I increase them?

By default, each AWS region has a limit of 5 vCPUs for On-Demand and Spot Instances. This limit applies to running instances. You can request a quota increase through the Service Quotas console. For Reserved Instances, you can purchase up to 20 vCPUs per region. These limits are important to know for exam scenarios where you need to launch many instances.

Terms Worth Knowing

Ready to put this to the test?

You've just covered EC2 Instance Types and Families — now see how well it sticks with free CLF-C02 practice questions. Full explanations included, no account needed.

Done with this chapter?