Fastest time to get an EC2 instance running

Solution 1:

On amazon, booting a machine off of EBS should be significantly faster than a read-only, S3 based instance - From http://aws.amazon.com/ebs/:
"You can also stop and restart instances that boot from Amazon EBS volumes while preserving state, with very fast start-up times. As with any use of Amazon EBS, you only pay for the amount of resources you consume."

For more detail on the EBS boot process, this is more-or-less required reading - See the section titled "Boot times" and "How You're Charged": http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?Concepts_BootFromEBS.html

Of particular note is that, "We charge a full instance hour for every transition from a stopped state to a running state, even if you transition the instance multiple times within a single hour." The following implies that this is only the case for EBS. This information is _deeply_buried_ - so, if you need to flick machines on and off frequently, boot-from-EBS could be more costly.

Solution 2:

There is no definite answer to this because that's dependent on EC2's current load. You may also experience capacity issues. In my experience I get EC2 startups in about a minute to three for a Small in west-1b. I don't think Amazon even has an SLA to guarantee the ability to start new instances. Rackspace Cloud Server 256MB is also about a minute but I've seen about three minutes or so.


Solution 3:

My benchmarks indicate a bootup time of about 45s. The XEN hypervisor is responsible for most of that.
The test measures from instance launch (pick AMI and launch new instance) to SSH connectivity. I use debian squeeze, built with my own bootstrapper (doesn't start gettys etc.).

You can test the bootup time with a benchmark script I created for that specific purpose.


Solution 4:

There are various ways you can speed up your instance boot times. The majority of the time is the OS loading and what you have your AMI configure to load at boot. I posted some guidance I received from AWS Support in another post:

https://stackoverflow.com/a/39298090/1806763