AWS Storage Blog
A guide to budgeting for AWS Backup in VMware virtual environments
As VMware customers navigate the imperative to modernize their virtual environments, the need for reliable and cost-effective data protection has become paramount. Traditionally, evaluating data protection solutions has involved intricate calculations around software licensing, storage costs, and operational expenses.
AWS Backup offers VMware customers a simpler, more transparent path forward. By eliminating upfront software fees and providing a fully managed, policy-based service with a pay-as-you-go pricing model based solely on protected data volumes, AWS Backup streamlines costs associated with data protection. The ability to restore VMware virtual machines (VMs) directly as Amazon Elastic Compute Cloud (EC2) instances also opens up new avenues for cloud-native modernization, empowering users to transition their workloads seamlessly to the AWS platform while safeguarding their mission-critical data.
In this post, I provide some helpful tips for estimating the actual costs of using AWS Backup, mainly for those who are operating on-premises or cloud-based VMware virtual environments.
Understanding usage charges of AWS Backup
From a cost perspective, AWS Backup is clear: “Average monthly GB of backup data consumed in AWS Backup storage” x “Unit price ($/GB)”. However, when backing up VMware VMs, the “Backup data consumed in AWS Backup storage” can vary depending on the target VM, data types, and formats.
For example, a VM may have a 90GB disk allocation, but only 10GB of used storage from the operating system (OS) perspective, and 20GB of actual physical storage usage from the VMware vSphere perspective. There seems to be multiple relevant parameters to consider.
The storage consumed by AWS Backup is equal to the disk usage, including both allocated and deleted data. This is typically less than the VM’s provisioned size but larger than the VM’s OS-level usage. Note that the backup size displayed on the AWS Backup service console may not represent the actual storage consumed for billing purposes. Instead, it reflects the size of the provisioned disk size in the VMware virtual environment.
As a reference, this post shows the “Backup data consumed in AWS Backup storage” by reviewing the billing information for one month after taking backups of VMs on the VMware virtual environment using AWS Backup.
Furthermore, note that both in the VMware virtual environment and AWS Management Console, the storage capacity is displayed as GB, but it actually represents GiB (gibibytes). Moreover, note that AWS Backup uses GiB (gibibytes) as the unit of measurement for backup storage, restore, and data transfer pricing.
For reference, 1 GB = 1,000³ bytes and 1 GiB = 1,024³ bytes.
Prerequisites
The following prerequisites are required for this walkthrough.
VMware virtual environment
This table summarizes the VMware virtual environment that I used in this test.
VMware vSphere Version | 8.0 |
Host server | Amazon EC2 i3.metal * 1 host |
Region | N.Virginia |
Note |
|
Target Windows VM
This table summarizes the information of the Windows VM running on the VMware virtual environment where I took image backups using AWS Backup.
OS | Windows Server 2019 |
VM Hardware version | 19 |
Allocated Disk (C drive only) | 90 GiB |
Storage Used as Recognized by VMware vSphere | 19.66 GiB |
Note |
|
Figure 1 shows the Windows VM that had been backed up using AWS Backup, as observed from the vSphere Client environment.
Figure 1: Backup target Windows VM
Figure 2 shows that the Windows OS recognizes the allocated disk as being 90 GiB in size.
Note that 96,630,589,440 bytes is approximately 90 GiB.
Figure 2: The size of the allocated disk as recognized by the Windows OS
AWS Backup
The following table summarizes the AWS Backup data captured when taking a single, on-demand snapshot of the target Windows VM.
Backup taken on | 18th November 2023 |
Backup retention period | 18th November 2023 – 20th January 2024 |
Storage Tier | Warm |
Region | N.Virginia |
Note |
|
Figure 3 shows the backup information for the backup taken using AWS Backup, as viewed from the Console.
In the console, the storage capacity is displayed as GB, but it actually represents GiB (gibibytes).
Figure 3: AWS Backup information in the Console
Here are the detailed values that I obtained by running the AWS Command Line Interface (CLI) in AWS CloudShell.
Figure 4: AWS Backup detailed information by running AWS CLI
In Figure 4, the “BackupSizeInBytes” represents the backup size as recognized by AWS Backup. Based on the information provided, the backup size recognized by AWS Backup is 90 GiB.
Note that 96,636,764,160 bytes is equal to 90 GiB. This value does not represent the amount of storage space consumed by the backup data in AWS Backup.
Actual AWS Backup usage charges
The AWS Backup usage charge for the one month period from 1st Dec 2023 to 31st Dec 2023 (31days) was $0.95. Dividing this by the AWS Backup Warm Storage unit price of $0.05/GB in the N.Virginia AWS Region as of December 2023 results in the following calculation and is highlighted in Figure 5.
0.95 (USD) ÷ 0.05 (USD/GiB) = 19.0 (GiB)
Figure 5: Actual AWS Backup cost
Since there was no backup data stored prior to 18th Nov 2023, there were no charges incurred in Figure 6.
Figure 6. AWS Backup cost prior to the test
I have summarized the relevant values in the following table:
Disk capacity allocated to target VM (thin provisioning) | Storage used as recognized by VMware vSphere | Backup size recognized through AWS CLI | Actual storage consumption billed by AWS Backup |
90 GiB | 19.66 GiB | 90 GiB | 19.0 GiB |
From this table, it appears that in this test case, the data volume being stored and billed by AWS Backup was roughly the same as the storage usage recognized by the actual storage usage seen from VMware vSphere.
Observations
As shown by this test case, the data volume that was billed by AWS Backup for the backup of the VMware VM was not the logical allocation capacity of the target VM (90 GiB), but rather it was roughly the same size (19.0 GiB) as the storage usage recognized by VMware vSphere (19.66 GiB). Considering that the actual VMware VM is a VMDK file, the storage consumption billed by AWS Backup is the used storage recognized by VMware vSphere.
AWS Backup does not compress or deduplicate the stored backup data. Therefore, the storage consumption billed by AWS Backup approximates the used storage recognized by VMware vSphere.
I also conducted additional testing with Linux VMs, and the results were similar. In a thin provisioned VMware virtual environment, the billed storage consumption is linked to the actual used storage rather than the allocated disk capacity of the target VMs.
Conclusion
In this post, I have provided a comprehensive overview of the key factors that influence the usage costs of AWS Backup in a VMware virtual environment. By understanding the main pricing components, backup storage, users can more accurately estimate the costs associated with adopting AWS Backup.
The actual backup costs ultimately depend on the specific usage patterns and requirements of each individual user. Factors such as data volume, data change rates, backup frequency, and retention periods play a role in determining the final bill. However, the guidance and examples presented in this post provide a solid foundation for estimating their potential AWS Backup costs.