EC2 Instance Types: Overview

Amazon Elastic Cloud Compute is shortly called Amazon EC2 which is probably a web service that delivers secured and resizable compute capacity in the cloud. It is mostly designed to make out the web-scale cloud computing for the developers with ease. It is a very simple web service interface that allows one to obtain and configure required capacity with minimal friction. 

Amazon EC2 is here to deliver the wide selection of instance types which are probably optimized to fit various use cases. All the instance types have come up with various combinations like CPU, Storage, Memory and other networking capacities. It also gives flexibilities in selecting the right mix of resources for respective applications. For every type of instance, it includes one or more instance sizes that allow to scale up various resources as per the requirements to reach the target of workload. 

For each and every instance, Amazon EC2 provides a predictable and consistent amount of CPU capacity without any need of underlying hardware. It also delivers the required resources to host computer for every respective instance. 

Amazon EC2 - Instance types

Amazon EC2 Instance Types

The Amazon EC2 instance will provide a wide range of selection in the instance types which are specifically optimized to fit the various use cases. Generally, the types of instances will comprise various combinations of memory, networking capacity, CPU, storage that gives the flexibility in order to choose the perfect mix of resources for your applications. The each Amazon EC2 instance type will typically contain one or more instance sizes by allowing the resources to the targeted workload.

The EC2 instance types are generally categorized into 5 types by the Amazon. They are:

  1. General Purpose – (T2, M5, M4, M3)
  2. Computer Optimized – (C5, C4, C3)
  3. Memory Optimized – (X1, R4, R3)
  4. Accelerated Computing - (P3, P2, G3, F1)
  5. Storage optimized - (I3)
  6. Dense-storage Instances – (D2)

Compute-optimized Instances

1. General Purpose Instance

T2 Instance

T2 AWS instance is one of the best-performed instances which offers the baseline CPU performances with the effective capability. It has an ability to burst all the performances that are directed by the CPU credits. Generally, every T2 instances will get credits based on the established rate and the size of an instance which are accurately called as the CPU credits. These type of instances will be a great option especially for the workloads, which doesn't require more CPU consistent and well suitable for the small databases, web servers, and developer environments.

Features of T2: 

  • This whole application is built with the Extraordinary Regularity Intel Xeon Processors
  • It will measure the bandwidth of the central processing unit by getting the credits.
  • Consistently it will help the CPU in performing at the standard level
  • It will help in balancing the compute, network possessions and memory
  • It is the low-cost AWS Instance Types which is used for ordering general types. You will also get an eligible Free Tier which is merely a t2. Micro

M5 Instances

The next available classification of Instance types under the General Purpose Instance types are the M5 Instances which are the latest generation of the General Purpose Instances. These Instances and the instances of this family provide the perfect balance amongst the Computational, memory and network resources – hence forms the ideal match for many applications.

Features of M5: 

  • It hosts 2.5GHz Xeon Platinum 8175 processor with the latest Intel advanced Vector extension (AXV-512) instruction set
  • Larger and newer instance sizes, m5.24xlarge with an offering of 96 vCPUs and 384GB memory
  • EBS-optimized by default and also higher EBS performances on smaller instance sizes
  • Provides up to 25GBps network bandwidth using enhanced networking
  • It requires HVM AMIs to include drivers for ENA and NVMe
  • These are powered by the new light-weight Nitro systems which are a combination of dedicated hardware and lightweight hypervisors.

M4 Instances

These instances are described as one of the leading and best general-purpose instances. It will offer a great network, memory balance by computing all the resources for several applications. They are also providing the increased networking facility which is 4 times equal to the packet rate along with guaranteed reliable latency with a high network. These instances are well devoted to the network capacity for input/output operations and EBS optimized.

M4 instances types:

  • Large
  • Xlarge
  • 2xlarge
  • 4xlarge
  • 10xlarge

Features of M4:

  • Hosts a 2.3 GHz Intel Xeon® E5-2686 v4 (Broadwell) processors or 2.4 GHz Intel Xeon® E5-2676 v3 (Haswell) processor
  • These Instances are EBS-optimized by default at no additional cost
  • Provides support for Enhanced Networking
  • Balance of compute, memory, and network resources

