Amazon Web Service (AWS) is the world’s most comprehensive and broadly adopted cloud platform. It has over 200 fully featured services globally. The cloud computing capacities of AWS from data storage, server availability, databases, networking, and software management are diverse and can be integrated by many businesses. The EC2 instance is a part of the product packaging that companies can consider using different systems and applications.
The EC2 tree begins from the amazon machine image (AMI). AMI is a template that helps define the operating environment you have, and the operating system used. A business can use one AMI in the launching of several EC2 instances.
What is an instance, you ask? Well, instances are the fundamental building blocks of EC2, basically the bricks of the system. They provide compute power to run applications and other services. These instances are created when you launch the AMI on a particular instance type. With auto-scaling, it is possible to scale the production numbers up or down automatically. It can also be done manually.
Another definition in EC2 is instance types. These tend to be made up of different combinations of CPU and memory. They also have various storage sizes and networking capacities. This instance type diversity gives you the flexibility to choose an appropriate mix of resources to best suit your application needs. Their size options vary to accommodate different workload sizes.
Just like walking comfortably requires you to wear the correct shoe size, so does the best cloud computing experience depend on launching an instance type to fit your application best. A collection of instance types begets an instance family. The instance types in a family are designed to meet the same goal but in various capacities. There are several instance types grouped in at least five instance families.
Types Of EC2 Instances
There are five main EC2 instance types offered by AWS. These are General-purpose, Compute- intensive, memory-intensive, accelerated computing and storage-optimized instances. Let’s check out the detailed description of all instance types here.
1. General-Purpose EC2 Family
General purpose AWS instance type examples: T4g, T3, T3a, T2, M6g, M5, M5a, M5zn, and M6gd.
Optimum use: This type of EC2 is applicable in a wide range of applications. These range from databases to servers. Some uses of the instance types include M5 and m5a instances, provide ideal cloud infrastructure and offer a balance of compute, memory, and networking resources for a wide range of apps deployed in the cloud. M5zn is ideal for apps benefiting from the extremely high output and low latency networking. M6 and m6gd are suited for application servers and midsized storage. Mac1 instances are powered by apple mac minicomputers and are best for building and testing applications on apple devices.
Other EC2 General-purpose Instance Types
There are three types of general-purpose instances:
- A1 instance
Unlike the Intel or AMD instances, the A1 instance type uses ARM processors. These instances are ideal for web servers and microservices. Running open-source applications is also possible with this instance type.
- M5 Instance
These instances are created by an Intel Xeon Platinum 8175 3.1Ghz processor. The M5 instances provide a balanced mix of computing, memory, and networking power. This instance type is excellent for data processing tasks and small to medium-sized databases. This server can be used for back-end enterprise applications like SAP and SharePoint.
- T3/ T3a Instance
T3 and T3a are compatible with burstable instances using Intel or AMD processors. These instances are an excellent choice for a more cost-effective and efficient option than the fixed M5 instance. These instances build long-lasting applications like web applications, code repositories, and websites.
2. Compute-Intensive EC2 Family
Compute intensive AWS ec2 instance types examples: C5n, C6gd, C5 and C5a, C6g and C6gn Instances
Optimum use: This family is great for an application that benefits from high compute power. This may include data analytics, machine learning, gaming, batch processing, high-performance computing, web servers, HPC, and data analytics.
Types of EC2 Compute Optimized Instances
There are two main types of compute-optimized instances. These are:
1. C5/C5n Instances
Applications such as scientific models, online gaming, and media transcoding that require computing power are well-suited for the C5 series. C5 instances run on the Intel Xeon Platinum CPU and show a 25% increase in speed compared to earlier C4 instance generations. The C5d instances allow you to connect an NVME-based SSD to the host server physically, providing block-level storage throughout the instance's lifetime.
- C6/C6g instances
The AWS Graviton2 series processors power this type of compute-optimized instance. These instances are best for applications like video encoding and distributed analytics. The C6g instance offers a 40% price-performance improvement over the C5 family.
- Memory-Intensive EC2 Family
EC2 Instance type examples: R5a, R5, R5n, R5b instance types
Optimum use: This family comprises instance types best for memory-intensive applications or systems that need to maintain a high-performance database. There are memory caches considerations with massive data analytics, in-memory analytics, or a genome assembly. R5. R5a, r5b, and r5n are of great use with high performance, relational (MySQL), and NoSQL (MongoDB and Cassandra) databases. They are also good for high-performance computing and electronic design automation (HPC and EDA).
Types of EC2 Memory Optimized Instances
There are different kinds of AWS memory-optimized ec2 instances that you can choose for business purposes:
- R5/ R5a/R5n
For workloads that require a lot of memory, the R5 series EC2 virtual machines are well-suited. R5a and R5a, respectively, use AMD and Intel processors. These instances also have the AWS Nitro system, which allows easy access to the memory resources and computing servers.
Compared to the R4 instance type, R5 virtual machines offer 5% less memory per vCPU and a 10% price increase per GiB.
- R6g/R6gd instance
The AWS Graviton2 processor with a 64-bit ARM Neoverse core powers R6 instances. These instances can handle high memory workloads like open-source databases like MySQL or in-memory cache like KeyDB. Conversely, the R6gd instances are powered by a local NVME-based SSD. It means you have to connect to the host server physically. This allows block-level storage.
- X1/ X1e instance
An Intel Xeon processor operates the X1 instances. It provides high computational memory applications that require colossal memory space, such as SAP HANA and Apache Spark. The EC2 instance type X1e has the best memory-to-compute ratio and the lowest price per GiB of RAM.
- High memory instance
High-memory instances, as the name implies, have the largest RAM capacity - up to 6TB to 24TB per instance. These instances can be used to run a sizable in-memory database. Also, these can be used for the HANA database deployment on the cloud platform.
Only dedicated hosts can host high-memory virtual machines. You must opt to run them for at least three years.
- Accelerated Computing EC2 Family
EC2 Instance type examples: G4ad, G4dn, G3, G2, P4d, P3, P2, Inf 1, F1
Optimum use: The instance types in this family can best be used to provide GPUS or FPGAs. GPU refers to a graphic processing unit, while FPGAS refers to field-programmable gate arrays. It is best used in machine learning and numerically intensive workloads or high-performance computing. There are also the AWS inferential which helps in providing high processing capability.
GPU instances provide access to NVIDIA GPUs with a lot of compute cores. It is used for accelerating scientific, engineering, and rendering applications by leveraging CUDA or open computing language (OpenCL). It is good for 3D application streaming, gaming, and other graphic workloads.
AWS Inferentia helps to accelerate machine learning using AWS Inferentia. This custom AI/ML chip from amazon provides high performance and low latency machine learning inference. FPGA provides access to large FPGAs with millions of parallel system logic cells. They are used to accelerate workloads such as genomics, financial analysis, and real-time video processing.
Types of EC2 Accelerated Computer instances
There are different types of accelerated computer instances, including:
- P3 instance
P3 instances are GPU-based models that can use 8 NVIDIA Tesla GPUs and are operated with a high-frequency Intel Xeon CPU. This accelerated computer instance supports peer-based GPU communication via NVLink and offers a bandwidth maximum of 100Gbps.
- P2 instance
P2 instance is well-suited for general-purpose GPU computation applications and runs on the Intel Xeon processor. They also feature NVIDIA K80 GPUs. P2 instances offer high-performance networking capabilities and double-precision floating point calculations, making them standard EC2 for deep learning and large databases.
- Inf1 instance
16 AWS Inferential machine-learning chips are featured in these types of instances. These Inf1 instances run on Intel Xeon 2nd generation CPUs. They allow cost-effective and low-latency implementations. API developers can also use AWS Deep Learning APIs when bundled with AWS Inferential.
- G3 instance
G3 instances are devised with the NVIDIA TeslaM60 GPU and operated by Intel Xeon processors. They provide cost-effective, high-performance solutions for high-graphics applications using an advanced tool like OpenGL or DirectX.
- G4 instance
G4 instances run on a 2nd generation Intel Xeon Scalable processor and are ideal for accelerating machine learning and high-performing graphics workloads. This model supports the NVIDIA Grid Virtual workstation and features the NVIDIA Tensor Core GPU.
- F1 instance
FPGA-based F1 machines provide hardware amplification. The high-frequency Intel Xeon CPU, NVMe hard drive storage and support for improved networking are all included with F1 instances. You could also use specialized FPGA AMIs to develop and launch apps more quickly.
5. Storage Optimized EC2 Family
EC2 Instance type examples: D3en D2, D3, and H1.
Optimum use: yes, you guessed it right; this is the go-to family of instances for memory-intensive applications. The instance types are designed to handle workloads requiring high sequential read and write access to very large datasets on local storage. The D2 instance type is best suited for log or data processing applications, massive parallel processing data warehouses, and MapReduce and Hadoop distribution computing. D3 and D3en are good for file storage workloads such as GPFC and BEEFS and also for large data lakes for HPC workloads.
– Chipset considerations: the chipset considerations usually vary between three significant sources: Intel Xeon, AMD EPXC, and AWS gravity
– Sizing considerations: the consideration here is what instance type size or auto-scaling group sizing is required in the minimum service requirement
– The location of your business: this will affect the choice of deployment used. There are also different availability zones for other regions.
– Software considerations: will you use the custom Amazon Machine Instances or the Prebaked AMIs?
Types of EC2 Storage Optimized Instances
Below are details about the various storage-optimized types you can choose from.
- D2 instance
D2 instances have 48TB HDD storage. They are storage-optimized instances that allow high-density warehouse and high sequential r/w speeds for extensive datasets. These instances can be used for data warehousing and processing logs, MapReduce computing, and Hadoop computing
- H1 instance
H1 instances have a lower density storage than D2 instances and can store up to 16TB HDD. The H1 instances are operated by an Intel Xeon processor and offer enhanced networking of 25Gbps. These virtual machines are best suited for applications requiring extensive data volumes and high throughput, like MapReduce. The H1 instance is best suited for applications requiring sequential access to large amounts of data or direct-attached instance storage.
- l3/ l3en instance
SSD storage with lower latency than HDD-based instances is available in the l3 instance family because of its low latency and high random performance. These instances are featured with NVMe SSD storage. This SSD storage delivers high IOPS at a very minimal cost. These storage instances are best suited for high-frequency OLTP and relational databases.
Implementing the EC2 System
A look at all these EC2 instances will have you whirling on which family or instance to use. Not to mention the pricing considerations or other technical considerations if your site includes pictures and audio. From storage limits, burst rates, and business policies, the decision to adopt an EC2 can seem overwhelming. That is why it is advisable to get an AWS advanced consulting partner.
These partners help you to understand the system specifications and how to tailor them for your company best. Agilisium is a digital migrations expert with AWS experts that has delivered successful implementations and cloud transformations for its clients for 7+ years. Our Analytics Services enable you to uncover ‘digital’ opportunities to create better products & services for your customers.
It’s easy to jumpstart the process with Agilisium. All you need to do is just request an assessment for your Windows workloads (Windows Optimization and Licensing Assessment). This way, we can help you optimize and reduce more than 50% of your costs.
As an AWS Advanced Consulting Partner, we have the liberty to even provide the assessment as a complimentary offer to you. Contact us for BYOL and other cloud computing services. We will be glad to help.