March 9, 2022
The Definitive Guide to AWS EC2 Instance Types
Amazon allows you to run different AWS EC2 instance types in the AWS cloud, giving you much needed flexibility. You can select an EC2 instance that best meets your requirements at the right price. However, making this choice can be challenging as there are some 50 different types in AWS. Each type, in turn, come with different hardware capacity options at different prices. This blog post explains AWS EC2 instance types and categories as well as provides come recommendations to help you make the right decision when you need to run an instance in the Amazon cloud.
Table of Contents
- Classification of AWS EC2 Types
- What Are the Different AWS EC2 Instance Types?
- How to Choose the Right Type of an EC2 Instance?
Classification of AWS EC2 Types
At first glance, AWS EC2 instance names look confusing. AWS EC2 instance types are represented as a mix of letters and digits. However, there is a logic behind the naming convention for AWS EC2 instances, and the name contains instance specifications.
AWS EC2 instances are virtual machines running on physical servers in Amazon data centers. Servers have different hardware sets, and EC2 instances can use different amounts of hardware capacity. They are reflected in instance types and names.
An EC2 instance type consists of multiple parameters:
- Instance family
- Instance generation
- Additional capability
- Instance size
Let’s break down instance naming using the example of the R5d.xlarge instance.
An EC2 instance family or instance class represents instances with a similar purpose. It also identifies the ratio between hardware components (such as processor, memory and storage) in the instance specification. R is the instance family or instance class in our example. This is a generic family for memory-optimized instances.
Each family provides its own hardware-backed features. One instance type can contain one or multiple families. One instance family can belong to only one EC2 instance type.
An instance generation represents instances of the same family running on servers of different hardware generations in AWS. You may notice that many instance families have multiple generations (newer and older ones). This is true for instance families that have been available for a long time now. As Amazon deploys new servers in their data centers to provide the resources for running more instances by customers, these new servers have new hardware that is usually better than that of previous generations.
Usually, the last two or three generations are available. In our example, 5 is the instance generation of the R5d.xlarge instance. As of February 2022, 6 is the latest generation for instances of the R family with generations 4 and 5 also still available.
In general, use the latest generation for your instances as it provides the best pricing and efficiency. It makes sense to use an older generation if you need to run EC2 instances on servers with specific hardware. Currently, the generation range for AWS EC2 instances is from 1 to 6, but generations 1, 2 and 3 may no longer be available for many instance types.
Additional capability represents additional hardware features for AWS machine types. The letters used in the instance name and the associated properties are explained in the table below. The bold letters can help you remember the associations.
|d||Local NVMe SSD storage|
|g||Graviton processor (ARM)|
In our R5d.xlarge instance, d represents the additional capability. This means that this instance uses local Non-Volatile Memory Express (NVMe) solid-state drive (SSD) storage, which provides the highest performance of the storage subsystem for the instance.
One EC2 instance type can contain multiple additional capabilities, for example, p3dn.24xlarge.
The AWS EC2 instance size shows the number of hardware resources (capacity) provisioned to the instance. Different AWS instance sizes can use the same hardware but with different scales. Sometimes instances of different sizes can run on different hardware, for example, use SSD or HDD storage devices. A simple example is the amount of memory. The lowest instance size contains the lowest amount of memory, and larger AWS EC2 instance sizes contain proportionally more memory.
For more convenience, let’s look at four AWS EC2 instance sizes for R5d instances and visualize them in the image below.
- xlarge is the smallest instance in our EC2 instance comparison used in this example, and this instance size fills the lowest area of a rectangle.
- 2xlarge occupies double the area in the rectangle compared to the R5d.xlarge instance.
- 4xlarge is four times larger than R5d.xlarge and twice as large as R5d.2xlarge.
- 8xlarge has a capacity equal to eight R5d.xlarge instances, four R5d.2xlarge instances or two R5d.4xlarge instances.
As you can see, each larger instance size has twice the CPU, memory and storage. The price also increases proportionally and is twice higher for each larger instance compared to its smaller “neighbor”. See more details in the table below.
|vCPU||RAM (GB)||Storage (GB)||Network (Gbit/s)||EBS Bandwidth||Price USD/h (% increase)|
|r5d.xlarge||4||32||1 x 150||Up to 10||Up to 4750||0.288|
|r5d.2xlarge||8||64||1 x 300||Up to 10||Up to 4750||0.576 (+100%)|
|r5d.4xlarge||16||128||2 x 300||Up to 10||4750||1.152 (+100%)|
|r5d.8xlarge||32||256||2 x 600||10||6800||2.304 (+100%)|
Notice that there can be intermediate sizes, for example, r5d.12xlarge, which is between r5d.8xlarge and r5d.16xlarge. The R5d instance family also contains sizes smaller than R5d.xlarge and larger than R5d.16.xlarge. The number of sizes for 32-bit operating systems is limited when deploying an instance from an Amazon Machine Image (AMI).
Based on these parameters (family, generation, additional capabilities, and size), different types of AWS EC2 instances are optimized for different use cases and provide different combinations of processor, memory, storage, and graphics resources. You can select the instance type with the appropriate combination to fit your needs.
What Are the Different AWS EC2 Instance Types?
AWS EC2 instances are divided into multiple categories called instance types. Each type is optimized for specific use cases.
There are 5 AWS EC2 instance types:
- General Purpose
- Compute Optimized
- Memory Optimized
- Storage Optimized
- Accelerated Computing
As we mentioned earlier, each EC2 instance type contains multiple instance families and is available in different AWS instance sizes. In this section, we are going to cover instance types in detail, instance families, and their main features. We also provide examples of instances and information to help you remember the naming principle.
General Purpose instance type
General-purpose instances can be used in different scenarios and provide a balance of CPU (central processing unit), RAM (random access memory), and networking resources. This instance type can be used for applications consuming these resources in equal proportions. AWS EC2 instances of this type can be used to run a web server or deploy a code repository, or in other standard hosting scenarios, etc.
The general-purpose EC2 instance type contains four families (that is, subclasses or specific instance types): M, T, A and Mac.
M (Generic) instance family
The advantages of the M instance family are reliability, good baseline performance, and a balance between performance and price. Using M instances is the optimal solution for small and middle-sized databases. M instances are more stable compared to T instances. This is a good choice when you’re only starting to work in AWS EC2.
You can start by running an M5 instance. M5 instances use the Intel Xeon processor (3.1 GHz) with a new Advanced Vector Extension instruction set and are sufficient to carry out most of the usual tasks. M5a and M6a instances use AMD processors. M6g instances are powered by ARM processors (AWS Graviton 2).
Memory aid: M as in main computing
Examples: m4.large, m5.2xlarge, m5n.2xlarge, m5zn.12xlarge, m5zn.metal, m5n.large, m5n.24xlarge, m5n.metal, m6i.16xlarge, m5a.8xlarge, m6a.48xlarge, m6g.medium
What is M5 metal (as in the m5zn.metal instance example above)? The AWS EC2 metal is largest size , after 6xlarge and 12xlarge, for the M5zn family. Metal refers to AWS bare metal servers providing the highest performance and an operating system that is installed directly on hardware.
T (Burstable) instance family
T instances are usually used to run applications whose demands are stable, but that can sometimes have activity spikes. An example can be a website, and activity spikes when there are many visitors to the site. The bursting feature allows a site to survive higher demands without interrupting provided services and shutting down the instance. Most T instances run on Intel processors.
There is an interesting charging model based on CPU credits. When an instance is idle (running below the baseline), CPU credits are accumulated. When there’s a performance peak (the instance is running above the baseline), those CPU credits are utilized.
T3 and T3a instances are common examples of this subclass nowadays. The baseline for CPU frequency is 2.5 GHz, but you can burst CPU performance for a short time when software needs more CPU resources. This feature allows an instance to get extra resources on demand. T3a instances run on AMD processors (a - AMD). T4g machine types are powered by ARM processors (AWS Graviton 2).
Use cases: Running microservices, development environments, websites, low-latency applications, general applications, etc. You can also use T2 and T3 instances to run AWS EC2 backup software.
Memory aid: T as in transient, tiny or turbo
Examples: t2.nano, t3.micro, t3a.small, t4g.medium
What is the difference between EC2 T2 and T3?
T2 instances revert back to the basic performance computing baseline if CPU credits to burst are depleted. This mode is called standard mode.
T3 instances continue to run in the burst mode if there are no CPU credits and if this mode is required by applications running on the Amazon instance. This mode is called unlimited mode. However, you pay extra costs in this case. T3 instances use newer generation hardware to run.
A instance family
The A family instances are based on ARM processors (AWS Graviton processors with 64-bit Neoverse cores). Avoid using this instance family for regular tasks. ARM processors have performance disadvantages due to their architecture compared to traditional x86-64 processors. Use A instances in specific scenarios when you need to use only ARM processors for some tasks, such as developing applications for an ARM platform. Currently, the A1 instance family is available for the general purpose EC2 instance type in only generation 1.
Memory aid: A as in ARM
Examples: a1.large, a1.4xlarge, a1.metal.
Mac instance family
AWS EC2 Mac instances are based on Apple Mac Mini computers with Intel Core i7 processors (3.2 GHz / 4.6 GHz Turbo). These instances are powered by the AWS Nitro System, a combination of hardware and hypervisor. The Mac instance family allows you to run Mac OS in the cloud and use the instance for developing and testing applications for macOS, Safari, Apple TV, etc. Available operating systems are macOS 10.14, 10.15, 11, and 12 for the corresponding Amazon Machine Images. There is only one instance in this family as of the time of writing.
Compute Optimized instance type
The compute-optimized AWS EC2 instance type is intended for running computer-intensive tasks that require many CPU resources but don’t have high memory and storage requirements. This EC2 instance type provides access to many virtual processors with high performance. The frequency of processors is 3.6 GHz to 3.9 GHz.
The compute-optimized instance type is used for high-performance computing, web servers, data analytics, machine learning, scientific modeling, video rendering, and media transcoding. You may need to store large amounts of data used for these purposes in another location (another EC2 instance with a productive and high-capacity storage system, Amazon S3 bucket, etc.). However, you can create an Amazon instance with SSD storage and a 100-Gbit network by using c5n (n - network) or c5d (d – disk, SSD) instances.
What is the best EC2 instance for heavy CPU load? Consider running one of the instances of the compute optimized EC2 instance type.
The compute optimized Amazon EC2 instance type contains two families: C and Hpc.
C instance family
There are multiple instances with Intel Xeon (C6i, C5, C4) and AMD EPYC powerful processors (C5a) in the C instance family. C5n is the instance with advanced network performance compared with C5. You can use this instance to deploy a heavily loaded router, firewall, and other applications processing large amounts of network traffic. C6g, C6gn and C7g are powered with ARM processors and are intended for specific tasks.
Memory aid: C as in computing
Examples: c4.large, c5.xlarge, c5n.2xlarge, c5a.16xlarge, c6i.32xlarge, c6gn.medium, c6g.16xlarge
Hpc instance family
Hpc is the high performance computing family that belongs to the compute-optimized AWS EC2 instance type intended for high-performance compute-intensive workloads. Hpc6a is the instance of this family powered with AMD Epic 7003 processors (frequency is up to 3.6 GHz). You can use up to 96 virtual cores, 384 GB of memory, 25-Gbit network bandwidth, and 100-Gbit EFA (Elastic Fiber Adapter) network for ultra-high performance.
Memory aid: Hpc as in high-performance computing
Example: Hpc6a.48xlarge (this is the only Hpc instance available)
Memory Optimized instance type
The memory-optimized AWS EC2 instance type is aimed to provide more memory compared to other hardware parameters. RAM is important for applications, but some applications need more RAM and high Input/output (I/O) memory rate. In this case, you can use memory-optimized EC2 instances. Compared to AWS EC2 instance types, the memory-optimized type is recommended for processing big amounts of data in real-time, relational and non-relational databases.
Examples of applications with high memory requirements are Apache Spark, MS SQL Server, SQLite, Oracle, and other database servers. You can even host a database in RAM for ultra-high performance if the database size allows you to do this. However, you should consider storage and where to save the database data because RAM is flushed when you power off the instance. Amazon offers most memory-optimized AWS machine types with SSD storage, but there are instances without persistent storage. In this case, you need to save data to another EC2 instance via the network. Consider also AWS EC2 instance backup.
Memory-optimized AWS EC2 types contain three instance families: R, X and Z.
R instance family
The R family is a generic family of the memory-optimized EC2 instance type. You can set up to 768 GB of RAM. There are multiple available configurations of R instances including Intel processors, AMD processors, and advanced networking, which allow you to select the one to meet your requirements better: R6i, R5, R5a, R5b, R5n and R4.
Instances of the R5 and R6 series can be used for real-time big data analytics.
There are R6g instances for those who need the ARM architecture.
Memory aid: R as in RAM
Examples: r4.2xlarge, r5.large, r5a.16xlarge, r5ad.24xlarge, r5b.16xlarge, r5n.4xlarge, r5dn.2xlarge, r6i.16xlarge, r6gd.medium
X instance family
The X family provides a higher memory ratio, and X instances allow you to run more memory-intensive applications for data processing compared to the R instance family. You can use up to 3.9 TB of RAM for the X instances of the memory optimized EC2 instance type. Intel Xeon processors provide high CPU performance.
Memory aid: X as in Xtreme RAM
Examples: x1e.xlarge, x1e.32xlarge, x1.16xlarge
Z instance family
Instances of the Z family provide large CPU capacity in addition to large memory capacity and run on Intel Xeon processors with a frequency of up to 4.0 GHz and up to 384 GB of RAM.
The feature of this instance is local NVMe-based SSD storage. The disks are physically connected to the host server to provide better performance for the block storage used by this EC2 instance type of the Z family. Up to 1.8 TB of SSD storage is available. This instance type can be optimal for applications if the per-core application license price is high.
Z1d is the only instance available for this family, but it is available in multiple sizes.
Memory aid: Z as in zippy
High Memory instance family
The high memory EC2 instances provide the ultimate memory capacity and allow you to use up to 24 TB of RAM per instance. Network capabilities are enhanced (100 Gbit/s), storage bandwidth is up to 38 Gbit/s. The 8-socket platform with Intel Xeon (Cascade Lake) processors is used. You can use high memory Amazon instances for SAP HANA in-memory databases.
Examples: u-6tb1.metal, u-24tb1.metal, u-12tb1.112xlarge, u-6tb1.56xlarge
Storage Optimized instance type
The storage optimized AWS EC2 instance type provides the best storage capabilities for Amazon instances. It is common among Amazon users to attach an S3 bucket to an EC2 instance and use this bucket as storage. Buckets are an attractive option due to their friendly price compared to EBS volumes. S3 buckets are object storage, while EBS volumes are block storage. Buckets are used to store large amounts of data where the speed of data transferring is not critical, for example, backups. SSDs are not used for S3 storage. If you cannot use S3 buckets due to requirements or technical limitations, you should use EBS volumes with the needed configuration.
If you select storage-optimized instances among other AWS EC2 instance types, you get wide storage options with the ability to use both SSD and HDD based block storage for your Amazon instances. Input/output (I/O) performance is high for both hard disk drive (HDD) and SSD disk types taking into account the capabilities of each disk technology.
The storage-optimized EC2 instance type is optimal for applications running storage-intensive tasks requiring high sequential and random read/write access to large data sets on local storage. These instances run on powerful Intel Xeon processors, and there are no ARM processors. Instances of this AWS EC2 type can ensure low latency for disk operations.
You can use storage optimized instances for data warehousing, distributed file systems, relational databases, the cache for in-memory databases, big data analysis workloads, and other disk-intensive low-latency operations.
There are three families (classes) of storage optimized AWS EC2 instance types: D, I and H.
D instance family
D (dense) instances provide up to 48 TB of HDD storage per instance. You can create large volumes and use them to store data. The D instance family includes D2, D3 and D3en instances. D3 instances provide attractive HDD storage options with the lowest cost of all other EC2 families. You can use D instances to deploy HDFS and other distributed file systems.
Memory aid: D and in density, distributed file systems
Examples: d2.xlarge, d2.8xlarge, d3.8xlarge
I instance family
I instances provide the highest I/O parameters. The highest I/O parameters and the lowest latency are features of NVMe SSD drives used for instances of this type. Instances of the I family are best for high random I/O disk operations.
Memory aid: I as in input/output
Examples: i3.2xlarge, i3.metal, i3en.24xlarge, i4i.4xlarge
H instance family
H instances of the storage-optimized EC2 instance type provide the best performance for magnetic spinning disk drives (HDDs) for a low price. The balanced performance/price rate, high sequential disk I/O access, and high disk throughput are provided. HDD storage is local and this fact has a positive impact on disk performance (compared to using storage connected to a server via network). H instances support up to 14TB of local storage.
EC2 instances of the H family also offer higher amounts of RAM per terabyte of disk space and more powerful processors compared to other families (D and I) of the storage optimized EC2 instance type.
H1 is the only member of the H instance family. H1 instances run on servers with Intel Xeon E5 2686 E4 (2.3 GHz) processors. Instances of the largest sizes support 2.7 GHz for all cores and 3.0 GHz for all cores in Turbo mode. Network speed is up to 25 Gbit/s, which provides enhanced network capabilities to transfer large amounts of data.
Memory aid: H as in HDD
Examples: h1.2xlarge, h1.16xlarge
Accelerated Computing instance type
The accelerated-computing EC2 instance type provides advanced video acceleration features. The AWS EC2 instance types explained earlier offer different options with processor, memory and storage, but without video acceleration capabilities. Some tasks require a video card to run more efficiently. Accelerated computing instances are supplied with powerful video adapters and graphical processing units (GPU) to perform specific tasks such as 3D rendering, video processing, big data analytics, artificial intelligence (AI), machine learning (ML), parallel processing, and other graphics and GPU compute workloads (tasks with high graphic card requirements). Instances of the accelerated computing EC2 instance type (also called AWS GPU instance type) provide high-performance CPU, memory storage and networking options.
There are four families for the accelerated computing EC2 instance type: P, G, F and infl1.
P instance family
P instances are offered with multiple network interfaces with a speed of up to 400 Gbit/s and are best for parallel processing tasks and high-performance computing. Instances of the P family are powered with NVIDIA GPUs and Intel Xeon processors. There are three generations available: P2, P3 and P4.
Memory aid: P as in parallel computing
Examples: p2.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge
G instance family
G family instances are intended for graphics-intensive workloads, for example, 3D visualization. You can use a G instance as a remote workstation to run these tasks. G instances are also optimized for machine learning tasks. Network bandwidth up to 100 Gbit/s and NVMe storage devices allow you to get high performance.
You can select the needed instance with Intel Xeon or AMD EPYC processors. Instances having “g” in the name are powered with ARM processors. The available instances of the G family are G3, G4ad, G4dn, G5g and G5.
Memory aid: G as in graphics intensive workloads
Examples: g3s.xlarge, g3.4xlarge, g4ad.2xlarge, g4dn.16xlarge, g5.48xlarge, g5g.2xlarge
F instance family
F instances provide an ability to use customizable hardware acceleration with Field Programmable Gate Arrays (FPGAs). You can use programmable hardware for application acceleration. The F family includes only F1 instances with a high-frequency Intel Xeon E5-2686 v4 (Broadwell) processor, enhanced networking, and NVMe SSD storage to achieve excellent overall performance.
FPGA and hardware developer kits are available for software developers using different environments. Developers can program logic functions and implement them in application-specific integrated circuits. You can create an Amazon FPGA Image (AFI) after the configuration of an F1 instance is finished and deploy this image to another F1 instance.
Common use cases of F1 instances are big data analytics, genomic processing, complex science, real-time video processing, etc.
Memory aid: F as in field, F1 as in Formula 1.
Examples: f1.2xlarge, f1.4xlarge, f1.16xlarge.
Infl1 instance family
Infl1 instances are optimized for high-performance machine learning at an attractive price. Developers can use deep learning APIs, and AWS Neuron SDK with machine learning frameworks including MXNet, PyTorch, and TensorFlow. Up to 16 AWS Inferentia chips are used for instances of the Infl1 family with powerful Intel Xeon processors.
Memory aid: Inf as in Inferentia
Examples: inf1.xlarge, inf1.24xlarge
Trn1 instance family
Trn1 instances are suitable for deep learning training, which require a lot of hardware GPU resources, and ensure high performance to run tasks efficiently. Compared to previous solutions, you can reach the same efficiency in machine learning by deploying a smaller number of EC2 instances. Trn1 instances use Trainium chips developed by Amazon. Up to 16 AWS Trainium accelerators with support for wide scaling options. The high EFA networking throughput is up to 800 Gbit/s. Features of this instance family allow you to resolve more difficult artificial intelligence (AI) training tasks compared to the previous families of typical GPUs.
How to remember: Trn as in training
DL1 instance family
The DL1 family is one of the most recent families of the Accelerated computing AWS EC2 instance type intended for training machine learning models. Instances of the DL1 family are not based on traditional GPUs as it was before. Instances of this family use Gaudi accelerators from Habana Labs, which is owned by Intel. There is support for up to 8 Gaudi accelerators and 400-Gbit networking throughput.
Example: dl1.24xlarge (this is the only instance in this family)
VT1 instance family
AWS VT1 instances are intended for real-time video transcoding in the 4K resolution (3840x2160) at 50 frames per second (FPS) and live video broadcasts for an affordable price. The VT1 EC2 instance family supports transcoding up to 64 simultaneous video streams with 1920x1080 resolution and 60 FPS. You can broadcast video output in multiple resolutions at once.
The main hardware feature of servers running VT1 instances is using Xilinx Alveo U30 media accelerator cards (which are PCI Express cards installed into servers). You can use up to 8 of these accelerator cards. Each accelerator contains two XCU30 chips. The maximum hardware configuration includes 96 vCPUs, 192 GB of RAM and 25 Gbit/s network bandwidth. EBS bandwidth is 19 Gbit/s. You can use FFMPEG with Xilinx Video SDK.
XCU30 devices support hardware video encoding with the following parameters:
- 264/AVC and H.265/HEVC video codecs
- Constant video bitrate, variable bitrate and the constant quantization parameter
- YCbCr 4:2:0, 8-bit per channel color space
- Progressive scan
Picture-in-picture, side-by-side and transition modes are supported for broadcast. You can find more details about all supported parameters on the AWS and Xilinx websites.
The approach of using Xilinx FPGA (field-programmable gate array) differs from the traditional use of CPUs and GPUs for video encoding.
Currently, three sizes are available for VT1 instances.
Examples: vt1.3xlarge, vt1.6xlarge, vt1.24xlarge
Memory aid: VT as in video transcoding
How Do You Choose the Right Type of EC2 Instance?
Now, after explaining AWS EC2 instance types and their use cases, you can estimate which one can meet your requirements. However, you should take into account AWS instance types pricing options in addition to hardware characteristics before your EC2 instance type.
What are the pricing options with EC2?
There are four AWS EC2 pricing types:
On-demand. This pricing model allows you to provision as many resources as you need at any moment. The on-demand pricing model is popular and simple but is one of the most expensive.
Spot instances. You can bid for unused EC2 resources in the Amazon cloud and run instances for lower AWS EC2 instance prices. You can use only resources that are available at the moment. The disadvantage is that Amazon can stop and even terminate spot instances in 2 minutes after displaying a warning if there is the need to provide hardware resources for customers using on-demand or reserved instances. Use Amazon Spot Instance Advisor to select an available spot instance. Take into account the frequency of interruption and tolerance for an interruption for your applications.
Back up Amazon EC2 instances to protect the data of your EC2 spot instances in case of termination. Spot instances can be used for developing and testing applications as well as for less critical tasks.
Reserved instances. This is another pricing model allowing you to reduce AWS EC2 instance prices. You can reserve finite hardware capacity for the needed instance for the selected period (1 or 3 years). You con’t get the same flexibility with resource consumption as you do with on-demand instances, but there is a significant discount. If your applications use a predictable and stable amount of hardware capacity, and you are going to run these applications in the long term, then you can use reserved instances. Reserved instances can be considered as the discount program for on-demand instances.
Dedicated hosts. You get control on a dedicated physical server on which you can run your EC2 instances (that are virtual machines) with advanced VM management options. You don’t get physical hardware to install an operating system because Xen or Nitro Hypervisor virtualization software is pre-installed. In general, Amazon uses the multi-tenant approach and EC2 instances of different customers can run on a single host, but they are logically isolated. When you run instances on a dedicated host, you don’t share this host with other Amazon customers (tenants).
AWS EC2 instance prices for dedicated hosts are high, but sometimes using this pricing model can be rational, for example, due to a software licensing factor when a license is tied to physical hardware (CPU socket, CPU cores, etc.). Another reason is compliance regulations requiring the use of dedicated hardware for medical organizations and other mission-critical organizations (as an advanced alternative for using a dedicated instance).
Don’t confuse a dedicated host with a dedicated instance. A dedicated instance runs on dedicated hardware without running EC2 instances of other customers (tenants) on that hardware, but you have less visibility and control options for a dedicated instance compared to a dedicated host.
If you need physical hardware (bare metal) to run your operating system, consider using an EC2 instance of the metal size for the required AWS EC2 machine type.
AWS EC2 pricing recommendations
Consider the following recommendations when you need to run an EC2 instance:
- New AWS users can start from using the on-demand pricing model to run instances.
- Estimate the needed hardware resources to run an EC2 instance.
- Among AWS EC2 instance types, select the one that meets the requirements for your tasks best. New users can start by using general purpose EC2 instances.
- Select the right instance size among available AWS instance sizes. Avoid overprovisioning to save costs.
- Prefer selecting the latest generation for AWS EC2 types.
- Take into account the type of environment and related workloads (development, testing, production) when selecting a pricing model for your instance.
What is the most popular EC2 instance?
A general purpose EC2 instance type is the most popular among customers due to balanced CPU, RAM, and storage configuration optimal for running common regular tasks. You can always start with using a general purpose EC2 instance because you can change the instance type, instance size, and generation later without a negative impact on your data. However, you need to plan instance shutdown for this purpose.
Reduce downtime and prevent data loss by performing AWS EC2 backup regularly, no matter which instance type you use. Read the white paper about AWS snapshot vs backup to learn more about EC2 backup features. You can run AWC EC2 instance replication for the most critical instances.
As for the EC2 instance sizes, small instances are the most popular.
Amazon provides a high number of EC2 instances that belong to five main AWS EC2 instance types based on the tasks they are designed to run. Now you know the principle of their naming and classification that should help you select the EC2 instance to meet your requirements better. Selecting the optimal EC2 instance for your tasks allows you to work efficiently and optimize costs. It is recommended that you compare pricing options before running an EC2 instance and consider how critical workloads are, the stability of hardware resource consumption, and how long you plan to run the instance.