M3 Instance

Basically, the M3 instance type is used to balance the network, memory and compute the resources according to it. All these resources are used for the general purpose of virtual machines and mostly to the EC2 instances. These types of instances are well suitable for the small and mid-sized databases for the data processing jobs, which may require the cluster computing and extra money.

Features of M3:

  • A high-frequency Intel Xeon E5-2670 v2 (Ivy Bridge) processor
  • SSD-based instance storage for faster I/O performance
  • Balance of compute, memory, and network resources.

2. Compute Optimized Instances

After the General Purpose Amazon EC2 Instance types, comes the Compute-optimized instances which are considered ideal for compute-bound applications. These benefit from the higher performance processors that it comes packed with and considering the same, the following applications are the best-suited ones to run on these Instance types:

  • Batch processing workloads
  • Media transcoding
  • High-performance web servers
  • High-performance computing (HPC)
  • Scientific modelling
  • Massively multiplayer online (MMO) gaming servers and ad serving engines
  • Machine learning inference and other compute-intensive applications

Alongside the most suitable deployments on these Instance types, let us take a better look at the infrastructure that constitutes these as such:

  VPC Only EBS Only SSD Volumes Placement Group HVM Only Enhanced Networking
C3     Yes Yes   Intel 82599 VF
C4 Yes Yes   Yes Yes Intel 82500 VF
C5 Yes Yes   Yes Yes ENA

C5 Instances

The instance of C5 is completely optimized for computing-intensive workloads and also delivers cost-effective high performance with low rates. The main use cases are with high-performance web servers, batch processing, scientific modelling, high-performance computing (HPC), distributed analytics, ad serving, highly scalable multiplayer gaming and videos encoding etc. 

C4 Instances

Subscribe to our youtube channel to get new updates..!

However, these types of instances are the addition to compute-optimized instances which are features with the max number of performance processors at the lowest amount of prices. These types of instances are well suitable for the compute-bound application types which mat derives all the advantages of high-performance processors. Mostly the C4 instance types are dependent on the custom processors that are optimized for EC2. The Intel boost technology will help the clock speed of C4 instances to touch.

C4 instances types:

  • Large
  • Xlarge
  • 2xlarge
  • 4xlarge
  • 8xlarge

C3 Instances

C3 instance type is greatly used to offer the CPU instance storage based on the SSD which has a twice the memory and faster processors when compared to C1. These types of instances are well suitable for the applications that can derive the advantage from the compute capacity of memory, custom intensive application with high performing web servers. However, these are the latest compute-optimized instances from the AWS, but they provide high performances at affordable prices and well fitted for the intensive workloads.

C3 instances types:

  • Large
  • Xlarge
  • 2xlarge
  • 4xlarge
  • 8xlarge

Now, let us go through the salient features of Compute Optimized Amazon EC2 instances.

  • Amongst the three classifications under the Compute Optimized Amazon EC2 Instance types, only C4 and C5 instances require 64-bit HVM AMIs. They have high-memory (up to 144 GiB of RAM) and require a 64-bit OS. HVM AMIs provide superior performance in comparison to para-virtual (PV) AMIs on high-memory instance types.
  • Exclusively with the C5 Instance types, EBS volumes are exposed to the external world as NVMe block devices. These require EBS backed AMIs with NVMe and ENA drivers installed. Out of the bunch of available options, only the following meets these requirements:
    • Amazon Linux 2014.03 and above
    • Ubuntu 14.04 and above
    • SUSE Linux Enterprise Server 12 and above
    • Red Hat Enterprise Linux 7.4 and above
    • CentOS 7 and above
    • FreeBSD 11.1-RELEASE
    • Windows Server 2012 R2
    • Windows Server 2016
  • Especially the C5 instances do provide support to a maximum number of 27 EBS volumes plus ENI attachments. 
  • And last but not the least, specifically for the C5 instances – they should have acpid installed to support clean shutdown through API requests.

3. Memory Optimized  Instances

After the first two sets of Amazon EC2 Instance types, next comes the Memory optimized instances that are designed to deliver the fastest performances for workloads that process large data sets in memory. In order to achieve this, there is a further classification of Amazon Instance types to cater specific needs and requirements of the customers.

