EC2 Introduction

“Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers. Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon’s proven computing environment.”

Umm…Okay?

Simply remember 3 words:

  • Elastic: You can easily scale it horizontally and vertically, i.e. increase the number of servers or increase their capacity.
  • Cloud: It runs in the cloud ☁️
  • Compute: It provides computing power, aka processing power (along with Memory, Storage, etc. ofcourse)

You can also pick and choose from a plethora of options giving you options to choose if you need more processing power, RAM or storage. 

An ofcourse, AWS will give you a huge (~30%!) discount if you book the servers for 1, 3 or 5 years. This would make sense if you have, say, a company and plan on running your app for a few years at least.

Now there are 5 billing options:

  1. On Demand
  2. Spot Instances
  3. Savings Plans
  4. Reserved Instances
  5. Dedicated Hosts

On Demand

With On-Demand instances, you pay for compute capacity by the hour or the second depending on which instances you run.“

Spot instances

“Amazon EC2 Spot instances allow you to request spare Amazon EC2 computing capacity for up to 90% off the On-Demand price.”

This is essentially where you bid an amount and AWS finds an instance at your price if it is available. The service will be terminated when the price goes up.

Savings Plans

Savings Plans are a flexible pricing model that offer low prices on EC2 and Fargate usage, in exchange for a commitment to a consistent amount of usage (measured in $/hour) for a 1 or 3 year term.”

Reserved Instances

Reserved Instances provide you with a significant discount (up to 75%) compared to On-Demand instance pricing. In addition, when Reserved Instances are assigned to a specific Availability Zone, they provide a capacity reservation, giving you additional confidence in your ability to launch instances when you need them.”

Dedicated Hosts

“A Dedicated Host is a physical EC2 server dedicated for your use.”

Alright then, let’s get started with the Lab!