Skip to the content.

AWS Compute

This is not an exhaustive documentation of all the existing AWS Services. These are summarized notes for the AWS Certifications.
To see the complete documentation, please go to: AWS documentation

Compute

Compute resources can be considered the brains and processing power required by applications and systems to carry out computational tasks via a series of instructions. They are closely related to common server components such as CPUs and RAMs.

A physical server within a data center would be considered a Compute resource, as it may have multiple CPUs and many gigs of RAM to process instructions given by the operating system and applications

Commonly used compute services:

To learn more, check out the following links:

Back to the top

Amazon Machine Images (AMIs)

An AMI provides the information required to launch an instance. These are basically “disk images” which is used to spin up the instances.

Main categories:

Back to the top

Default Limits

Below are some limitations for EC2. Note that these may change. For more information, see Amazon EC2 service quotas.

Resource Limits
Instance 20 instances per region
Snapshots 10000 snapshots per region
EC2 Auto Scaling Groups 200 per region
Scaling policies per Auto Scaling group 50
Scheduled actions per Auto Scaling group 125
Lifecycle hooks per Auto Scaling group 50
SNS topics per Auto Scaling group 10
Classic Load Balancers per Auto Scaling group 50
Target groups per Auto Scaling group 50

Back to the top

Placement Groups

Placement groups are a logical grouping of instances in one of the following configurations:

Cluster Placement Group (single-az+single-rack)

Partition Placement Group (multi-az+separate racks)

Spread Placement Group (multi-az+separate rack+1 instance per rack)

Table:

Back to the top

Status Checks

System Status Checks

Instance Status Checks

VM Import/Export

Easily import virtual machine images from your existing environment to Amazon EC2 instances and export them back to your on-premises environment.

To learn more, please see VM Import/Export.

User Data and Metadata

Instance Metadata

These are the data about your instance that you can use to configure or manage the running instance.

User Data

EC2 User data is supplied by the user at instance launch in the form of a script.

Bootstrapping runs the provided script, so anything you can accomplish in a script you can accomplish during bootstrapping:

Back to the top

EC2 Instance Types

Instance Type Naming Convention

Instance Types based on pricing

Reference: On-Demand vs Reserved vs Spot AWS EC2

Instance Types based on purpose

Reference: Amazon EC2 Instance Types

Reserved Instance Types

Standard RIs

Convertible RIs

Scheduled RIs

Dedicated Instances

By default, EC2 instances run on shared tenancy hardware.

Dedicated Instances are EC2 instances that run on hardware that’s dedicated to a single customer. Dedicated Instances that belong to different AWS accounts are physically isolated at a hardware level, even if those accounts are linked to a single payer account. However, Dedicated Instances might share hardware with other instances from the same AWS account that are not Dedicated Instances.

A Dedicated Host is also a physical server that’s dedicated for your use. With a Dedicated Host, you have visibility and control over how instances are placed on the server. For more information, see Dedicated Hosts.

Features:

To learn more, please see Dedicated Instances

Back to the top

EC2 Networking

IP Addresses

EC2 instances are not aware of their public IP address. It only knows it’s private IP address. On the other hand, the Internet Gateway is the only component that knows all of the public IP addresses of instances.

Enhanced Networking

Uses single root I/O virtualization (SR-IOV) to provide high-performance networking capabilities on supported instance types.

Features:

Elastic Network Interface (ENI)

ENIs are logical networking components in a VPC that represents a virtual network card.

Elastic Network Adapter (ENA)

Used for enhanced networking.

Elastic Fabric Adapter (EFA)

An EFA is similar to ENA but with added capabilities.

ENI vs ENA vs EFA

Back to the top

EC2 Storage

Instance Store

Instance store provides temporary block-level storage for your instance. This storage is located on disks that are physically attached to the host computer.