X1 Instances

In general, these types of instances are suited well for the large-scale, enterprise-class and in-memory application at affordable prices with each GiB RAM among all the AWS EC2 instance types. It is defined as one of the latest addition of EC2 instance group that is intended to perform the high scale executing and in-memory applications over the AWS cloud. When compared to the other AWS EC2 instances, this X1 instances will offer the lowest prices for each GiB of RAM and well suited to execute the in-memory databases and applications. All these instances are SAP certified in order to run the production environments perfectly.

X1 instances are best suited for the following sets of applications:

  • In-memory databases as like SAP HANA.
  • Big-data processing engines as like Apache Spark or Presto.
  • High performance computing (HPC) applications.

X1e Instances

X1e Instance types are best suited for the following sets of applications:

  • In-memory databases such as SAP HANA
  • Memory-intensive enterprise applications

R4 Instances

The instances of R4 is completely optimized with memory intensive applications and mostly delivers the best price for GiB of RAM than R3. 

Blatantly, the R4 Instance types are best suited for the following set of applications:

  1. High performance relational or the RDBMS databases as like MySQL.
  2. High performance NoSQL databases as like MongoDB, Cassandra.
  3. Distributed web scale cache stores that provide in-memory caching of key-value type data (Memcached and Redis).
  4. In-memory databases using optimized data storage formats and analytics for business intelligence (SAP HANA can be considered one of the best examples in this category).
  5. Applications performing real-time processing of big unstructured data (financial services, Hadoop/Spark clusters).
  6. High-performance computing (HPC) applications.
  7. Electronic Design Automation (EDA) applications.

R3 Instances

Generally, the R3 Instances are fully equipped in order to run a memory intensive application, which is less expensive when compared to the other instances. It will offer the greater performance with more bandwidth, supported latency, increased performance and great EBS optimization support. These types of instances are well suitable for in-memory analytics databases in order to acquire the maximum memory performances with the gained high price of units. They can also support the HVM machine images only.

R3 instances are well suited for the following applications:

  • High performance relational databases as like MySQL
  • High performance NoSQL databases like MongoDB, Cassandra
  • In-memory analytics.
  • Genome assembly and analysis.
  • Enterprise applications as like Microsoft SharePoint.

Following is the tabular forum that explains in detail about the features in a brief gist for the Memory Optimized Amazon EC2 instance types (though almost all the well suited applications look to be the same for almost all the instance types, the following table will provide you the best out of each of them):

Instances Type VPC Only EBS Only SSD Volumes Placement Group Enhanced Networking
R3     Yes Yes Intel 82599 VF
R4 Yes Yes   Yes ENA
X1 Yes   Yes Yes ENA
X1e Yes   Yes Yes ENA

4. Accelerated Computing

The next kind of Amazon instances that we are going to take a look at are called the Accelerated Optimized Amazon EC2 instances or the Optimized GPU instances. These instances are best found to be used where you want to have high processing capabilities – as these provide with access to hardware based compute accelerators as Graphics Processing Units (GPUs) or Field Programmable Gate Arrays (FPGA). The Accelerated Optimized Amazon EC2 instances enable the parallel processing to the most, for higher throughputs on compute-intensive workloads.

The way these Amazon instances work are a bit different from the rest of the amazon instance types – accelerated computing instance families put to use their hardware accelerators or co-processors to the maximum use to provide and perform some functions as like the floating point number calculation or the graphics processing or even the data pattern matching. Based on the ways and the means that the instance families work, there is a broader classification that has been made for these instances, which we will be discussing below:

P3 Instances

The classification under the Accelerated Optimized Amazon EC2 Instances, comes the first type – the P3 instances. These instances use NVIDIA Tesla V100 GPUs and are specifically designed for general purpose GPU computational needs using also CUDA or OpenCL programming models or machine learning framework. These P3 instances provide with the required higher bandwidths, networking, powerful half, single, double precision floating point capabilities and also 16GB memory per GPU. The configuration described above will be considered perfect or an ideal configuration for deep learning, computational fluid dynamics, computational finance, seismic analysis and so on and so forth.

