Amazon EC2 instance types

After we have selected an image to run our EC2 instance, we also need to select the instance type. A selection of instance types optimized to fit different use cases are available on EC2 with varying combinations of CPU, memory, storage, and networking capabilities. Having such a variety gives us the flexibility to choose the appropriate mix of resources for our applications. For each instance type, we need to select an appropriate instance size that allows us to scale the resources to the requirements of the target workload but maintain the costs within our budget. Over-provisioning can cause costs to rise while under-provisioning can cause resource constraints within our application. Instance types come in five different types:

  • General purpose
  • Compute optimized
  • Memory optimized
  • Storage optimized
  • Accelerated computing

The general purpose types come in two variants:

  • T type or burstable instances that provide a baseline level of CPU performance with the ability to burst CPU usage at any time for as long as required
  • M type with a good balance of compute, memory, and network resources

The burstable instances are useful when we have an application with spiky performance. Each burstable instance type comes with a predictable baseline of performance and can burst up over the baseline to either a limited or unlimited CPU usage (depending on the chose instance type). When choosing a limited T2 type the price will be constant and the CPU will be throttled by AWS once the allotted CPU time has been consumed by the instance. Unlimited T type instances will be allowed to burst as much as needed, but higher charges will apply if the instance's average CPU utilization exceeds the baseline of the instance. 

The compute optimized C type instances are optimized for compute-intensive workloads and deliver very cost-effective high performance at a low price per compute ratio. They generally have half the memory per number of CPUs compared to M type instances. 

The memory optimized instances come in two types:

  • R type: Optimized for memory-intensive applications
  • X type: Optimized for high-performance databases, in-memory databases, and other memory-intensive enterprise applications

The R type instances usually have double the memory to CPU compared to the M type instances of the same size, while the X type instances scale from 4 CPUs with 122 GB of memory to 128 CPUs and 3904 GB of memory.

The storage optimized instance types come in three different variants:

  • H type instances leverage a balanced CPU and memory configuration and will allow the creation of up to 16 TB of HDD-based local storage with high disk throughput.
  • I types are optimized for low latency and very high disk IOPS and feature the use of non-volatile memory express (NVMe) SSD-backed instance storage.
  • D type instances are designed to deliver high disk throughput at low prices. We can configure up to 48 TB of HDD-based local storage for these instances.

The accelerated computing instances offer GPU and FPGA enhancements that can be used within our application and come in the following types:

  • P type instances offer general purpose GPU acceleration
  • G type instances are optimized for highly graphics-intensive applications
  • F type instances offer customization hardware acceleration with field programmable gate arrays (FPGAs)

Instance types also sometimes come in generations and you will see that sometime you will be able to choose from multiple generations of the same type in the same region, whereas some type generations might not yet be available or not be available anymore in certain regions. Type generations are distinguished by the number next to the instance type, for instance M4 and M5, T2 and T3, or P2 and P3.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.41.212