AWS EC2 — Trivia & Interesting Facts¶
Surprising, historical, and little-known facts about AWS EC2.
EC2 was the second AWS service ever launched¶
Amazon Elastic Compute Cloud launched on August 25, 2006, just five months after S3. The initial offering had a single instance type (m1.small) with 1.7 GB of RAM and a single virtual CPU. There was no SLA, no load balancer integration, and instances ran only in a single US data center.
The original EC2 ran on Xen, not Nitro¶
For its first 11 years, EC2 ran entirely on the Xen hypervisor. AWS began migrating to its custom Nitro hypervisor in 2017, which offloads networking, storage, and security to dedicated hardware. By 2024, virtually all new instance types run exclusively on Nitro.
Spot Instances were inspired by electricity markets¶
Launched in December 2009, EC2 Spot Instances use a pricing model borrowed from wholesale electricity markets. Customers bid on unused capacity, and prices fluctuate based on supply and demand. Spot pricing can offer discounts of up to 90% compared to On-Demand, though instances can be reclaimed with a two-minute warning.
The i3.metal instance type has 512 GB of RAM and 8 NVMe drives¶
When AWS introduced bare-metal instances in 2017, it was a philosophical shift. Customers get direct hardware access with no hypervisor overhead, running on the same Nitro platform. The i3.metal was the first, aimed at workloads that need hardware-level features like performance counters or custom hypervisors.
EC2 instance metadata service caused some of the biggest cloud breaches¶
The Instance Metadata Service (IMDS) at 169.254.169.254 was implicated in the 2019 Capital One breach, where an SSRF vulnerability allowed an attacker to retrieve IAM role credentials. This led AWS to develop IMDSv2, which requires a PUT request to obtain a session token before metadata can be accessed.
There are over 750 EC2 instance types¶
As of 2024, AWS offers more than 750 distinct instance type and size combinations across families like general-purpose (M), compute-optimized (C), memory-optimized (R/X), storage-optimized (I/D), and accelerated computing (P/G). The naming convention encodes generation, family, and optional features — for example, c7gn.xlarge means compute-optimized, 7th generation, Graviton, network-enhanced.
Graviton processors saved AWS customers 40% on compute costs¶
AWS designed its Graviton ARM-based processors in-house, starting with Graviton1 in 2018 (based on the Annapurna Labs acquisition in 2015). Graviton3, launched in 2022, delivers up to 25% better compute performance than Graviton2 while using 60% less energy for the same workload.
EC2 placement groups have three distinct strategies¶
Cluster placement groups pack instances physically close for low-latency networking (sub-microsecond). Spread placement groups ensure instances land on different physical hardware (max 7 per AZ). Partition placement groups divide instances into logical partitions on separate racks, designed for large distributed workloads like HDFS or Cassandra.
You can hibernate an EC2 instance like a laptop¶
EC2 Hibernation, launched in 2018, writes the contents of instance RAM to the root EBS volume, then stops the instance. On restart, the RAM contents are loaded back, and processes resume where they left off. This feature only works with instances that have 150 GB or less of RAM and encrypted root volumes.
The first EC2 price was $0.10 per hour¶
When EC2 launched in 2006, the m1.small instance cost $0.10/hour ($72/month). The equivalent modern instance (t3.small with 2 GB RAM) costs roughly $0.0208/hour — an 80% price reduction over 18 years, despite offering significantly more compute power per dollar.