Operation Description  
Reboot Rebooting an instance does not shut down the instance; if an instance reboots (intentionally or unintentionally), data on the instance store persists. C1
Stop/Terminate The data in an instance store persists only during the lifetime of its associated instance. If an instance is stopped or terminated, then the instance store does not persist  

To learn more, please see Amazon EC2 instance store.

Amazon Elastic Block Storage (EBS)

Persistent block storage volumes. You can attach multiiple Ebs volumes to a single instance.

EBS Types

EBS Encryption

EBS Snapshots Point-in-time backup copy of an EBS volume that is stored in Amazon S3.

To learn more, please see Amazon EBS volumes.

EBS Migration EBS volumes are locked to a specific availability zone. To migrate an EBS volume to a different AZ or region:

Amazon Elastic Filesystem (EFS)

Amazon EFS provides scalable file storage for use with Amazon EC2. You can use an EFS file system as a common data source for workloads and applications running on multiple instances.

To learn more, please see Amazon EFS.

Back to the top

Auto Scaling Group

An Auto Scaling group contains a collection of EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management.

Auto Scaling Group in AWS

|| |-|

Auto Scaling Group in AWS with LoadBalancer

|| |-|

Launch Configuration

The launch configuration is referenced by the Auto Scaling group instead of being part of the Auto Scaling group because:

Scaling Policies

Scaling policies determine when, if, and how the ASG scales and shrinks.

Scaling Cooldown

After your Auto Scaling group launches or terminates instances, it waits for a cooldown period to end before any further scaling activities initiated by simple scaling policies can start.

|| |-|

The intention of the cooldown period is to prevent your Auto Scaling group from launching or terminating additional instances before the effects of previous activities are visible.

Scaling Plans

Scaling Plans define the triggers and when instances should be provisioned/deprovisioned

Lifecycle Hooks

Amazon EC2 Auto Scaling offers the ability to add lifecycle hooks to your Auto Scaling groups.

A popular use of lifecycle hooks is to control when instances are registered with Elastic Load Balancing.

|| |-|

By adding a launch lifecycle hook to your Auto Scaling group, you can ensure that your bootstrap scripts have completed successfully and the applications on the instances are ready to accept traffic before they are registered to the load balancer at the end of the lifecycle hook.

Auto Scaling Alarms

It is possible to scale an ASG based on CloudWatch alarms which monitors a set metric, such as average CPU. Note that metrics are computed for overall ASG instances.

|| |-|

Back to the top

Elastic Load Balancer

Elastic Load Balancers(ELB) automatically distribute incoming application traffic across multiple targets and virtual appliances in one or more Availability Zones (AZs).

How Elastic Load Balancing works

Please see How Elastic Load Balancing works.

Types

Health Checks

Listeners

A listener is a process that checks for connection requests, using the protocol and port that you configure. The rules that you define for a listener determine how the load balancer routes requests to the targets in one or more target groups

Rule conditions

There are two types of rule conditions.Each rule can have up to one host condition and up to one path condition

Stickiness

Stickiness ensures that the same client is always redirected to the same instance behind the loadbalancer.

Cross-Zone Loadbalancing

Load is distribtued evenly across all registered instances in all availability zone.

|| |-|

SSL Certificates

SSL certificates can be used to encrypt the traffic between clients and the loadbalancer.

|| |-|

The loadbalancer uses an X.509 certificate and can eb managed using AWS Certificate Manager (ACM).

Server Name Indication (SNI)

SNI solves the problem of lading multiple SSL certificates onto one web server. By using SNI, clients can indicate the hostname to connect to. It supports multiple secure websites using a single secure listener.

|| |-|

Connection Draining

Refers to the time to complete “in-flight requests” while the instance is de-registering or unhealthy.

|| |-|

When enabled, new requests will not being sent to the intance being de-registered.

Server Order Preference

Ensures that load balancer determines which cipher to use for SSL connection. Elastic Load Balancing supports the Server Order Preference option for negotiating connections between a client and a load balancer.

Back to the top