The following are the significant points which we need to know about P3 Instances,

  • P3 Instances support enhanced networking with Elastic Network Adapter
  • P3 Instances are EBS-Optimized by default
  • P3 Instances support NVIDIA NVLink peer to peer transfers
  • The p3.16xlarge instance type provides the ability to an operating system to control processor C-states and P-states.

P2 Instances

Coming to the next classification item under the Accelerated Optimized Amazon EC2 Instances, comes the P2 Instances which use NVIDIA Tesla K80 GPUs and are designed specifically for the general GPU computing using the CUDA or OpenCL programming models. These P2 Instances provide the highest possible bandwidth networking, powerful single and double precision floating point capabilities. Hosts a 12GB of memory per GPU to make them an ideal choice for deep learning, graph databases and also for high performance databases.

The following are the significant points which we need to know about P2 Instances,

  • P2 Instances support enhanced networking with Elastic Network Adapter
  • P2 Instances are EBS optimized by default
  • There are several GPU setting optimizations which can be applied to achieve better performances on P2 Instances
  • P2 Instances support NVIDIA GPUDirect peer to peer transfers
  • The p2.16xlarge Instance type provides the ability for an operating system to take control over the Control processor C-states and the P-states

G3 Instances

Coming to the next set of classification of the Accelerated Optimized Amazon EC2 Instances, comes the G3 Instances that come along with NVIDIA Tesla M60 GPUs that prove to cost effective, highly performing platform for Graphics applications using DirectX or OpenGL. These G3 Instances provide NVIDIA GRID Virtual Workstation related features as like support for 4 monitors with resolutions to the range of 4096 x 2160. The G3 Instances are pretty well suited for 3D Visualizations, graphics-intensive remote workstations, 3D rendering, Video reality, video encoding and etc.

The following are the significant points which we need to know about G3 Instances,

  • G3 Instances support enhanced networking with the Elastic Network Adapter
  • G3 Instances are EBS-optimized by default
  • G3 instances provide their support to NVIDIA GRID Virtual Workstation and NVIDIA GRID Virtual applications as well
  • There are pretty long list of GPU settings or optimizations that can be applied on the G3 Instances to provide best of the performance on them
  • The g3.16xlarge Instance type also provides the most powerful ability for an OS to gain control over control processer C-states and P-states as well.

F1 Instances

The classification under the Accelerated Optimized Amazon EC2 Instances comes to the first type – the F1 instances. These instances use the Xilinx UltraScale+ VU9P FPGAs (Field Programmable Gate Arrays) to provide the required acceleration in the computational power with the use of intensive algorithms (like the data-flow or highly parallel operations which are not generally suited for the general-purpose CPUs). 

The developers can make use of the FPGA developer AMI and AWS hardware development kit to create and invent the custom hardware acceleration techniques for using on the F1 instances. These include the full-cycle FPGA development in the cloud and cloud alone. With the use of these tools, the developers can create and also share the Amazon FPGA images which can further be loaded into the other F1 instances.

5. Storage Optimized

The next kind of Amazon instances that we are going to take a look at are called the Storage Optimized Instances. These Amazon instances are specifically designed to work with workloads which require the highest of the order of sequential read and write accesses to huge data sets on local storages. These are said to be optimized to deliver tons of thousands of low-latency and also random I/O operations per second to all the applications that are hosted upon these instances.

D2 instances which we are going to take a deeper look into, in the next section of the article are very well suited for the following kinds of applications:

  • Massive parallel processing data warehouse systems
  • MapReduce and Hadoop distributed computing systems
  • Log or data processing applications/systems

Apart from these, there can be two more types of instances that can be classified into this section of Amazon EC2 instances, namely H1 instances and the I3 instances. Let us take a closer look at each of these instances and also let us see what each of the instance types brings to the table:

As discussed, the H1 instances are very well suited for the following kinds of applications:

  • Data intensive workloads that deal with the likes of MapReduce and distributed file systems.
  • Applications or systems that require sequential access to humongous loads of data on direct-attached instance storage.
  • Applications or systems that require high throughput access again to the humongous quantities of data.

