Cloud providers have long since supported creating backups of your VMs by taking a snapshot or a point-in-time difference of the data on your VM disk from a base image.
If things go wrong or you need to restore your data from a point in time, these snapshots can roll back data on your disks allowing you to restore VMs to a previous point in time.
What is a "Snapshot"
Snapshots are a point-in-time state of a cloud VM disk on AWS, Azure or Google Cloud Engine. They all work very similarly. First a complete copy of your disk is stored. Afterwards every snapshot taken is only the size of the incremental difference in data from the original backed up image to the current state of the disk at the time of backup.
Restoring a VM from backup data is easy, however it typically requires that you create new VM disks and provision the existing VM or a new VM to utilize them.
- Note: Azure Managed Snapshots are always full-disk-copy snapshots.
Can I Backup Running VMs?
The answer is yes and no. Although AWS, Azure and Google Cloud allow you to take disk snapshots whilst VMs are running it really matters on the kinds of applications you’re operating.
When your VM is running certain applications some data may not be completely committed to disks, rather it may be stored in memory. A disk snapshot may not capture this. So you need to make sure that important data is persisted to disk by the time backup occurs. Most VM operating systems can handle starting up from a backed up VM disk.
Sometimes you can ensure the data on your VM disk is sufficient for a backup while the VM is running. However, if you can't ensure that, it is best to turn off your VM before backing up.
When Should I Backup?
Backing up VMs (especially the initial backup) can take a significant amount of bandwidth. For that reason it is always best to backup your VMs off-hours. This minimizes any latency impacts to your users.
How Can I Manage Backups?
Refer to the article titled "VMPower Automation Backup Management".