I have often come across this question on Quora and other platforms across the internet and I felt this deserved a much more detailed and thoughtful answer. Many people wonder: How can I store my EBS snapshots in AWS S3?
First off, it’s a question that in and of itself is phrased incorrectly due to the extremely prevalent misunderstanding of the underlying EBS snapshot copy to Amazon S3 mechanism. EBS snapshots are, in fact, stored by default in Amazon S3, but in a separate AWS infrastructure that is not a user-visible bucket. We’ll touch on this more a bit later. If you are already managing workloads on AWS, you certainly know that AWS storage bills can get quite high.
What many AWS users are actually looking for is a solution to copy the EBS snapshots to Amazon S3 object storage to save on storage costs and for long-term retention. In the next few minutes I will explain what EBS snapshots are, how you can easily and back them up to S3 using N2WS Backup & Recovery plus the main reason your storage costs will dramatically decrease. Let’s go!
What are Amazon EBS Snapshots?
Similar to most storage arrays in the traditional data center, EBS volumes also come with snapshot capabilities. An EBS snapshot is a point-in-time copy of an EBS volume, meaning that it stores the exact image of an EBS volume at a certain point-in-time. Here are two more key features regarding EBS snapshots:
- EBS snapshots are block-level incremental, which means that every snapshot only copies the blocks (or areas) in the volume that had been changed since the last snapshot
- EBS snapshots are content-aware, which means that when you take the first full snapshot of an EBS volume, it only copies the areas in the volume that contain data. Areas in the volume that were never written to are not copied, which saves time and storage space
AWS “lazily” keeps all the data, including EBS snapshots, in Amazon Simple Storage Service (Amazon S3). This means that the data is automatically stored in S3, but you will not be able to access your EBS snapshots through the Amazon S3 interface. This is because they are located in a separate infrastructure than the actual EBS storage and, as I mentioned before, it’s not a publicly visible bucket. When we are talking about EBS snapshot restoration, it’s important to remember that EBS snapshots are block-level snapshots and they are not aware of what type of data they store, so it’s impossible to have granular access to EBS snapshots. To restore your data, you need to create a new EBS volume from one of your EBS snapshots. The new volume will be a duplicate of the initial EBS volume on which the snapshot was taken.
How to copy EBS snapshots to an Amazon S3 bucket using N2WS
N2WS Backup & Recovery key features include the ability to copy EBS snapshots data to Amazon S3 buckets, which will allow you to reduce long-term retention and archival costs. With the new Copy to S3 feature, you will be able to define multiple repositories within a single S3 bucket, as well as define the frequency with which backups are copied to a repository in S3.
How does it work?
When N2WS copies snapshots to Amazon S3, what’s actually happening is that it launches a temporary S3 worker instance to perform the task of writing objects into S3. As soon as their tasks are completed, the worker instances are terminated. This way, N2WS Backup & Recovery is taking EBS snapshots and exporting them into a proprietary format. It’s important to know that we are not re-creating full backups in S3, but we are actually taking the incremental snapshots and keep them incremental within Amazon S3. Users then restore their backups to AWS. To find out more about this new feature, check out the documentation.
How are the AWS storage costs impacted?
If your EC2 backup solution uses EBS snapshots, besides worrying about how to automate and manage the snapshots, you will also need a way to lower the cost of storing them. Starting with the new release, N2WS Backup & Recovery enables you to lower AWS storage costs by up to 60%. But let’s see a storage comparison to better understand where the cost savings come from. The cost of EBS snapshots is $0.05 per GB per month. (We talk more on AWS EBS pricing in this post.)
The regular S3 storage is in average $0.022 per GB per month, which is more than half cheaper than EBS snapshots storage.
Let’s do a simple math calculation to get to the savings: Savings = (Old Price – New Price) / Old Price
0.05 (EBS) – 0.022 (S3) = 0.028
Savings = 0.028 / 0.05 = 0.56 = 56%
The percentage will grow with more data as per the S3 pricing list. However, we need to subtract a small amount of savings for data transfer and recovery charges. This will give us around 60% savings, as stated above. For example, when you store 1000 GB in EC2, that’s going to cost you $50. The same amount of data stored in Amazon S3 would cost you around $23. We can see that we save $27, which is slightly over 50%, from which we’ll subtract the data transfer costs.
There are many scenarios in which you can significantly reduce the cost of storage from EBS snapshots by archiving them to Amazon S3. A good example is when organizations must comply by regulatory compliance requirements to keep backups for several years. When you consider backing up all the required systems for that length of time, the monthly storage cost is huge. Furthermore, when the need to restore is infrequent, storing all those backups can lead to very high overhead. The ideal solution is to move those backups to Amazon S3, where they are far more durable and cheaper, and then pull them for recovery when needed.
In AWS environments, customers are responsible to ensure their data is secure, but they also need a way to achieve greater efficiency as they grow their AWS workloads. N2WS provides state of the art technology packed into an easy-to-deploy AWS Marketplace solution for high-level backup and recovery capabilities. Our ‘Copy to Amazon S3 repository’ feature can lower backup associated storage costs while delivering enhanced automation, usability, and scalability to enterprises for their AWS deployments.