On the other hand, the next kinds of Amazon instances – the I3 instances find its usage in these following scenarios:

  • High-frequency OLTP systems (Online Transaction Processing systems)
  • The traditional relational databases
  • The NoSQL databases
  • Cache for in-memory databases (example, Redis)
  • Data warehousing applications
  • Low latency ad-tech serving applications

Following are the pointers denoting the storage optimized instances:

The following table shows that the primary storage of the I3 instances is basically on the non-volatile memory express (NVMe) SSD instance store volumes, whereas there is no such specification on the H1 instances. As per the table below, both the H1 and the I3 instances can be enabled with the enhanced networking abilities, which allows and provides significantly higher packet per second (PPS) performance, and hence lower network lags or latencies.

Instances type VPC Only SSD Volumes Placement Group Enhanced Networking
H1 Instances Yes   Yes ENA
I3 Instances Yes NVMe Yes ENA

6. Dense-storage Instances

There are innumerable customers out there in the current market, where there would be other AWS users who want to store or process humongous amounts of data in the cloud. The Dense storage amazon EC2 instances are specifically designed to cater needs of such customers who will to store and process huge amounts of data – by providing them with additional options for processing multi-terabyte data sets.

D2 Instances

These storage optimized instances will offer up to 48TB by providing the huge disk by providing them at an affordable price for each disk type performance on AWS EC2 instances. The D2 instances are specifically designed for workloads which are greater sequential write and the get the read access for large data storage. All these are well-suited for data warehouses, processing computing and Hadoop. These instances are optimized by EBS which offers dedicated block storage for your AWS account that ranges from 750 Mbps to 4000 Mbps with free usage. It also allows users to access them regularly by achieving great network traffic.

Instance Name vCPU Count RAM Instance Storage Network Performance Disk read-throughput Linux On-Demand Price
d2.xlarge 4 30.5GB 6TB Moderate 437 MBps $0.690
d2.2xlarge 8 61GB 12TB High 875 MBps $1.380
d2.4xlarge 16 122GB 24TB High 1750 MBps $2.760
d2.8xlarge 36 244GB 48TB High 3500 MBps $5.520

With all these features discussed, you can also launch multiple of these D2 instances in a placement group for high bandwidth low latency networking between the instances.

Following are also the features that come along with Amazon’s EC2 instances:

  • Amazon EBS-Optimized by default
  • Bringing Power to the people
  • Available worldwide now
  • Storage

AWS EC2 Instance Sizes and Amazon EC2 Instance Storage 

The instance store is here to provide temporary block-level storage for the respective instance. The complete storage is located on certain disks which are attached to the computers in a physical way. The instance can easily store one or else number of instance storage volume which is completely exposed to the block devices. 

What is Amazon EC2 Reserved Instance?

The Amazon EC2 Reserved Instance (RI) is complete of importance which is compared with On-Demand pricing that provides a capacity reservation which is generally used for specific Availability Zone. 

Amazon EC2 Instance Scheduled For Retirement

This Amazon EC2 instance is completely scheduled with respective retirement when AWS detects an irreparable failure of the hardware hosting the instance. 

Amazon EC2 Instance Pricing

One can easily pay only for the usage of EC2 instance where the costs and complexities of planning, purchasing, and maintenance of hardware that can easily transform with the certain fixed amount of costs.

Conclusion:

In this article, we have very thoughtfully introduced the readers to the concepts of Amazon’s Elastic Compute Cloud (Amazon EC2) ecosystem and also have introduced you to various other factors that a user should be bothered about rather than what is the storage occupied or how is the networking provided or used – as all these statistics are all managed by Amazon’s EC2 ecosystem, thus relieving the end-user of the overhead of maintaining the physical systems and hardware.

With all those discussed, we have also introduced to the many possible options of Amazon instances provided by the Amazon EC2 ecosystem. We have discussed the features, advantages, disadvantages and also the pricing details about all these instances and their types. Hope the concepts are all clear and you were able to understand in the very first go if you find any mistakes and if you feel that this needs to be improved further – please feel free to provide comments and we shall look into the same.

 

List of AWS Courses offered By Mindmajix: