Amazon EC2 Documentation
Amazon Elastic Compute Cloud (Amazon EC2) is designed to present a virtual computing environment, allowing you to use web service interfaces to launch instances with a variety of operating systems, load them with your custom application environment, manage your network’s access permissions, and run your image using scalable computing instances.
To use Amazon EC2, you simply:
- Select a pre-configured, templated Amazon Machine Image (AMI) designed to get up and running quickly and easily. Or create an AMI containing your applications, libraries, data, and associated configuration settings.
- Configure security and network access on your Amazon EC2 instance.
- Choose which instance type(s) you want, then start, terminate, and monitor instances of your AMI , using the web service APIs or the variety of management tools provided.
- Determine whether you want to run in multiple locations, utilize static IP endpoints, or attach persistent block storage to your instances.
- Pay only for the on-demand instances that you actually consume, like instance-hours or data transfer.
Amazon EC2 provides a number of features designed for building scalable, failure resilient, enterprise class applications.
Bare Metal instances
Amazon EC2 bare metal instances are designed to provide your applications with direct access to the processor and memory of the underlying server. These instances are ideal for workloads that require access to hardware feature sets (such as Intel® VT-x), or for applications that need to run in non-virtualized environments for licensing or support requirements. Bare metal instances are built on the Nitro system, a collection of AWS-built hardware offload and hardware protection components that are designed to provide high performance networking and storage resources to EC2 instances. Bare metal instances are EC2 instances and thus offer the same robust security, reliability, capacity, elasticity, and support for different operating systems and software packages as other virtual EC2 instances. You can also use bare metal instances with AWS services such as Amazon Virtual Private Cloud (Amazon VPC), Amazon Elastic Block Store (Amazon EBS), Elastic Load Balancing (ELB) and more.
Optimize Compute Performance and Cost with Amazon EC2 Fleet
With a single API call, Amazon EC2 Fleet is designed to let you provision compute capacity across EC2 instance types, Availability Zones, and purchase models to help optimize scale, performance and cost. You can specify how much On-Demand and Spot capacity to launch via EC2 Fleet. You can also define which instance types you prefer and whether to scale capacity based on cores, instances or memory.
Pause and Resume Your Instances
You can hibernate your Amazon EC2 instances backed by Amazon EBS, and resume them from this state at a later time. Applications that take a while to bootstrap and persist state into memory (RAM) can benefit from this feature. Hibernation gives you all the benefits of Stop and Start, and additionally, is designed to allow for data from memory (RAM) to persist between sessions.
GPU Compute Instances
Customers requiring massive floating point processing power may benefit from the next-generation of general-purpose GPU compute instances from AWS, Amazon EC2 P3 instances. P3 instances are suited for machine learning, high-performance computing, computational fluid dynamics, computational finance, seismic analysis, molecular modeling, genomics, and rendering workloads.
GPU Graphics Instances
Customers requiring high graphics capability may benefit from GPU graphics instances. GPU graphics instances are suited for 3D visualizations, graphics-intensive remote workstation, 3D rendering, application streaming, video encoding, and other server-side graphics workloads.
High I/O Instances
Customers requiring very high, low latency, random I/O access to their data can benefit from High I/O instances. High I/O instances are suited for customers running very high performance NoSQL databases, transactional systems, and Elastic Search workloads.
Dense HDD Storage Instances
Customers requiring very high storage density per instance, and high sequential I/O for data-intensive applications like Massively Parallel Processing (MPP) data warehouse, MapReduce and Hadoop distributed computing, and log and data processing may benefit from Dense Storage instances.
Optimized CPU Configurations
The Optimize CPUs feature is designed to give you greater control of your Amazon EC2 instances on two fronts. First, you can specify a custom number of vCPUs when launching new instances to save on vCPU-based licensing costs. Second, you can disable multithreading for workloads that perform well with single-threaded CPUs, such as certain high-performance computing (HPC) applications.
Flexible Storage Options
Different Amazon EC2 workloads can have vastly different storage requirements. Beyond the built-in instance storage, we also have Amazon Elastic Block Store (Amazon EBS) and Amazon Elastic File System (Amazon EFS) to suit other cloud storage workload requirements.
Amazon EC2 provides the ability to place instances in multiple locations. Amazon EC2 locations are composed of Regions and Availability Zones. Availability Zones are distinct locations that are engineered to be insulated from failures in other Availability Zones and provide inexpensive, low latency network connectivity to other Availability Zones in the same Region. By launching instances in separate Availability Zones, you can help protect your applications from failure of a single location. Regions consist of one or more Availability Zones, are geographically dispersed, and will be in separate geographic areas or countries.
Elastic IP Addresses
Elastic IP addresses are static IP addresses designed for dynamic cloud computing. An Elastic IP address is associated with your account, not a particular instance, and you control that address until you choose to explicitly release it. Unlike traditional static IP addresses, however, Elastic IP addresses are designed to allow you to mask instance or Availability Zone failures by programmatically remapping your public IP addresses to any instance in your account. Amazon EC2 is designed to enable you to engineer around problems with your instance or software by quickly remapping your Elastic IP address to a replacement instance. In addition, you can optionally configure the reverse DNS record of any of your Elastic IP addresses.
High Performance Computing (HPC) Clusters
Customers with complex computational workloads such as tightly coupled parallel processes, or with applications sensitive to network performance, can achieve high compute and network performance while benefiting from the elasticity, flexibility and cost advantages of Amazon EC2. Cluster Compute, Cluster GPU, and High Memory Cluster instances have been specifically engineered to provide high-performance network capability and can be programmatically launched into clusters – allowing applications to get the low-latency network performance required for tightly coupled, node-to-node communication. Cluster instances also provide increased throughput making them well suited for customer applications that need to perform network-intensive operations.
Enhanced Networking is designed get you high packet per second (PPS) performance, low network jitter and low latencies. This feature uses a new network virtualization stack that is engineered to provide higher I/O performance and lower CPU utilization compared to traditional implementations. In order to take advantage of Enhanced Networking, you should launch an HVM AMI in VPC, and install the appropriate driver.
Elastic Fabric Adapter (Fast interconnect for HPC clusters)
Elastic Fabric Adapter (EFA) is a network interface for Amazon EC2 instances that is designed for customers to run HPC applications requiring high levels of inter-instance communications, like computational fluid dynamics, weather modeling, and reservoir simulation, at scale on AWS. It uses a custom-built operating system bypass technique to enhance the performance of inter-instance communications, which is critical to scaling HPC applications. With EFA, HPC applications using popular HPC technologies like Message Passing Interface (MPI) can scale up to thousands of CPU cores.
Available on AWS PrivateLink
Customers can privately access Amazon EC2 APIs from their Amazon Virtual Private Cloud (Amazon VPC) or over AWS Direct Connect, without using public IPs, and without requiring the traffic to traverse across the Internet. AWS PrivateLink is a purpose-built technology designed for customers to access AWS services in a high performance and highly available manner, while keeping all the network traffic within the AWS network. In order to use Amazon EC2 with AWS PrivateLink, you will need to create an endpoint for EC2 in your VPC. Any traffic destined to this endpoint will get privately routed to the EC2 service.
Amazon Time Sync Service
The Amazon Time Sync Service is designed to provide a highly accurate, reliable and available time source to AWS services including EC2 instances. All instances running in a VPC can access the service at a universally reachable IP address. The service uses a fleet of redundant satellite-connected and atomic reference clocks in AWS regions to deliver highly accurate and reliable current time readings of the Coordinated Universal Time (UTC) global standard.
For additional information about service controls, security features and functionalities, including, as applicable, information about storing, retrieving, modifying, restricting, and deleting data, please see https://docs.aws.amazon.com/index.html. This additional information does not form part of the Documentation for purposes of the AWS Customer Agreement available at http://aws.amazon.com/agreement, or other agreement between you and AWS governing your use of AWS’s services.