1

What are the benefits over using Amazon instance store-backed over EBS block storage? The only thing I can see from the comparison of the two is that instance store-backed seems to incur less charges.

I will be deploying multiple instances of the same web service that needs very little storage space, but the lack of AMI tools for instance store-backed is putting me off.

S-K'
  • 1,281
  • 2
  • 11
  • 15
  • AMI tools should still be installable in an instance-store instance, and if they're not in the main AMIs you can create one post-installation... – ceejayoz Apr 24 '13 at 16:59

2 Answers2

2

There are some advantages and disadvantages to EBS and instance store. In general, I recommend instance store over EBS for most scalable applications.

Some advantages of EBS:

  • Ability to stop/start instances
  • Root volume size larger than 10 GB
  • Ease of creating AMIs
  • Ability to snapshot root volume

Some advantages of instance store:

  • Not dependent on EBS service, which has had some high profile outages over the past few years
  • No cost for root volume when instance is running
  • One less moving part to worry about

There are definitely more advantages and disadvantages than I have listed, but those are the ones that come to mind quickly. At work, we use instance store for all instances unless there's a very specific reason for having an EBS instance. All EBS instances are duplicated in every available availability zone within a region to help ensure some instances continue running in the event of another EBS outage.

I like to draw the line at customization: if an instance needs a lot of custom work to function, then use EBS, but if not, use instance store. I define custom work as tasks that need to be done by hand and are not automated. We use Puppet to deploy instances from scratch using the stock Ubuntu AMIs. I wrote a blog post about how we are able to take generic AMIs and place them in service without user intervention.

If you're going to use AutoScaling or similar technology, I highly recommend investing in automation, even if you will roll your own AMI, as there will likely be changes you'll need between AMI builds (code deployments, etc).

Regarding building instance store AMIs, there are a large number of tutorials available online showing how to build instance store AMIs, as instance store has been around a few years longer than EBS. The AMI tools are available at http://aws.amazon.com/developertools/368 .

Shane Meyers
  • 1,008
  • 1
  • 7
  • 17
  • You answered the question, but can you provide a link to your blog post out of interest? – S-K' Apr 24 '13 at 16:48
  • I linked to it in the body, but it is a bit hidden. Here's the link: http://sorcery.smugmug.com/2013/01/14/scaling-puppet-in-ec2/ – Shane Meyers Apr 24 '13 at 16:55
  • Regarding cost: if you change your image often the AMI storage charges may be higher for Instance Store. Reason being: EBS Snapshots are differential (you only pay for blocks that have changed since last snapshot) whereas instance store AMI are stored as a whole (i.e. you pay full price). Useful comparison here: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device – Piotr Dec 16 '15 at 19:23
  • @Piotr, true EBS snapshots are differential, but at the size of AMIs that I work with (a few GB at max) the cost savings is trivial. Also, I build new EBS AMIs off of the Ubuntu base AMIs and not iterating my own AMIs, so I'm sure sure if there is EBS snapshot block deduplication across the accounts. – Shane Meyers Jan 06 '16 at 01:46
0

Actually AWS EBS AMI backed Instances benefits you than using an Instance store AMI because

You can stop an EBS backed AMI when you are not using it and resumed when you need it again.

You can re-size the EBS Volumes.

You can create an Image of your EBS Instnaces

You can not have all the above with an Instance store AMI but still you can convert an Instance store AMI to an EBS backed AMI and Still if you do not want all the data to be persistent, you can choose an Instance store AMI.

Finally it depends on your use case in choosing an AWS AMI.

Big Data
  • 114
  • 2
  • 11