- 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
- GPU Instances
- Cluster Instances
- High I/O Instances
- High Storage 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.
Overall, you are limited to running a total of 20 On-Demand or Reserved Instances and requesting 100 Spot Instances per region. New AWS accounts may start with limits that are lower than the limits described here. In addition, if your account has a custom regional Spot request limit, the custom limit overrides all limits described here. Certain instance types are further limited per region as follows:
|Instance Type||On-Demand & Reserved Limit||Spot Limit|
|All Other Instance Types||20||20|
Note that cc2.8xlarge, cg1.4xlarge, g2.2xlarge, hi1.4xlarge, hs1.8xlarge, cr1.8xlarge, 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 example, our prices for the Asia Pacific (Tokyo) Region are inclusive of Japan consumption tax.
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, High 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; High 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.
See Amazon EC2 Instance Types for additional details.
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, the EU (Ireland) regional, US West (Oregon), and Asia Pacific (Tokyo) regions. Cluster GPU instances are available in the US East (N. Virginia) and EU (Ireland) region
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, EC2 is running in eight regions. The regions are US East (Northern Virginia), US West (Oregon), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), Asia Pacific (Tokyo), Asia Pacific (Sydney), South America (Sao Paulo), and AWS GovCloud.
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 and I2, 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 C3 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 two volume types: Standard Volumes and Provisioned IOPS Volumes. They differ in performance characteristics and price, allowing you to tailor your storage performance and cost to the needs of your applications.
Standard volumes offer storage for applications with moderate or bursty I/O requirements. These volumes deliver approximately 100 IOPS on average with a best effort ability to burst up to hundreds of IOPS. Standard volumes are also well suited for use as boot volumes, where the burst capability provides fast instance start-up times.
Provisioned IOPS volumes are designed to deliver predictable, high performance for I/O intensive, random read and write workloads such as databases. With Provisioned IOPS, you specify an IOPS rate when creating a volume, and then Amazon EBS provisions that rate for the lifetime of the volume. Amazon EBS currently supports up to 4000 IOPS per Provisioned IOPS volume. You can stripe multiple volumes together to deliver thousands of IOPS per Amazon EC2 instance to your application. For additional information on Amazon EBS performance, see the Amazon EC2 User Guide’s EBS section.
Please refer to our Amazon EC2 User Guide’s EBS section for information on which instance types are supported today with Provisioned IOPS Volumes. To enable your Amazon EC2 instances to fully utilize the IOPS provisioned on an EBS volume, you can launch selected Amazon EC2 instance types as “EBS-Optimized” instances. EBS-Optimized instances deliver dedicated throughput between Amazon EC2 and Amazon EBS, with options between 500 Mbps and 1000 Mbps depending on the instance type used.
When attached to EBS-Optimized instances, Provisioned IOPS volumes are designed to deliver within 10% of the provisioned IOPS performance 99.9% of the time in a given year. Your exact performance will depend on your application, and we recommend that you benchmark your applications against your instance types and EBS volumes.
Yes. For a given allocation of resources, the IOPS rate you get depends on the I/O size of your applications’ reads and writes. Provisioned IOPS volumes process your applications’ reads and writes in I/O sizes of 16KB or less. Every increase in I/O size above 16KB will linearly increase the resources you need to achieve the same IOPS rate. For example, if you have provisioned a volume with 2000 IOPS, that means that it can handle 2000 16KB writes per second, or 1000 32KB writes per second, or 500 64KB writes per second, and so on. You can use Amazon CloudWatch to monitor your throughput and I/O sizes.
Provisioned IOPS volumes attached to EBS-Optimized instances are designed to offer consistent performance, delivering within 10% of the provisioned IOPS performance 99.9% of the time over a given year. There are several factors that could impact the level of consistency you see. For example, taking a snapshot can impact the rate of IOPS you get from your volume while your snapshot is pending. Your IOPS rate may also be lower for newly created volumes. For maximum performance consistency with new volumes, we recommend reading or writing to all of the blocks on your volume before placing it into service.
Another factor that can impact your performance is if your application isn’t sending enough I/O requests. This can be monitored by looking at your volume’s queue length. The queue length is the number of pending I/O requests from your application to your volume. For maximum consistency, a Provisioned IOPS volume must maintain an average queue length (rounded to the nearest whole number) of one for every two hundred provisioned IOPS in a minute. For example, for a volume provisioned with 500 IOPS, the queue length average must be three. For more information on ensuring consistent performance of your volumes, see the Amazon EC2 User Guide’s EBS section.
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.
No. If encryption is important to you, we recommend that you run an encrypted file system on top of your Amazon EBS volume.
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.
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.
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.
Not at this time. Manually registering a Paid AMI based Amazon EC2 instance with the Elastic Load Balancer or using a Paid AMI with an Auto Scaling Group that is associated with the Elastic Load Balancer is not supported.
Yes -- see the Elastic Load Balancing web page.
Reserved Instances give you the option to make a low, one-time payment for each instance you want to reserve and in turn receive a significant discount on the hourly charge for that instance. There are three Reserved Instance types (Light, Medium, and Heavy Utilization Reserved Instances) that enable you to balance the amount you pay upfront with your effective hourly price.
Functionally, Reserved Instances and On-Demand Instances are exactly the same. They are launched and terminated in the same way, and they function identically once running. This makes it easy for you to seamlessly use both Reserved and On-Demand Instances without making any changes to your code. The only difference is that with a Reserved Instance, you pay a low, one-time payment and receive a lower hourly rate than with an On-Demand Instance and a capacity reservation.
You can purchase Reserved Instances through the AWS Management Console or using EC2 API tools. In the AWS Management Console, simply click the “Reserved Instances” button in the EC2 Instances section, and select “Purchase Reserved Instances”. The wizard will walk you through the purchase.
Using the API tools, you can list the available Reserved Instances for purchase with the DescribeReservedInstancesOfferings API method. You can then purchase an EC2 Reserved Instance by calling the PurchaseReservedInstancesOffering method.
Launching a Reserved Instance is no different than launching an On-Demand Instance. You simply use the RunInstances command or launch an instance via the AWS Management Console. Amazon EC2 will optimally apply the cheapest rate that you are eligible for in the background.
The RunInstances command does not distinguish between On-Demand and Reserved Instances. When computing your bill, our system will automatically optimize which instances are charged at the lower Reserved Instance rate to ensure you always pay the lowest amount.
You can purchase as few as 1 or as many as 20 Reserved Instances per Availability Zone each month with the EC2 APIs. If you need additional Reserved Instances, complete the form found here.
No. Each Reserved Instance is associated with a specific instance type, and can only be applied to that instance type for the duration of the Reserved Instance term.
No. Each Reserved Instance is associated with a specific Region that is fixed for the lifetime of the Reserved Instance and cannot be changed.
Yes, you can request to modify active Reserved Instances that you own in one of the following ways: Move Reserved Instances between Availability Zones within the same region
Change the Network Platform of your Reserved Instances between “EC2-VPC” and “EC2-Classic” (for EC2 Classic-enabled customers)
Change the instance type of your Linux/UNIX Reserved Instances to a larger or smaller size in the same family (e.g., convert 8 m1.smalls into 4 m1.mediums, or vice versa)
You can submit a Reserved Instances modification request via the AWS Management Console or the ModifyReservedInstances API. There is no additional cost for modifying your Reserved Instance. An instances that was receiving the benefits of a Reserved Instance prior to its modification are not affected by the modification, but we may start billing it at a different rate (at either the On Demand rate or the rate of another applicable Reserved Instance). We process your requests as soon as possible on a best-efforts basis, depending on available capacity.
To learn more about Reserved Instance modification, please refer to the Amazon EC2 User Guide.
If you modify the Availability Zone of a Reserved Instance, its capacity reservation and pricing benefit stop applying to instance usage in the original Availability Zone and start applying to usage in the new Availability Zone. If you modify the Network Platform of a Reserved Instance, its capacity reservation stops applying to instance usage with the original Network Platform and starts applying to usage with the new Network Platform; however, its pricing benefit continues to apply to both EC2-Classic and EC2-VPC instance usage that matches the rest of the Reserved Instance parameters.
If you have an Amazon Linux/UNIX Reserved Instance (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 also 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.
Reserved Instance modifications are processed as soon as possible but may take as long as two 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 Reserved Instance 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 Reserved Instances in the last hour of a month, your changes become effective in the first hour of the next month.)
Yes. When you purchase a Reserved Instance you specify the Availability Zone in which you want to reserve that instance. In order to use that Reserved Instance, you need to ensure that you launch your instance in that same Availability Zone. Additionally, you can purchase a Reserved Instance in an Availability Zone where you already have a running instance, and the Reserved Instance will automatically get applied to that existing instance.
No, you cannot cancel your Reserved Instance and the one-time payment is not refundable. However, if you are using Light or Medium Utilization Reserved Instance, you can choose not to run or entirely stop using your instance at any time, at which point you will not incur any further usage charges. If you are using a Heavy Utilization Reserved Instance, you will continue to pay for every hour during your Reserved Instance term regardless of your usage.
A Reserved Instance is activated once your one-time payment has successfully been authorized. You can follow the status of your Reserved Instance on the AWS Account Activity page.
Yes. Reserved Instances for using Windows and 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.
When using Consolidated Billing, the account that purchases a Reserved Instance will receive the instance reservation. Our system will also automatically optimize which instances are charged at the lower Reserved Instance rate to ensure the “payer” account always pay the lowest amount. However, it is possible that the account that purchased the Reserved Instance will have the discount allocated towards their portion of the bill.
With respect to Reserved Instance volume discounts, if you leverage Consolidated Billing, AWS will use the aggregate total list price of your active Reserved Instances 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 Reserved Instance purchase to ensure that you benefit from the largest possible volume discount tier that your your consolidated accounts are eligible to receive.
When you have purchased a sufficient number of Reserved Instances in an AWS Region, you will automatically receive discounts on your upfront fees and hourly fees for future purchases of Reserved Instances in that AWS Region. Reserved Instance discounts are determined based on the total list price (non-discounted price) of upfront fees for the active Reserved Instances you have per AWS Region to determine the applicable volume discount tier. As an example, imagine that we had the following volume discount tiers:
- $0-$250K: Upfront - 0%, Hourly - 0%
- $250K - $2M: Upfront - 10%, Hourly - 10%
- $2M - $5M: Upfront - 20%, Hourly - 20%
- $5M+: Contact Us
For this example, as soon as you have active Reserved Instances with total list price of upfront fees totaling more than $250,000 in a single AWS Region, you will automatically receive a 10% discount on both upfront and hourly fees for all future Reserved Instance purchases in that AWS Region, and those discounts will continue to apply to new Reserved Instances as long as you continue to qualify for this volume discount tier.
To illustrate, let's assume you currently have $200,000 worth of active Reserved Instances in us-east-1. You want to purchase 75 Reserved Instances at a list price of $1000 each. That would be a total of $75,000 without any discount tiers. The first $50,000 of this purchase would be discounted at 0 percent. The remaining $25,000 of this purchase would be discounted by 10 percent, so you would only be charged $22,500 for it, and you would pay discounted hourly fees on those Reserved Instances.
No. Reserved Instance discounts based on volume tiers are not cumulative with other discounts for Reserved Instance purchases.
Volume discounts are determined at the time of purchase. New purchases will be discounted according to which volume discount tier you qualify for at the time of purchase, and a Reserved Instance will remain at the same rate over its lifetime. For example, assume that you have $260K worth of Reserved Instances, with $250K worth of non-discounted Reserved Instances and $10K worth of discounted Reserved Instances. If $20K worth of non-discounted Reserved Instance subscriptions expired, you would then have only have $240K worth of Reserved Instances, but would continue to pay the discounted rate for the $10K of Reserved Instances that were purchased when you originally qualified for the volume discount tier. In this case, any additional purchases would not be discounted until you had over $250K worth of Reserved Instances again.
No, Amazon EC2 Reserved Instance purchases are the only ones that will apply towards your Amazon EC2 Reserved Instance volume discount tiers (and vice versa).
You will automatically receive volume discounts when you use the existing PurchaseReservedInstance API or AWS Management Console interface to purchase Reserved Instances. You do not need to perform additional steps to receive the discount. Customers who purchase more than $5M worth of Reserved Instances should contact us about receiving additional discounts beyond the discounts automatically provided.
Q: I have purchased a Reserved Instance for an instance type that is available as an EBS-Optimized instance. Can I relaunch that instance as an EBS-Optimized instance? Do I still get the Reserved Instance rate?
If you already own a Reserved Instance for an instance type that supports EBS-optimization, you can relaunch the instance as an EBS-Optimized instance and you will pay the additional hourly charge for EBS-optimization in addition to your hourly instance cost. There is a small possibility that there may not be sufficient capacity to launch the instance as an EBS-Optimized instance. In that case you will get an Insufficient Capacity error, and we recommend that you re-launch the instance without the EBS-optimization option.
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 200 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 200 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.
Overall, you are limited to requesting a total of 100 Spot Instances per region. Certain instance types are further limited per region. For example, although you may request up to 100 Spot Instances per region, only 10 of those 100 may be for hi1.4xlarge Spot Instances. New AWS accounts may start with limits that are lower than the limits described here. In addition, if your account has a custom regional Spot request limit, the custom limit overrides all limits described here. Note that not all instance types are available on Spot. To learn more about Spot Instance limits, please refer to the Amazon EC2 User Guide.
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.
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.
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.
High I/O instances provide customers with proportionally high instance storage and fast sequential I/O performance. Like Cluster instances, High Storage instances can be clustered via cluster placement groups for high bandwidth networking.
High Storage instances support all Amazon EC2 features with the exception of Spot Instances. Currently you can only purchase High Storage instances as On Demand or Reserved Instances. Also, For customers using Microsoft Windows Server, High I/O Instances are only supported with the Microsoft Windows Server AMIs for Cluster Instances or Windows Server 2012.
Currently, you can launch 2 hs1.4xlarge instances by default. If you wish to run more than 2 On-Demand Instances, please complete the Amazon EC2 instance request form.
hs1.8xlarge instances are capable of delivering 2.4 GB/s of 2 MiB sequential read performance and 2.6 GB/s of 2 MiB sequential write performance.
High Storage instances are ideal for applications that require fast access to very large data sets, and can leverage data stores and architectures that manage data redundancy and availability. Example applications are:
- Data warehousing
- Cluster file systems
Like other Amazon EC2 instance types, instance storage on hs1.8xlarge 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.
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 West (Ireland), 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.