- Hardware Information
- Elastic IP
- Availability Zones
- Enhanced Networking
- Amazon Elastic Block Storage (EBS)
- Amazon CloudWatch
- Auto Scaling
- Elastic Load Balancing
- Reserved Instances
- Reserved Instance Marketplace
- Spot Instances
- Micro Instances
- Compute-Optimized Instances
- GPU Instances
- Cluster Instances
- High I/O Instances
- Dense-storage Instances
- T2 Instances
- Burstable Performance Instances
- Previous Generation Instances
- VM Import/Export
- Amazon EC2 Running Microsoft Windows and Other Third-Party Software
- Amazon EC2 Running IBM
- Service Level Agreement (SLA)
Find more answers in Amazon EC2 Technical FAQs
Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.
Just as Amazon Simple Storage Service (Amazon S3) enables storage in the cloud, Amazon EC2 enables “compute” in the cloud. Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon’s proven computing environment. Amazon EC2 reduces the time required to obtain and boot new server instances to minutes, allowing you to quickly scale capacity, both up and down, as your computing requirements change. Amazon EC2 changes the economics of computing by allowing you to pay only for capacity that you actually use.
To sign up for Amazon EC2, click the “Sign up for This Web Service” button on the Amazon EC2 detail page. You must have an Amazon Web Services account to access this service; if you do not already have one, you will be prompted to create one when you begin the Amazon EC2 sign-up process. After signing up, please refer to the Amazon EC2 documentation, which includes our Getting Started Guide.
Amazon EC2 registration requires you to have a valid phone number and email address on file with AWS in case we ever need to contact you. Verifying your phone number takes only a couple of minutes and involves receiving a phone call during the registration process and entering a PIN number using the phone key pad.
Until now, small developers did not have the capital to acquire massive compute resources and insure they had the capacity they needed to handle unexpected spikes in load. Amazon EC2 enables any developer to leverage Amazon’s own benefits of massive scale with no up-front investment or performance compromises. Developers are now free to innovate knowing that no matter how successful their businesses become, it will be inexpensive and simple to ensure they have the compute capacity they need to meet their business requirements.
The “Elastic” nature of the service allows developers to instantly scale to meet spikes in traffic or demand. When computing requirements unexpectedly change (up or down), Amazon EC2 can instantly respond, meaning that developers have the ability to control how many resources are in use at any given point in time. In contrast, traditional hosting services generally provide a fixed number of resources for a fixed amount of time, meaning that users have a limited ability to easily respond when their usage is rapidly changing, unpredictable, or is known to experience large peaks at various intervals.
Once you have set up your account and select or create your AMIs, you are ready to boot your instance. You can start your AMI on any number of On-Demand Instances by calling the RunInstances API. You simply need to state how many instances you wish to start. If you wish to run more than 20 On-Demand Instances, complete the Amazon EC2 instance request form.
If Amazon EC2 is able to fulfill your request, RunInstances will return success, and we will start setting up your instances. You can check on the status of your instances using the DescribeInstances API call. You can also programmatically terminate any number of your instances using the TerminateInstances API call.
If you have a running instance using an Amazon EBS boot partition, you can also call the StopInstances API to release the compute resources but preserve the data on the boot partition. You can call the StartInstances API when you are ready to restart the associated instance with the Amazon EBS boot partition.
In addition, you have the option to use Spot Instances to reduce your computing costs when you have flexibility in when your applications can run. Read more about Spot Instances for a more detailed explanation on how Spot Instances work.
If you prefer, you can also perform all these actions from the AWS Management Console or through the command line using our command line tools, which have been implemented with this web service API.
When you launch your Amazon EC2 instances you have the ability to store your root device data on Amazon EBS or the local instance store. By using Amazon EBS, data on the root device will persist independently from the lifetime of the instance. This enables you to stop and restart the instance at a subsequent time, which similar to shutting down your laptop and restarting it when you need it again.
Alternatively, the local instance store only persists during the life of the instance. This is an inexpensive way to launch instances where data is not stored to the root device. For example, some customers use this option to run large web sites where each instance is a clone to handle web traffic.
It typically takes less than 10 minutes from the issue of the RunInstances call to the point where all requested instances begin their boot sequences. This time is dependant on a number of factors including: the size of your AMI, the number of instances you are launching, and how recently you have launched that AMI. Images launched for the first time may take slightly longer to boot.
Amazon EC2 allows you to set up and configure everything about your instances from your operating system up to your applications. An Amazon Machine Image (AMI) is simply a packaged-up environment that includes all the necessary bits to set up and boot your instance. Your AMIs are your unit of deployment. You might have just one AMI or you might compose your system out of several building block AMIs (e.g., webservers, appservers, and databases). Amazon EC2 provides a number of tools to make creating an AMI easy. Once you create a custom AMI, you will need to bundle it. If you are bundling an image with a root device backed by Amazon EBS, you can simply use the bundle command in the AWS Management Console. If you are bundling an image with a boot partition on the instance store, then you will need to use the AMI Tools to upload it to Amazon S3. Amazon EC2 uses Amazon EBS and Amazon S3 to provide reliable, scalable storage of your AMIs so that we can boot them when you ask us to do so.
Or, if you want, you don’t have to set up your own AMI from scratch. You can choose from a number of globally available AMIs that provide useful instances. For example, if you just want a simple Linux server, you can choose one of the standard Linux distribution AMIs.
The RunInstances call that initiates execution of your application stack will return a set of DNS names, one for each system that is being booted. This name can be used to access the system exactly as you would if it were in your own data center. You own that machine while your operating system stack is executing on it.
Yes, Amazon EC2 is used jointly with Amazon Simple Storage Service (Amazon S3) for instances with root devices backed by local instance storage. By using Amazon S3, developers have access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. In order to execute systems in the Amazon EC2 environment, developers use the tools provided to load their Amazon Machine Images (AMIs) into Amazon S3 and to move them between Amazon S3 and Amazon EC2. See "How do I load and store my systems with Amazon EC2?" for more information about AMIs.
We expect developers to find the combination of Amazon EC2 and Amazon S3 to be very useful. Amazon EC2 provides cheap, scalable compute in the cloud while Amazon S3 allows users to store their data reliably.
You are limited to running up to 20 On-Demand Instances, purchasing 20 Reserved Instances, and requesting 5 Spot Instances per region. New AWS accounts may start with limits that are lower than the limits described here. Certain instance types are further limited per region as follows:
|Instance Type||On-Demand Limit
||Reserved Limit||Spot Limit|
|All Other Instance Types||20||20||5|
Note that cc2.8xlarge, cg1.4xlarge, hi1.4xlarge, hs1.8xlarge, cr1.8xlarge, G2, D2, and I2 instances are not available in all regions.
If you need more instances, complete the Amazon EC2 instance request form with your use case and your instance increase will be considered. Limit increases are tied to the region they were requested for.
Yes. In order to maintain the quality of EC2 addresses for sending email, we enforce default limits on the amount of email that can be sent from EC2 accounts. If you wish to send larger amounts of email from EC2, you can apply to have these limits removed from your account by filling out this form.
Amazon EC2 provides a truly elastic computing environment. Amazon EC2 enables you to increase or decrease capacity within minutes, not hours or days. You can commission one, hundreds or even thousands of server instances simultaneously. When you need more instances, you simply call RunInstances, and Amazon EC2 will typically set up your new instances in a matter of minutes. Of course, because this is all controlled with web service APIs, your application can automatically scale itself up and down depending on its needs.
Amazon EC2 currently supports a variety of operating systems including: RedHat Linux, Windows Server, SuSE Linux, Ubuntu, Fedora, Debian, Cent OS, Gentoo Linux, Oracle Linux, and FreeBSD. We are looking for ways to expand it to other platforms in future releases.
In our experience, ECC memory is necessary for server infrastructure, and all the hardware underlying Amazon EC2 uses ECC memory.
Traditional hosting services generally provide a pre-configured resource for a fixed amount of time and at a predetermined cost. Amazon EC2 differs fundamentally in the flexibility, control and significant cost savings it offers developers, allowing them to treat Amazon EC2 as their own personal data center with the benefit of Amazon.com’s robust infrastructure.
When computing requirements unexpectedly change (up or down), Amazon EC2 can instantly respond, meaning that developers have the ability to control how many resources are in use at any given point in time. In contrast, traditional hosting services generally provide a fixed number of resources for a fixed amount of time, meaning that users have a limited ability to easily respond when their usage is rapidly changing, unpredictable, or is known to experience large peaks at various intervals.
Secondly, many hosting services don’t provide full control over the compute resources being provided. Using Amazon EC2, developers can choose not only to initiate or shut down instances at any time, they can completely customize the configuration of their instances to suit their needs – and change it at any time. Most hosting services cater more towards groups of users with similar system requirements, and so offer limited ability to change these.
Finally, with Amazon EC2, developers enjoy the benefit of paying only for their actual resource consumption – and at very low rates. Most hosting services require users to pay a fixed, up-front fee irrespective of their actual computing power used, and so users risk overbuying resources to compensate for the inability to quickly scale up resources within a short time frame.
You pay only for what you use and there is no minimum fee. Pricing is per instance-hour consumed for each instance type. Partial instance-hours consumed are billed as full hours. There is no Data Transfer charge between two Amazon Web Services within the same region (i.e. between Amazon EC2 US West and another AWS service in the US West). Data transferred between AWS services in different regions will be charged as Internet Data Transfer on both sides of the transfer. Usage for other Amazon Web Services is billed separately from Amazon EC2.
For EC2 pricing information, please visit the pricing section on the EC2 detail page.
Billing commences when Amazon EC2 initiates the boot sequence of an AMI instance. Billing ends when the instance terminates, which could occur through a web services command, by running “shutdown -h”, or through instance failure.
Instance-hours are billed for any time your instances are in a “running” state. If you no longer wish to be charged for your instance, you must "stop" or "terminate" the instance to avoid being billed for additional instance-hours. Billing starts when an instance transitions into the running state.
Each instance is charged for its data in and data out. Therefore, if data is transferred between these two instances, it is charged out for the first instance and in for the second instance.
Each instance is charged for its data in and data out at Internet Data Transfer rates. Therefore, if data is transferred between these two instances, it is charged at Internet Data Transfer Out for the first instance and at Internet Data Transfer In for the second instance.
Except as otherwise noted, our prices are exclusive of applicable taxes and duties, including VAT and applicable sales tax. For customers with a Japanese billing address, use of the Asia Pacific (Tokyo) Region is subject to Japanese Consumption Tax. Learn more.
Your application will execute on a virtual computer that we call an instance. You have the choice of several instance types, allowing you to select a configuration of memory, CPU, and instance storage that is optimal for your application. To find out more about Amazon EC2 instance types and their applicability, please visit the Amazon EC2 instance types detail page.
Amazon EC2 instances are grouped into 10 families: first and second generation Standard instances, High-Memory, High-CPU, Cluster Compute, Cluster GPU, High I/O, Dense-storage, High Memory Cluster, and t1.micro. Standard Instances have memory to CPU ratios suitable for most general purpose applications; second generation Standard instances provide higher absolute CPU performance for CPU intensive applications; High-Memory instances offer larger memory sizes for memory-intensive applications, including database and memory caching applications; and High-CPU instances have proportionally more CPU resources than memory (RAM) and are well suited for scale out compute-intensive applications. Cluster Compute Instances provide a very large amount of computational power coupled with a high performance network making them ideal for High Performance Compute (HPC) applications and other demanding network-bound applications; Cluster GPU instances take advantage of the parallel processing capabilities of NVIDIA Tesla GPUs for high performance parallel computing; High I/O instances provide very high, low latency, I/O capacity using SSD-based local instance storage for I/O-intensive applications; Dense-storage instances provide high storage density and sequential I/O performance for data warehousing, Hadoop and other data-intensive applications; and High Memory Cluster instances provide high amounts of CPU and memory in addition to network performance for memory-intensive analytics and scientific computing.. t1.micro instances provide a small amount of CPU with the ability to burst to higher amounts for brief periods. When choosing instance types, you should consider the characteristics of your application with regards to resource utilization and select the optimal instance family and size.
One of the advantages of EC2 is that you pay by the instance hour, which makes it convenient and inexpensive to test the performance of your application on different instance families and types. One good way to determine the most appropriate instance family and instance type is to launch test instances and benchmark your application.
M3 instances provide better, more consistent performance that M1 instances for most use-cases. M3 instances also offer SSD-based instance storage that delivers higher I/O performance. M3 instances are also less expensive than M1 instances. Due to these reasons, we recommend M3 for applications that require general purpose instances with a balance of compute, memory, and network resources. However, if you need more disk storage than what is provided in M3 instances, you may still find M1 instances useful for running your applications.
Transitioning to a utility computing model fundamentally changes how developers have been trained to think about CPU resources. Instead of purchasing or leasing a particular processor to use for several months or years, you are renting capacity by the hour. Because Amazon EC2 is built on commodity hardware, over time there may be several different types of physical hardware underlying EC2 instances. Our goal is to provide a consistent amount of CPU capacity no matter what the actual underlying hardware.
Amazon EC2 uses a variety of measures to provide each instance with a consistent and predictable amount of CPU capacity. In order to make it easy for developers to compare CPU capacity between different instance types, we have defined an Amazon EC2 Compute Unit. The amount of CPU that is allocated to a particular instance is expressed in terms of these EC2 Compute Units. We use several benchmarks and tests to manage the consistency and predictability of the performance from an EC2 Compute Unit. The EC2 Compute Unit (ECU) provides the relative measure of the integer processing power of an Amazon EC2 instance. Over time, we may add or substitute measures that go into the definition of an EC2 Compute Unit, if we find metrics that will give you a clearer picture of compute capacity.
First generation Standard, Second generation Standard, High-Memory, and High-CPU instances are available in all Amazon EC2 regions.
Cluster Compute Eight Extra Large, High Storage Eight Extra Large, High Memory Cluster, and High I/O Quadruple Extra Large instances are currently available in the US East (N. Virginia) region, EU (Ireland) region, EU (Frankfurt) region, US West (Oregon), and Asia Pacific (Tokyo) regions. Cluster GPU instances are available in the US East (N. Virginia), EU (Ireland) region, and EU (Frankfurt) region. D2 instances are available in US East (N. Virginia), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), and Asia Pacific (Sydney) regions.
You have complete control over the visibility of your systems. The Amazon EC2 security systems allow you to place your running instances into arbitrary groups of your choice. Using the web services interface, you can then specify which groups may communicate with which other groups, and also which IP subnets on the Internet may talk to which groups. This allows you to control access to your instances in our highly dynamic environment. Of course, you should also secure your instance as you would any other Linux host.
Yes. To receive a history of all EC2 API calls (including VPC and EBS) made on your account, you simply turn on CloudTrail in the AWS Management Console. For more information, visit the CloudTrail home page.
For more information on security on AWS please refer to our Amazon Web Services: Overview of Security Processes document and to our Amazon EC2 running Windows Security Guide.
Public (IPV4) internet addresses are a scarce resource. There is only a limited amount of public IP space available, and Amazon EC2 is committed to helping use that space efficiently.
By default, all accounts are limited to 5 Elastic IP addresses per region. If you need more the 5 Elastic IP addresses, we ask that you apply for your limit to be raised. We will ask you to think through your use case and help us understand your need for additional addresses. You can apply for more Elastic IP address here. Any increases will be specific to the region they have been requested for.
In order to help ensure our customers are efficiently using the Elastic IP addresses, we impose a small hourly charge for each address when it is not associated to a running instance.
No. You do not need an Elastic IP address for all your instances. By default, every instance comes with a private IP address and an internet routable public IP address. The private address is associated exclusively with the instance and is only returned to Amazon EC2 when the instance is stopped or terminated. The public address is associated exclusively with the instance until it is stopped, terminated or replaced with an Elastic IP address. These IP addresses should be adequate for many applications where you do not need a long lived internet routable end point. Compute clusters, web crawling, and backend services are all examples of applications that typically do not require Elastic IP addresses.
The remap process currently takes several minutes from when you instruct us to remap the Elastic IP until it fully propagates through our system.
Yes, you can configure the reverse DNS record of your Elastic IP address by filling out this form. Note that a corresponding forward DNS record pointing to that Elastic IP address must exist before we can create the reverse DNS record.
Each availability zone runs on its own physically distinct, independent infrastructure, and is engineered to be highly reliable. Common points of failures like generators and cooling equipment are not shared across Availability Zones. Additionally, they are physically separate, such that even extremely uncommon disasters such as fires, tornados or flooding would only affect a single Availability Zone.
Yes. Please refer to Regional Products and Services for more details of our product and service availability by region.
We do not currently support the ability to coordinate launches into the same Availability Zone across AWS developer accounts.
Q: If I transfer data between availability zones using public IP addresses, will I be charged twice for Regional Data Transfer (once because it’s across zones, and a second time because I’m using public IP addresses)?
No. Regional Data Transfer rates apply if at least one of the following is true, but is only charged once for a given instance even if both are true:
- The other instance is in a different availability zone, regardless of which type of address is used.
- Public or Elastic IP addresses are used, regardless of which zone the other instance is in.
We currently support enhanced networking capabilities using SR-IOV (Single Root I/O Virtualization). SR-IOV is a method of device virtualization that provides higher I/O performance and lower CPU utilization compared to traditional implementations. For supported Amazon EC2 instances, this feature provides higher packet per second (PPS) performance, lower inter-instance latencies, and very low network jitter.
If your applications benefit from high packet-per-second performance and/or low latency networking, Enhanced Networking will provide significantly improved performance, consistence of performance and scalability.
Specific instance types, e.g. C3, R3, I2, and D2, support Enhanced Networking. In order to enable this feature, you must launch an HVM AMI with the appropriate SR-IOV driver. Amazon HVM Linux AMI includes the SR-IOV driver by default. For AMIs that do not contain the SR-IOV driver by default, you will need to download and install the appropriate driver. You can use Linux or Windows instructions to enable Enhanced Networking in AMIs that do not include the SR-IOV driver by default. Enhanced Networking is only supported in Amazon VPC.
No, there is no additional fee for Enhanced Networking. To take advantage of Enhanced Networking you need to launch the appropriate AMI on a supported instance type in a VPC.
Amazon VPC allows us to deliver many advanced networking features to you that are not possible in EC2-Classic. Enhanced Networking is another example of a capability enabled by Amazon VPC.
Currently all R3, C3, D2, and I2 instances support Enhanced Networking.
The data stored on a local instance store will persist only as long as that instance is alive. However, data that is stored on an Amazon EBS volume will persist independently of the life of the instance. Therefore, we recommend that you use the local instance store for temporary data and, for data requiring a higher level of durability, we recommend using Amazon EBS volumes or backing up the data to Amazon S3. If you are using an Amazon EBS volume as a root partition, you will need to set the Delete On Terminate flag to "N" if you want your Amazon EBS volume to persist outside the life of the instance.
Amazon EBS provides three volume types: General Purpose (SSD) volumes, Provisioned IOPS (SSD) volumes, and Magnetic volumes. These volume types differ in performance characteristics and price, allowing you to tailor your storage performance and cost to the needs of your applications. For more performance infomation see the EBS product details page.
For additional information on Amazon EBS performance, see the Amazon EC2 User Guide’s EBS section.
Q: What is the EBS General Purpose (SSD) volume type?
The EBS General Purpose (SSD) volumes are backed by the same technology found in EBS Provisioned IOPS (SSD) volumes. The EBS General Purpose (SSD) volume type is designed for 99.999% availability, and a broad range of use-cases such as boot volumes, small and medium size databases, and development and test environments. General Purpose (SSD) volumes deliver a ratio of 3 IOPS per GB, offer single digit millisecond latencies, and also have the ability to burst up to 3000 IOPS for short periods.
Q: Which volume type should I choose?
Customers can now choose between three EBS volume types to best meet the needs of their workloads: General Purpose (SSD), Provisioned IOPS (SSD), and Magnetic. General Purpose (SSD) is the new, SSD-backed, general purpose EBS volume type that we recommend as the default choice for customers. General Purpose (SSD) volumes are suitable for a broad range of workloads, including small to medium sized databases, development and test environments, and boot volumes. Provisioned IOPS (SSD) volumes offer storage with consistent and low-latency performance, and are designed for I/O intensive applications such as large relational or NoSQL databases. Magnetic volumes provide the lowest cost per gigabyte of all EBS volume types. Magnetic volumes are ideal for workloads where data is accessed infrequently, and applications where the lowest storage cost is important.
While you are able to attach multiple volumes to a single instance, attaching multiple instances to one volume is not supported at this time.
No, snapshots are only available through the Amazon EC2 APIs.
No, snapshots can be done in real time while the volume is attached and in use. However, snapshots only capture data that has been written to your Amazon EBS volume, which might exclude any data that has been locally cached by your application or OS. In order to ensure consistent snapshots on volumes attached to an instance, we recommend cleanly detaching the volume, issuing the snapshot command, and then reattaching the volume. For Amazon EBS volumes that serve as root devices, we recommend shutting down the machine to take a clean snapshot.
Each snapshot is given a unique identifier, and customers can create volumes based on any of their existing snapshots.
If you share a snapshot, you won’t be charged when other users make a copy of your snapshot. If you make a copy of another user’s shared volume, you will be charged normal EBS rates.
Users who have permission to create volumes based on your shared snapshots will first make a copy of the snapshot into their account. Users can modify their own copies of the data, but the data on your original snapshot and any other volumes created by other users from your original snapshot will remain unmodified.
You can find snapshots that have been shared with you by selecting “Private Snapshots” from the viewing dropdown in the Snapshots section of the AWS Management Console. This section will list both snapshots you own and snapshots that have been shared with you.
You can find snapshots that have been shared globally by selecting “Public Snapshots” from the viewing dropdown in the Snapshots section of the AWS Management Console.
Q: Do you offer encryption on Amazon EBS volumes and snapshots?
Yes. EBS offers seamless encryption of data volumes and snapshots. EBS encryption better enables you to meet security and encryption compliance requirements.
All information on Public Data Sets is available in our Public Data Sets Resource Center. You can also obtain a listing of Public Data Sets within the AWS Management Console by choosing “Amazon Snapshots” from the viewing dropdown in the Snapshots section.
Q: Where can I learn more about EBS?
You can visit the EBS FAQ page.
Metrics are received and aggregated at 1 minute intervals.
Amazon CloudWatch receives and provides metrics for all Amazon EC2 instances and should work with any operating system currently supported by the Amazon EC2 service.
You can retrieve metrics data for any Amazon EC2 instance up to 2 weeks from the time you started to monitor it. After 2 weeks, metrics data for an Amazon EC2 instance will not be available if monitoring was disabled for that Amazon EC2 instance. If you want to archive metrics beyond 2 weeks you can do so by calling mon-get-stats command from the command line and storing the results in Amazon S3 or Amazon SimpleDB.
Yes. Amazon CloudWatch stores metrics for terminated Amazon EC2 instances or deleted Elastic Load Balancers for 2 weeks.
No, the Amazon CloudWatch monitoring charge does not vary by Amazon EC2 instance type.
If you view the same time window in a 5 minute period versus a 1 minute period, you may see that data points are displayed in different places on the graph. For the period you specify in your graph, Amazon CloudWatch will find all the available data points and calculates a single, aggregate point to represent the entire period. In the case of a 5 minute period, the single data point is placed at the beginning of the 5 minute time window. In the case of a 1 minute period, the single data point is placed at the 1 minute mark. We recommend using a 1 minute period for troubleshooting and other activities that require the most precise graphing of time periods.
Yes. For example, you can define a scale up condition to increase your Amazon EC2 capacity by 10% and a scale down condition to decrease it by 5%.
When selecting an instance to terminate when a scaling condition is met, Auto Scaling attempts to preserve instances with the current launch configuration, and will thus terminate instances that do not have the current launch configuration. When more than one instance meets this criterion, Auto Scaling will terminate the instance running for the longest portion of a billable instance-hour (without running over). Optionally, you can configure a policy to terminate the oldest or newest instance instead. To target a specific instance for immediate termination, you can also use the TerminateInstanceInAutoScalingGroup API.
Auto Scaling Service cannot scale past the Amazon EC2 limit of instances that you can run. If you need more Amazon EC2 instances, complete the Amazon EC2 instance request form.
Auto Scaling will not allow you to delete your Auto Scaling Group if it contains running Amazon EC2 instances. You have to empty the Auto Scaling Group by setting its size to 0 using the as-set-desired-capacity command from the command line. You can safely delete your Auto Scaling Group once it is empty.
Elastic Load Balancing supports Amazon EC2 instances with any operating system currently supported by the Amazon EC2 service.
Elastic Load Balancing supports load balancing of applications using HTTP, HTTPS (Secure HTTP), SSL (Secure TCP) and TCP protocols.
You can perform load balancing for the following TCP ports: 25, 80, 443, and 1024-65535.
Yes. Each Elastic Load Balancer has an associated IPv4, IPv6, and dualstack (both IPv4 and IPv6) DNS name. IPv6 is not supported in VPC at this time.
If you are using Amazon Virtual Private Cloud, you can configure security groups for the front-end of your Elastic Load Balancer.
Yes. Please refer to the Elastic Load Balancing Developer Guide for more information.
Yes, you can map HTTP port 80 and HTTPS port 443 to a single Elastic Load Balancer.
Elastic Load Balancer does not cap the number of connections that it can attempt to establish with your load balanced Amazon EC2 instances. You can expect this number to scale with the number of concurrent HTTP, HTTPS, or SSL requests or the number of concurrent TCP connections that the Elastic Load Balancer receives.
Yes -- see the Elastic Load Balancing web page.
Yes. To receive a history of Elastic Load Balancing API calls made on your account, simply turn on CloudTrail in the AWS Management Console.
Q: What is a Reserved Instance (RI)?
Reserved Instances provide you with a capacity reservation, so you can have confidence that you will be able to launch the instances you have reserved when you need them. There are three RI payment options (No Upfront, Partial Upfront, All Upfront) that enable you to balance the amount you pay upfront with your effective hourly price.
Q: What is the difference between an RI and a running instance?
A running instance refers to the virtual machine, while an RI is a capacity reservation for a machine in an Availability Zone.
Q: Can you explain the capacity benefit of a RI?
RIs provide you with a capacity reservation to give you confidence that you can launch instances when you need them.
Q: I own Heavy, Light, and/or Medium Utilization RIs. Does this change affect my volume discount?
You will see no change in your volume discount status. If you receive a 5% volume discount, you will continue to benefit from that discount as long as you maintain the total list value of your current, active RIs.
Q: How do I purchase and start up a RI?
You can purchase RIs through the AWS Management Console or by using the EC2 API tools. In the AWS Management Console, simply click the “RIs” button in the EC2 Instances section, and select “Purchase RIs”. The wizard will walk you through the purchase.
Using the API tools, you can list the available RIs for purchase with the DescribeReservedInstancesOfferings API method. You can then purchase an EC2 RI by calling the PurchaseReservedInstancesOffering method.
Launching an RI is no different than launching an On-Demand Instance. You can call the RunInstances API method or launch an instance via the AWS Management Console. Amazon EC2 will optimally apply the cheapest, eligible rate.
Q: How do I reserve capacity for an existing, running instance?
You can reserve capacity for an existing RI from the “Purchase Reserved Instance” page. To reserve capacity for an existing RI, purchase (or modify an existing) RI by selecting the availability zone (ex. us-east-1a), instance type (ex. m3.large), platform (ex. Linux/UNIX (Amazon VPC)), and tenancy (ex. default) to match the configuration of your desired, running instance.
Q: How do I control which instances are billed at the RI rate?
The RunInstances command does not distinguish between On-Demand and RIs. When computing your bill, our system will automatically optimize which instances are charged at the lower RI rate to ensure you always pay the lowest amount.
Q: How many RIs can I purchase?
You can purchase up to 20 RIs per Availability Zone each month with the EC2 APIs. If you need additional RIs, complete the form found here. Information about previous generation RI types can be found here.
Q: Can I reassign my RI from one instance family (e.g., c1.xlarge) to another (e.g., m1.large)?
No. An RI is associated with a specific instance family for the duration of the RI term; however, you can change from one instance type (e.g., c3.large) to another (e.g., c3.xlarge) in the same family, if it is a Linux/UNIX RI.
Q: Can I move an RI from one Region to another?
No. An RI is associated with a specific Region that is fixed for the duration of the RI term.
Q: Can I modify an RI?
Yes. You can request to modify active RIs that you own in one of the following ways:
- Move RIs between Availability Zones within the same region
- Change the Network Platform of your RIs between “EC2-VPC” and “EC2-Classic” (for EC2 Classic-enabled customers)
- Change the instance type of your Linux/UNIX RIs to a larger or smaller size in the same family (e.g., convert 8 m1.smalls into 4 m1.mediums, or vice versa)
Q: How do I request changes or modifications to my RI?
You can submit an RI modification request from the AWS Management Console or the ModifyReservedInstances API. We process your requests as soon as possible, depending on available capacity. There is no additional cost for modifying your RI.
To learn more about RI modification, please refer to the Amazon EC2 User Guide.
Q: What happens when I modify the Availability Zone or network Platform of an RI?
If you change the Availability Zone of an RI, its capacity reservation and pricing benefits no longer apply to the original Availability Zone and start applying to usage in the new Availability Zone. If you modify the Network Platform of a RI, its capacity reservation no longer applies to the original Network Platform and starts applying to usage with the new Network Platform. Pricing benefits continue to apply to both EC2-Classic and EC2-VPC instance usage matching the rest of the RI parameters.
Q: What happens when I modify the instance type of a RI?
If you have an Amazon Linux/UNIX RI in an instance family with multiple instance types (e.g., M1, M2, M3, or C1), you can request to modify your RI’s instance type in one of two ways:
You can consolidate multiple smaller reservations into a single larger reservation. For example, an RI for 8 m1.smalls at $0.014/hour each can be modified to create an RI for 4 m1.mediums at $0.028/hour each, 2 m1.larges at $0.056/hour each, or 1 m1.xlarge at $0.112/hour.
You can divide a larger reservation into multiple smaller reservations. For example, an RI for 1 m1.xlarge at $0.112/hour can be modified to create an RI for 2 m1.larges at $0.056/hour each, 4 m1.mediums at $0.028/hour each, or 8 m1.smalls at $0.014/hour each.
To learn more about instance type modifications, please refer to the Amazon EC2 User Guide.
Q: How quickly do RI modifications take effect?
RI modifications are processed as soon as possible but may take up-to 2 hours. If the modification succeeds, the new capacity reservation becomes effective immediately and the new pricing benefit starts applying to matching instance usage at the beginning of the current hour. For example, if your RI is successfully modified at 11:15, the new capacity reservation starts applying at 11:15 but the pricing benefit will apply retroactively to matching instance usage starting from 11:00. (However, if you request to modify your RIs in the last hour of a month, your changes become effective in the first hour of the next month.)
Q: Do I need to specify an Availability Zone when I launch my instances in order to take advantage of my RIs?
Yes. When you purchase an RI you specify the Availability Zone in which you want to reserve capacity for instances. In order to use your RI, ensure that you launch your instance in the same Availability Zone. Additionally, you can purchase an RI in an Availability Zone where you already have a running instance, and the RI will automatically get applied to existing instance(s).
Q: Can I cancel a RI?
No, you cannot cancel your RI and the one-time payment is not refundable.
Q: How do the payment options impact my bill?
When you purchase an RI under the All Upfront payment option, you pay for the entire term of the RI in one upfront payment. You can choose to pay nothing upfront by choosing the No Upfront option. The entire value of the No Upfront RI is spread across every hour in the term and you will be billed for every hour in the term, regardless of usage. The Partial Upfront payment option is a hybrid of the All Upfront and No Upfront options. You make a small upfront payment, and you are billed a low hourly rate for every hour in the term regardless of usage.
Q: When are RIs activated?
An RI is activated once your one-time payment has successfully been authorized. You can follow the status of your RI on the AWS Account Activity page.
Q: Can I use my RIs with Windows to run a Windows with SQL Standard Server AMI?
Yes. RIs for instances running Microsoft Windows Server and Microsoft SQL Server are available in every region. To get pricing information and additional details, please visit the Amazon EC2 Running Microsoft Windows Server & SQL Server page.
Q: How do RIs work with Consolidated Billing?
The account you use to purchase an RI will receive the capacity reservation, under Consolidated Billing. Our system will automatically optimize which instances are charged at the lower RI rate to ensure the “payer” account always pays the lowest amount.
With respect to RI volume discounts, if you leverage Consolidated Billing, AWS will use the aggregate total list price of your active RIs across all of your consolidated accounts to determine which volume discount tier to apply. Volume discount tiers are determined at the time of purchase, so you should activate Consolidated Billing prior to making a RI purchase to ensure that you benefit from the largest possible volume discount tier that your consolidated accounts are eligible to receive.
Q: How do the RI Volume Discounts work?
When you purchase the sufficient list value of RIs in an AWS Region, you will automatically receive discounts on your upfront fees and hourly fees for future purchases of RIs in that AWS Region. RI discounts are determined based on the total list value (non-discounted price) of upfront fees for the active RIs you have per AWS Region. Your total list value is the sum of all expected payments for a RI within the term, including both the upfront and recurring hourly payments. The following are the volume discount tiers:
- $0-$500K: Upfront - 0%, Hourly - 0%
- $500K - $4M: Upfront - 5%, Hourly - 5%
- $4M - $10M: Upfront - 10%, Hourly - 10%
- $10M+: Contact Us
When you have active RIs with a list value totaling more than $500,000 in a single AWS Region, you will automatically receive a 5% discount on both upfront and hourly fees for all future RI purchases in that AWS Region. Discounts will continue to apply to new RIs as long as you continue to qualify for this volume discount tier.
To illustrate, let's assume you currently have $400,000 worth of active RIs in us-east-1. You want to purchase 75 RIs with a list value of $2000 each. That would be a total of $150,000 without any discount tiers. The first $100,000 of this purchase would be discounted at 0 percent. The remaining $50,000 of this purchase would be discounted by 5 percent, so you would only be charged $47,500 over the term for the purchase, and you would pay discounted hourly fees on those RIs.
Q: How do I calculate the list value of an RI?
Here is a sample list value calculation for 3yr Partial Upfront RIs:
3yr Partial Upfront Volume Discount Value in US-East
Recurring Hourly $
Recurring Hourly Value
- Assume 26,280 Hours in a 3yr Term
- Recurring Hourly Value = Recurring Hourly $ * Hours in Term
- List Value = Upfront $ + Recurring Hourly Value
Q: I receive purchasing discounts for my RIs, will I also receive RI volume discounts?
No. RI discounts based on volume tiers are not cumulative with other discounts for RI purchases.
Q: Will the cost of my RIs change, if my future volume qualifies me for other discount tiers?
Volume discounts are determined at the time of purchase. New RI purchases will be discounted according to your eligible, volume discount tier. RIs are billed at the same rate for the duration of their term. For example, if you have $520K worth of RIs, and sell $50k worth of RI on the RI Marketplace, you would continue to pay the discounted rate for the remaining $470K worth of RI for the duration of the term. If you have $470K worth of RIs and purchase an additional $50K worth of RI, you would receive a volume tier discount on all RIs over $500K.
Q: Will Amazon RDS purchases count toward Amazon EC2 volume discount tiers (and vice versa)?
No. Only Amazon EC2 RI purchases apply towards your Amazon EC2 RI volume discount tiers.
Q: What do I need to do at purchase time to receive volume discounts?
No action is required on your part. You will automatically receive volume discounts when you use the existing PurchaseReservedInstance API or AWS Management Console interface to purchase RIs. If you purchase more than $10M worth of RIs, you should contact us about receiving discounts beyond those that are automatically provided.
Q: How do I determine which Amazon EC2 RI volume discount tier applies to me?
Q: I have purchased an RI for an instance type that is available as an EBS-Optimized instance. Can I re-launch that instance as an EBS-Optimized instance? Do I still get the RI rate?
If you already own an RI for an instance type that supports EBS-optimization, you can re-launch the instance as an EBS-Optimized instance. You will pay the additional hourly charge for EBS-optimization, in addition to your hourly instance cost.
The Reserved Instance Marketplace is an online marketplace that provides AWS customers the flexibility to sell their Amazon Elastic Compute Cloud (Amazon EC2) Reserved Instances to other businesses and organizations. Customers can also browse the Reserved Instance Marketplace to find an even wider selection of Reserved Instance term lengths and pricing options sold by other AWS customers.
You can list a Reserved Instance once you have registered for the Reserved Instance Marketplace, you have paid for your Reserved Instance, and you have owned the Reserved Instance for more than 30 days. If you exceed $20,000 in sales of Reserved Instances or sell more than 50 Reserved Instances, you will also need to provide tax information prior to listing additional Reserved Instances. Additionally, if you plan to sell more than $50,000 in Reserved Instances per year, you will also need to file a limit increase.
If you would like to register for the Reserved Instance Marketplace, you can enter the registration workflow by selling a Reserved Instance from the AWS Management Console or setting up your profile from the Account Settings page on the AWS portal. No matter the route, you will need to complete the following steps:
- Start by reviewing the overview of the registration process.
- Log in to your AWS Account.
- Enter in the Bank Account to which you want us to disburse funds. Once you select continue, we will select that bank account as the default disbursement option.
- You will then reach a confirmation screen. Click “Continue to Console to Start Listing.”
If you plan to sell $20,000 or more worth of Reserved Instances or sell 50 or more Reserved Instances, click “Continue with Tax Interview.” During the Tax Interview pipeline, you will be prompted to enter your Company Name, Contact Name, Address, and Tax Identification Number using the TIMS workflow. Otherwise click “Continue to Console to Start Listing.”
You can start selling on the Reserved Instance Marketplace after you have added a bank account through the registration pipeline. Once activation is complete, you will receive an email when you are able to start listing your Reserved Instances on the Reserved Instance Marketplace. However, it is important to note that you will not be able to receive disbursements until we are able to receive verification from your bank, which may take up to two weeks depending on the bank you use.
To list a Reserved Instance, simply complete these steps in the AWS Management Console:
- Select your Reserved Instances you wish to sell on the Marketplace, and click on the “Sell Reserved Instance” button. If you have not completed the registration process, you will be prompted to register using the registration pipeline.
- For each Reserved Instance type, set the number of instances you’d like to sell and the price for the one-time fee you would like to set. Note that you can set the one-time price to different amounts depending on the amount of time remaining so that you don’t have to keep adjusting your one-time price if your Reserved Instance doesn’t sell quickly. By default you just need to set the current price and we will automatically decrease the one-time price by the same increment each month.
- Once you have configured your listing, a final confirmation screen will appear. Click “Sell Reserved Instance” to complete the listing.
You can list any Reserved Instances that has been active for at least 30 days and for which we have received payment. Typically, this means that you can list your Reserved Instance once it is in the “Active” state. It is important to note that if you are an invoice customer, your Reserved Instance can be in the “Active” state prior to AWS receiving payment. In this case, your Reserved Instance will not be listed until we have received your payment.
We will display all Reserved Instances (ones that AWS offers and ones that our Reserved Instance Marketplace Sellers offer) in the Amazon EC2 Reserved Instance section of the AWS Management Console and in the Amazon EC2 APIs. Displayed Reserved Instances will be grouped based on the type of Reserved Instance being listed, duration remaining, upfront price, and hourly price. This methodology will make it easier for Buyers to find the Reserved Instances they would like to purchase.
You can sell a Reserved Instance for the term remaining, rounded down to the nearest month. For example, if you had 9 months and 13 days remaining you will list it for sale as a 9 month term Reserved Instance.
Yes, you can remove a Reserved Instance listing at any point until a sale is ‘pending’ (meaning a buyer has bought your Reserved Instance and confirmation of payment is pending).
Using the Reserved Instance Marketplace, you can set an upfront price you’d be willing to accept. You cannot set the hourly price (which will remain the same as was set on the original Reserved Instance), and you will not receive any funds collected from payments associated with the hourly prices.
Yes, you will continue to receive the capacity and pricing benefit of your Reserved Instance until it is sold. Once sold, any running instance that was associated with and being charged at the Reserved Instance rate will now be charged at the On-Demand rate until and unless you terminate it.
Yes, you can resell Reserved Instances purchased from the RI Marketplace just like any other Reserved Instance.
Yes, you must have a US bank account to sell Reserved Instances on the Reserved Instance Marketplace. Support for non-US bank accounts will be coming soon. Also, you may not sell Reserved Instances in the US GovCloud region.
No, this capability is not yet available.
Yes, each Reserved Instance sold on the Amazon EC2 Reserved Instance Marketplace will be charged a 12% service fee on their one-time selling price.
Yes, AWS may potentially sell a subset of the quantity of Reserved Instances that you have listed. For example, if you list 100 Reserved Instances, we may only have a Buyer interested in purchasing 50 Reserved Instances. We will sell those 50 instances and continue to list your remaining 50 Reserved Instances until and unless you decide not to list them any longer.
Payment for completed Reserved Instance sales are done via ACH wire transfers to a US Bank account.
Once AWS has received funds from the customer that has bought your instance, we will disburse funds via wire transfer to the bank account you specified when you registered for the Reserved Instance Marketplace. Then, we will send you an email notification letting you know that we’ve wired you the funds. Typically, funds will appear in your account within 3-5 days of when your Reserved Instance has been sold.
No, you will not receive a pro-rated refund for the upfront portion of the AWS Premium Support Fee.
Yes, you will receive a single email once a day that details your Reserved Instance Marketplace activity whenever you create or cancel Reserved Instance listings, buyers purchase your listings, or AWS disburses funds to your bank account.
The Buyer’s city, state, zip+4, and country information will be provided to the Seller via a disbursement report. This information will enable Sellers to calculate any necessary transaction taxes they need to remit to the government (e.g. sales tax, value added tax, etc.). The legal entity name of the Seller will also be provided on the purchase invoice.
Yes, you cannot purchase your own Reserved Instances, including any of your linked accounts (via Consolidated Billing).
Yes, if you are a Premium Support customer, you will be charged for Premium Support when you purchase a Reserved Instance through the Reserved Instance Marketplace.
Spot Instances are a new way to purchase and consume Amazon EC2 Instances. They allow customers to bid on unused EC2 capacity and run those instances for as long as their bid exceeds the current Spot Price. The Spot Price changes periodically based on supply and demand, and customers whose bids meet or exceed it gain access to the available Spot Instances. Spot Instances are complementary to On-Demand Instances and Reserved Instances, providing another option for obtaining compute capacity.
Spot Instances provide the ability for customers to purchase compute capacity with no upfront commitment, at hourly rates usually lower than the On-Demand rate. Spot Instances allow you to specify the maximum hourly price that you are willing to pay to run a particular instance type. Amazon EC2 sets a Spot Price for each instance type in each availability zone, which is the hourly price all customers will pay to run a Spot Instance for that given period. The Spot Price fluctuates based on supply and demand for instances, but customers will never pay more than the maximum price they have specified. If the Spot Price moves higher than a customer’s maximum price, the customer’s instance will be shut down by Amazon EC2. Other than those differences, Spot Instances perform exactly the same as On-Demand or Reserved Instances. See here for more details on Spot Instances.
Spot Instances can be requested using the AWS Management Console or Amazon EC2 APIs. To start with the AWS Management Console:
- Log in to the AWS Management Console, then click the “Amazon EC2” tab.
- Click on “Spot Requests” in the navigation pane on the left.
- Click on “Request Spot Instances” and proceed through the Launch Instance Wizard process, choosing an AMI, Region and instance size and type. Enter the number of Spot Instances you would like to request, your maximum price and whether the request is persistent or not. After choosing your key pair and security group(s), you are ready to submit your Spot Instance request.
For detail on how to request Spot Instances through the Amazon EC2 API, see the Amazon EC2 API Reference.
For a more detailed walk through of using Spot Instances and more information on how to get the most out of Spot Instances, please read Introduction to Spot Instances.
By default, you are limited to requesting a total of 5 Spot Instances per region. Note that not all instance types are available on Spot, and new AWS accounts might start with a lower limit. To learn more about Spot Instance limits, please refer to the Amazon EC2 User Guide.
If you would like a higher limit, complete the Amazon EC2 instance request form with your use case and your instance increase will be considered. Limit increases are tied to the region they were requested for.
You can determine the status of your Spot request in the instance provisioning lifecycle by inspecting its Spot Bid Status code and message. By reviewing Spot bid statuses, you can see why your Spot requests state has or has not changed and you can learn how to optimize your Spot requests to get them fulfilled. You can access Spot Bid Status information on the Spot Instance page of the EC2 console of the AWS Management Console, as well as through the DescribeSpotInstanceRequests API action and the ec2-describe-spot-instance-requests CLI command. For more information, please visit the Amazon EC2 Developer guide.
Yes, Spot Instances are available for all instance families.
Linux/Unix and Windows Server are available. Windows Server with SQL Server is not currently available.
The following features are not yet supported for use with Spot Instances: Amazon DevPay.
Not at this time.
No. If the Spot Instance is terminated by Amazon EC2, you will not be charged for a partial hour of usage. However, if you terminate the instance yourself, you will be charged for any hour in which the instance ran.
Amazon EC2 will change the Spot Price periodically as new requests are received and as available Spot capacity changes (e.g. due to instance terminations). While the Spot Price may change anytime, in general the Spot Price will change once per hour and in many cases less frequently. We publish the current Spot Price and historical prices for Spot Instances through the API, which can also be viewed using the AWS Management Console; these can help you assess the levels and timing of fluctuations in the Spot Price over time.
No. The price per instance-hour for a Spot Instance is set at the beginning of each instance-hour for the entire hour. Any changes to the Spot Price will not be reflected until the next instance-hour begins.
The AWS portal makes a detailed billing report available which shows Spot instance start and termination times for all instances. Customers can check the billing report against historical Spot prices via the API to verify the Spot Price they were billed is correct.
Micro instances provide a small amount of consistent CPU resources and allow you to burst CPU capacity up to 2 ECUs when additional cycles are available. They are well suited for lower throughput applications and web sites that consume significant compute cycles periodically but very little CPU at other times for background processes, daemons, etc. Learn more about use of this instance type.
At steady state, Micro instances receive a fraction of the compute resources that Small instances do. Therefore, if your application has compute-intensive or steady state needs we recommend using a Small instance (or larger, depending on your needs). However, Micro instances can periodically burst up to 2 ECUs (for short periods of time). This is double the number of ECUs available from a Standard Small instance. Therefore, if you have a relatively low throughput application or web site with an occasional need to consume significant compute cycles, we recommend using Micro instances.
The CloudWatch metric for CPU utilization will report 100% utilization if the instance bursts so much that it exceeds its available CPU resources during that CloudWatch monitored minute. CloudWatch reporting 100% CPU utilization is your signal that you should consider scaling – manually or via Auto Scaling – up to a larger instance type or scale out to multiple Micro instances.
Currently Amazon DevPay are not available for Micro instances.
Q. When should I use Compute-optimized instances?
Compute-optimized instances are designed for applications that benefit from high compute power. These applications include high performance front-end fleets, web-servers, batch processing, distributed analytics, high performance science and engineering applications, ad serving, MMO gaming, video-encoding, and distributed analytics.
Q. Can I launch C4 instances as Amazon EBS-optimized instances?
Each C4 instance type is EBS-optimized by default. C4 instances 500 Mbps to 4,000 Mbps to EBS above and beyond the general-purpose network throughput provided to the instance. Since this feature is always enabled on C4 instances, launching a C4 instance explicitly as EBS-optimized will not affect the instance's behavior.
Q. How can I use the processor state control feature available on the c4.8xlarge instance?
The c4.8xlarge instance type provides the ability for an operating system to control processor C-states and P-states. This feature is currently available only on Linux instances. You may want to change C-state or P-state settings to increase processor performance consistency, reduce latency, or tune your instance for a specific workload. By default, Amazon Linux provides the highest-performance configuration that is optimal for most customer workloads; however, if your application would benefit from lower latency at the cost of higher single- or dual-core frequencies, or from lower-frequency sustained performance as opposed to bursty Turbo Boost frequencies, then you should consider experimenting with the C-state or P-state configuration options that are available to these instances. For additional information on this feature, see the Amazon EC2 User's Guide section on Processor State Control.
GPU instances work best for applications with massive parallelism, for example workloads using thousands of threads. Graphics processing is an example with huge computational requirements, where each of the tasks is relatively small, the set of operations performed form a pipeline, and the throughput of this pipeline is more important than the latency of the individual operations. To be able build applications that exploit this level of parallelism one needs GPU device specific knowledge by understanding how to program against various graphics APIs (DirectX, OpenGL) or GPU compute programming models (CUDA, OpenCL).
CG1 instances use NVIDIA Tesla GPUs and are designed for general purpose GPU computing using the CUDA or OpenCL programming models. CG1 instances provide customers with high bandwidth 10 Gbps networking, double precision floating-point capabilities, and error-correcting code (ECC) memory, making them ideal for High Performance Computing (HPC) applications. G2 instances use NVIDIA GRID GPUs and provide a cost-effective, high-performance platform for graphics applications using DirectX or OpenGL. NVIDIA GRID GPUs also support NVIDIA’s fast capture and encode APIs. Example applications include video creation services, 3D visualizations, streaming graphics-intensive applications, and other server-side workloads requiring massive parallel processing power. In addition, Graphics instances can also be used for general purpose computing using CUDA or OpenCL, but are not recommended for network-intensive HPC applications.
With the initial driver release, G2 instances support DirectX 9, 10, and 11, OpenGL 4.3, CUDA 5.5, OpenCL 1.1, and DirectCompute. With the latest driver release, CG1 instances support CUDA 5.5, OpenCL 1.1, and DirectCompute.
There are two methods by which NVIDIA drivers may be obtained. NVIDIA has listings on the AWS Marketplace which offer Amazon Linux AMIs and Windows Server AMIs with the NVIDIA drivers pre-installed. You may also launch 64 bit, HVM AMIs and install the drivers yourself. You must visit the NVIDIA drivers website and search for the NVIDIA GRID K520 for the G2, and the Tesla M2050 for the CG1.
You can currently use Windows Server, SUSE Enterprise Linux, Ubuntu, and Amazon Linux AMIs on G2 instances. If you want to launch AMIs with operating systems not listed here, contact AWS Customer Support with your request or reach out through EC2 Forums.
The NVIDIA GRID SDK is available from NVIDIA directly. Please visit http://www.nvidia.com/object/cloud-get-started.html for information about obtaining the full SDK. NVENC, the frame capture and encoding portion of the GRID SDK, is available on the NVIDIA Developers Zone at https://developer.nvidia.com/nvidia-video-codec-sdk.
Aside from the NVIDIA drivers and GRID SDK, the use of G2 instances does not necessarily require any third-party licenses. However, you are responsible for determining whether your content or technology used on G2 instances requires any additional licensing. For example, if you are streaming content you may need licenses for some or all of that content. If you are using third party technology such as operating systems, audio and/or video encoders and decoders from Microsoft, Thomson, Fraunhofer IIS, Sisvel S.p.A., MPEG-LA, and Coding Technologies, please consult these providers to determine if a license is required. For example, if you leverage the on-board h.264 video encoder on the NVIDIA GRID GPU you should reach out to MPEG-LA for guidance, and if you use mp3 technology you should contact Thomson for guidance..
When using Remote Desktop, GPUs using the WDDM driver model are replaced with a non-accelerated Remote Desktop display driver. In order to access your GPU hardware, you need to utilize a different remote access tool, such as VNC.
Cluster Compute Instances combine high compute resources with a high performance networking for High Performance Compute (HPC) applications and other demanding network-bound applications. Cluster Compute Instances provide similar functionality to other Amazon EC2 instances but have been specifically engineered to provide high performance networking.
Amazon EC2 cluster placement group functionality allows users to group Cluster Compute Instances in clusters – allowing applications to get the low-latency network performance necessary for tightly-coupled node-to-node communication typical of many HPC applications. Cluster Compute Instances also provide significantly increased network throughput both within the Amazon EC2 environment and to the Internet. As a result, these instances are also well suited for customer applications that need to perform network-intensive operations.
Learn more about use of this instance type for HPC applications.
Cluster GPU Instances provide general-purpose graphics processing units (GPUs) with proportionally high CPU and increased network performance for applications benefiting from highly parallelized processing that can be accelerated by GPUs using the CUDA and OpenCL programming models. Common applications include modeling and simulation, rendering and media processing.
Cluster GPU Instances give customers with HPC workloads an option beyond Cluster Compute Instances to further customize their high performance clusters in the cloud for applications that can benefit from the parallel computing power of GPUs.
Cluster GPU Instances use the same cluster placement group functionality as Cluster Compute Instances for grouping instances into clusters – allowing applications to get the low-latency, high bandwidth network performance required for tightly-coupled node-to-node communication typical of many HPC applications.
Learn more about HPC on AWS.
High Memory Cluster instances provide customers with large amounts of memory and CPU capabilities per instance in addition to high network capabilities. These instance types are ideal for memory intensive workloads including in-memory analytics systems, graph analysis and many science and engineering applications
High Memory Cluster instances use the same cluster placement group functionality as Cluster Compute Instances for grouping instances into clusters – allowing applications to get the low-latency, high bandwidth network performance required for tightly-coupled node-to-node communication typical of many HPC and other network intensive applications.
Cluster Compute and Cluster GPU Instances use differs from other Amazon EC2 instance types in two ways.
First, Cluster Compute and Cluster GPU instances use Hardware Virtual Machine (HVM) based virtualization and run only Amazon Machine Images (AMIs) based on HVM virtualization. Paravirtual Machine (PVM) based AMIs used with other Amazon EC2 instance types cannot be used with Cluster Compute or Cluster GPU Instances.
Second, in order to fully benefit from the available low latency, full bisection bandwidth between instances, Cluster Compute and Cluster GPU Instances must be launched into a cluster placement group through the Amazon EC2 API or AWS Management Console.
A cluster placement group is a logical entity that enables creating a cluster of instances by launching instances as part of a group. The cluster of instances then provides low latency, full bisection 10 Gigabit Ethernet bandwidth connectivity between instances in the group. Cluster placement groups are created through the Amazon EC2 API or AWS Management Console.
Currently, Amazon DevPay is not available for Cluster Compute or Cluster GPU Instances.
Q. Is there a limit on the number of Cluster Compute or Cluster GPU Instances I can use and/or the size of cluster I can create by launching Cluster Compute Instances or Cluster GPU into a cluster placement group?
There is no limit specific for Cluster Compute Instances. For Cluster GPU Instances, you can launch 2 Instances on your own. If you need more capacity, please complete the Amazon EC2 instance request form (selecting the appropriate primary instance type).
We recommend that you launch the minimum number of instances required to participate in a cluster in a single launch. For very large clusters, you should launch multiple placement groups, e.g. two placement groups of 128 instances, and combine them to create a larger, 256 instance cluster.
While it may be possible to launch different cluster instance types into a single placement group, at this time we only support homogenous placement groups.
Yes. A stopped instance will be started as part of the cluster placement group it was in when it stopped. If capacity is not available for it to start within its cluster placement group, the start will fail.
High I/O instances use SSD-based local instance storage to deliver very high, low latency, I/O capacity to applications, and are optimized for applications that require tens of thousands of IOPS. Like Cluster instances, High I/O instances can be clustered via cluster placement groups for high bandwidth networking.
High I/O instance support all Amazon EC2 features with the exception of Spot Instances. Currently you can only purchase High I/O instances as On Demand or Reserved Instances.
Currently, you can launch 2 hi1.4xlarge instances by default. If you wish to run more than 2 On-Demand Instances, please complete the Amazon EC2 instance request form.
Using Linux PV AMIs, High I/O instances can deliver more than 120,000 4K random read IOPS and 10,000-85,000 4K random write IOPS (depending on active LBA span) to applications across 2 * 1 TiB data volumes. For HVM and Windows AMIs, performance will be around 90,000 4K random read IOPS and 9,000-75,000 4K random write IOPS.
Sequential throughput on all AMI types (Linux PV, Linux HVM and Windows) is approximately 2 GB/s read and 1.1 GB/s write.
High I/O instances are ideal for applications that require access to tens of thousands of low latency IOPS, and can leverage data stores and architectures that manage data redundancy and availability. Example applications are:
- NoSQL databases like Cassandra and MongoDB.
- Clustered databases
- OLTP systems
Like other Amazon EC2 instance types, instance storage on hi1.4xlarge instances persists during the life of the instance. Customers are expected to build resilience into their applications. We recommend using databases and file systems that support redundancy and fault tolerance. Customers should back up data periodically to Amazon S3 for improved data durability.
The TRIM command allows the operating system to inform SSDs which blocks of data are no longer considered in use and can be wiped internally. In the absence of TRIM, future write operations to the involved blocks can slow down significantly. Currently HI1.4xlarge instances do not support TRIM, but TRIM support will be deployed within the next few months. Customers with extremely intensive full LBA random write workloads should plan accordingly. Please note that the current disk provisioning scheme for High I/O instances minimizes the impact of write amplification and most customers will not experience any issues.
Amazon EC2 allows you to choose between Fixed Performance Instances (e.g. M3, C3, and R3) and Burstable Performance Instances (e.g. T2). Burstable Performance Instances provide a baseline level of CPU performance with the ability to burst above the baseline. T2 instances are for workloads that don’t use the full CPU often or consistently, but occasionally need to burst.
T2 instances’ baseline performance and ability to burst are governed by CPU Credits. Each T2 instance receives CPU Credits continuously, the rate of which depends on the instance size. T2 instances accrue CPU Credits when they are idle, and use CPU credits when they are active. A CPU Credit provides the performance of a full CPU core for one minute. The following table shows the maximum credit balance and baseline performance for each T2 instance size. Each vCPU of a T2 instance can consume CPU Credits at a maximum rate of 60 per hour when bursting to full core performance.
CPU Credits / hour
Maximum CPU Credit Balance
Baseline CPU Performance
10% of a core
20% of a core
40% of a core*
* Single threaded applications can use 40% of 1 core, or if needed, multithreaded applications can use 20% each of 2 cores.
For example, a t2.small instance receives credits continuously at a rate of 12 CPU Credits per hour. This capability provides baseline performance equivalent to 20% of a CPU core. If at any moment the instance does not need the credits it receives, it stores them in its CPU Credit balance for up to 24 hours. If and when your t2.small needs to burst to more than 20% of a core, it draws from its CPU Credit balance to handle this surge seamlessly. Over time, if you find your workload needs more CPU Credits that you have, or your instance does not maintain a positive CPU Credit balance, we recommend either a larger T2 size, such as the t2.medium, or a Fixed Performance Instance type.
Many applications such as web servers, developer environments and small databases don’t need consistently high levels of CPU, but benefit significantly from having full access to very fast CPUs when they need them. T2 instances are engineered specifically for these use cases. If you need consistently high CPU performance for applications such as video encoding, high volume websites or HPC applications, we recommend you use Fixed Performance Instances. T2 instances are designed to perform as if they have dedicated high-speed Intel cores available when your application really needs CPU performance, while protecting you from the variable performance or other common side effects you might typically see from over-subscription in other environments.
Q: When should I choose a Burstable Performance Instance, such as T2?
Workloads ideal for Burstable Performance Instances (e.g. web servers, developer environments, and small databases) don’t use the full CPU often or consistently, but occasionally need to burst. If your application requires sustained high CPU performance, we recommend our Fixed Performance Instances, such as M3, C3, and R3.
Q: How can I see the CPU Credit balance for each T2 instance?
You can see the CPU Credit balance for each T2 instance in EC2 per-Instance metrics in Amazon CloudWatch. T2 instances have two new metrics, CPUCreditUsage and CPUCreditBalance. CPUCreditUsage indicates the amount of CPU Credits used. CPUCreditBalance indicates the balance of CPU Credits.
Q: What happens to CPU performance if my T2 instance is running low on credits (CPU Credit balance is near zero)?
If your T2 instance has a zero CPU Credit balance, performance will remain at baseline CPU performance. For example, the t2.micro provides baseline CPU performance of 10% of a physical CPU core. If your instance’s CPU Credit balance is approaching zero, CPU performance will be lowered to baseline performance over a 15-minute interval.
Q: Does my T2 instance credit balance persist a stop / start?
No, a stopped instance does not retain its previously earned credit balance.
Q: Can T2 instances be purchased as Reserved Instances or Spot Instances?
On-Demand Instances and Reserved Instances are the only purchase options available for T2 Instances.
Q: How is T2 different from the T1?
Compared to the t1.micro, the t2.micro features better CPU performance, more memory, and lower prices. The T2 family also offers more than one size.
Dense-storage instances are designed for workloads that require high sequential read and write access to very large data sets, such as Hadoop distributed computing, massively parallel processing data warehousing, and log processing applications. The Dense-storage instances offer the best price/GB-storage and price/disk-throughput across other EC2 instances.
Q. How do Dense-storage instances compare to High I/O instances?
High I/O instances (I2) are targeted at workloads that demand low latency and high random I/O in addition to moderate storage density and provide the best price/IOPS across other EC2 instance types. Dense-storage instances (D2) are optimized for applications that require high sequential read/write access and low cost storage for very large data sets and provide the best price/GB-storage and price/disk-throughput across other EC2 instances.
Q. How much disk throughput can Dense-storage instances deliver?
The largest current generation of Dense-storage instances, d2.8xlarge, can deliver up to 3.5 GBps read and 3.1 GBps write disk throughput with a 2 MiB block size. To ensure the best disk throughput performance from your D2 instances on Linux, we recommend that you use the most recent version of the Amazon Linux AMI, or another Linux AMI with a kernel version of 3.8 or later that supports persistent grants - an extension to the Xen block ring protocol that significantly improves disk throughput and scalability.
Q. Do Dense-storage instances provide any failover mechanisms or redundancy?
The primary data storage for Dense-storage instances is HDD-based instance storage. Like all instance storage, these storage volumes persist only for the life of the instance. Hence, we recommend that you build a degree of redundancy (e.g. RAID 1/5/6) or use file systems (e.g. HDFS and MapR-FS) that support redundancy and fault tolerance. You can also back up data periodically to more durable data storage solutions such as Amazon Simple Storage Service (S3) for additional data durability. Please refer to Amazon S3 for reference.
Q. How do Dense-storage instances differ from Amazon EBS?
Amazon EBS offers simple, elastic, reliable (replicated), and persistent block level storage for Amazon EC2 while abstracting the details of the underlying storage media in use. Amazon EC2 instance storage provides directly attached non-persistent, high performance storage building blocks that can be used for a variety of storage applications. Dense-storage instances are specifically targeted at customers who want high sequential read/write access to large data sets on local storage, e.g. for Hadoop distributed computing and massively parallel processing data warehousing.
Q. Can I launch D2 instances as Amazon EBS-optimized instances?
Each D2 instance type is EBS-optimized by default. D2 instances 500 Mbps to 4,000 Mbps to EBS above and beyond the general-purpose network throughput provided to the instance. Since this feature is always enabled on D2 instances, launching a D2 instance explicitly as EBS-optimized will not affect the instance's behavior.
Q. Are Dense-storage instances offered in EC2 Classic?
The current generation of Dense-storage instances (D2 instances) can be launched in both EC2 Classic and Amazon VPC. However, by launching a Dense-storage instance into a VPC, you can leverage a number of features that are available only on the Amazon VPC platform – such as enabling enhanced networking, assigning multiple private IP addresses to your instances, or changing your instances' security groups. For more information about the benefits of using a VPC, see Amazon EC2 and Amazon Virtual Private Cloud (Amazon VPC). You can take steps to migrate your resources from EC2-Classic to Amazon VPC. For more information, see Migrating a Linux Instance from EC2-Classic to a VPC.
Q: Why don’t I see M1, C1, CC2, HI1, CG1, and HS1 Instances on the pricing pages any more?
These have been moved to the Previous Generation Instance page
Q: Are these Previous Generation Instances still being supported?
Yes. Previous Generation instances are still fully supported.
Q: Can I still use/add more Previous Generation Instances?
Yes. Previous Generation instances are still available as On-Demand, Reserved Instances, and Spot Instance, from our APIs, CLI, and Console interface.
Q: Are my Previous Generation Instances going to be deleted?
No. Your M1, C1, CC2, HI1, CG1, and HS1 instances are still fully functional and will not be deleted because of this change.
Q: Are Previous Generation Instances being discontinued soon?
Currently, there are no plans to end of life previous generation instances. However, with any rapidly evolving technology the latest generation will typically provide the best performance for the price and we encourage our customers to take advantage of technological advancements.
Q: Will my Previous Generation Instances I purchased as a Reserved Instance be affected or changed?
No. Your Reserved Instances will not change, and the Previous Generation Instances are not going away.
VM Import/Export enables customers to import Virtual Machine (VM) images in order to create Amazon EC2 instances. Customers can also export previously imported EC2 instances to create VMs. Customers can use VM Import/Export to leverage their previous investments in building VMs by migrating their VMs to Amazon EC2.
VM Import/Export currently supports Windows and Linux VMs, including Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2012 R1, Red Hat Enterprise Linux (RHEL) 5.1-6.5 (using Cloud Access), Centos 5.1-6.5, Ubuntu 12.04, 12.10, 13.04, 13.10, and Debian 6.0.0-6.0.8, 7.0.0-7.2.0. For more details on VM Import, including supported file formats, architectures, and operating system configurations, please see the VM Import/Export section of the Amazon EC2 User Guide.
You can import VMware ESX VMDK images, Citrix Xen VHD images, Microsoft Hyper-V VHD images and RAW images as Amazon EC2 instances. You can export EC2 instances to VMware ESX VMDK, VMware ESX OVA, Microsoft Hyper-V VHD or Citrix Xen VHD images. For a full list of support operating systems, please see What operating systems are supported?.
VMDK is a file format that specifies a virtual machine hard disk encapsulated within a single file. It is typically used by virtual IT infrastructures such as those sold by VMware, Inc.
The VMDK file can be prepared by calling File-Export-Export to OVF template in VMware vSphere Client. The resulting VMDK file is compressed to reduce the image size and is compatible with VM Import/Export. No special preparation is required if you are using the Amazon EC2 VM Import Connector vApp for VMware vCenter.
VHD (Virtual Hard Disk) is a file format that that specifies a virtual machine hard disk encapsulated within a single file. The VHD image format is used by virtualization platforms such as Microsoft Hyper-V and Citrix Xen.
Open Citrix XenCenter and select the virtual machine you want to export. Under the Tools menu, click on Virtual Appliance Tools and select Export Appliance to initiate the export task. When the export completes, you can locate the VHD image file in the destination directory you specified in the export dialog.
Open the Hyper-V Manager and select the virtual machine you want to export. In the Actions pane for the virtual machine, select Export to initiate the export task. Once the export completes, you can locate the VHD image file in the destination directory you specified in the export dialog.
The virtual machine must be in a stopped state before generating the VMDK or VHD image. The VM cannot be in a paused or suspended state. Virtual machines with multiple virtual hard disks are not supported. We suggest that you export the virtual machine with only the boot volume attached. You can import additional disks using the ImportVolume command and attach them to the virtual machine using AttachVolume. Additionally, encrypted disks (e.g. Bit Locker) and encrypted image files are not supported. You are also responsible for ensuring that you have all necessary rights and licenses to import into AWS and run any software included in your VM image.
Ensure Remote Desktop (RDP) or Secure Shell (SSH) is enabled for remote access and verify that your host firewall (Windows firewall, iptables, or similar), if configured, allows access to RDP or SSH. Otherwise, you will not be able to access your instance after the import is complete. Please also ensure that Windows VMs are configured to use strong passwords for all users including the administrator and that Linux VMs and configured with a public key for SSH access.
You can import your VM images using the Amazon EC2 API tools:
- Import the VMDK, VHD or RAW file via the ec2-import-instance API. The import instance task captures the parameters necessary to properly configure the Amazon EC2 instance properties (instance size, availability zone, and security groups) and uploads the disk image into Amazon S3.
- If ec2-import-instance is interrupted or terminates without completing the upload, use ec2-resume-import to resume the upload. The import task will resume where it left off.
- Use the ec2-describe-conversion-tasks command to monitor the import progress and obtain the resulting Amazon EC2 instance ID.
- Once your import task is completed, you can boot the Amazon EC2 instance by specifying its instance ID to the ec2-run-instances API.
- Finally, use the ec2-delete-disk-image command line tool to delete your disk image from Amazon S3 as it is no longer needed.
Alternatively, if you use the VMware vSphere virtualization platform, you can import your virtual machine to Amazon EC2 using a graphical user interface provided through the Amazon EC2 VM Import Connector. To get started with the Connector:
- Download the Amazon EC2 VM Import Connector vApp for VMware vCenter
- Install the Connector vApp on your vCenter Server.
- Using your VMware vSphere Client, select the VM image you’d like to import to Amazon EC2
- On the Import to EC2 tab, select the Region, Availability Zone, operating system, instance size, security group, and VPC details (if desired) into which the image should be imported and initiate the import process.
- Launch the Amazon EC2 instance when the import process has completed.
You can export your Amazon EC2 instance using the Amazon EC2 CLI tools:
- Export the instance using the ec2-create-instance-export-task command. The export command captures the parameters necessary (instance ID, S3 bucket to hold the exported image, name of the exported image, VMDK, OVA or VHD format) to properly export the instance to your chosen format. The exported file is saved in an S3 bucket that you previously created
- Use ec2-describe-export-tasks to monitor the export progress
- Use ec2-cancel-export-task to cancel an export task prior to completion
You can export running or stopped EC2 instances that you previously imported using VM Import/Export. If the instance is running, it will be momentarily stopped to snapshot the boot volume. EBS data volumes cannot be exported. EC2 instances with more than one network interface cannot be exported.
Yes, but VM Import/Export will only export the boot volume of the EC2 instance.
You will be charged standard Amazon S3 data transfer and storage fees for uploading and storing your VM image file. Once your VM is imported, standard Amazon EC2 instance hour and EBS service fees apply. If you no longer wish to store your VM image file in S3 after the import process completes, use the ec2-delete-disk-image command line tool to delete your disk image from Amazon S3.
You will be charged standard Amazon S3 storage fees for storing your exported VM image file. You will also be charged standard S3 data transfer charges when you download the exported VM file to your on-premise virtualization environment. Finally, you will be charged standard EBS charges for storing a temporary snapshot of your EC2 instance. To minimize storage charges, delete the VM image file in S3 after downloading it to your virtualization environment.
When you launch an imported VM using Microsoft Windows Server 2003 or 2008, you will be charged standard instance hour rates for Amazon EC2 running the appropriate Windows Server version, which includes the right to utilize that operating system within Amazon EC2. You are responsible for ensuring that all other installed software is properly licensed.
So then, what happens to my on-premise Microsoft Windows license key when I import a VM of Windows Server 2003 or 2008? Since your on-premise Microsoft Windows license key that was associated with that VM is not used when running your imported VM as an EC2 instance, you can reuse it for another VM within your on-premise environment.
No. After an EC2 instance has been exported, the license key utilized in the EC2 instance is no longer available. You will need to reactivate and specify a new license key for the exported VM after it is launched in your on-premise virtualization platform.
When you import Red Hat Enterprise Linux (RHEL) VM images, you can use license portability for your RHEL instances. With license portability, you are responsible for maintaining the RHEL licenses for imported instances, which you can do using Cloud Access subscriptions for Red Hat Enterprise Linux. Please contact Red Hat to learn more about Cloud Access and to verify your eligibility.
The length of time to import a virtual machine depends on the size of the disk image and your network connection speed. As an example, a 10 GB Windows Server 2008 SP2 VMDK image takes approximately 2 hours to import when it’s transferred over a 10 Mbps network connection. If you have a slower network connection or a large disk to upload, your import may take significantly longer.
VM Import/Export is available for use in US East (N. Virginia), US West (N. California), US West (Oregon), EU (Ireland), EU (Frankfurt) region, Asia Pacific (Singapore), Asia Pacific (Tokyo), Asia Pacific (Sydney), and São Paulo.
Each account can have up to five active import tasks and five export tasks per region.
Yes, you can launch imported virtual machines within Amazon VPC.
- No. VM Import/Export commands are available via EC2 CLI and API. You can also use the VM Import Connector to import VMs into Amazon EC2. Once imported, the resulting instances are available for use via the AWS Management Console.
No. Microsoft Windows Server licensing does not currently support using your existing Windows license in Amazon EC2 or any other cloud environment. We encourage you to work with your Microsoft account representative to understand licensing options.
Specific software license terms vary from vendor to vendor. Therefore, we recommend that you check the licensing terms of your software vendor to determine if your existing licenses are authorized for use in Amazon EC2.
You pay only for what you use and there is no minimum fee. Pricing is per instance-hour consumed for each instance type. Partial instance-hours consumed are billed as full hours. Data transfer for Amazon EC2 running IBM is billed and tiered separately from Amazon EC2. There is no Data Transfer charge between two Amazon Web Services within the same region (i.e. between Amazon EC2 US West and another AWS service in the US West). Data transferred between AWS services in different regions will be charged as Internet Data Transfer on both sides of the transfer.
For Amazon EC2 running IBM pricing information, please visit the pricing section on the Amazon EC2 running IBM detail page.
No, you cannot use DevPay to bundle products on top of Amazon EC2 running IBM at this time.
Our SLA guarantees a Monthly Uptime Percentage of at least 99.95% for Amazon EC2 and Amazon EBS within a Region.
You are eligible for a SLA credit for either Amazon EC2 or Amazon EBS (whichever was Unavailable, or both if both were Unavailable) if the Region that you are operating in has an Monthly Uptime Percentage of less than 99.95% during any monthly billing cycle. For full details on all of the terms and conditions of the SLA, as well as details on how to submit a claim, please see http://aws.amazon.com/ec2/sla/