Creating host-level application-consistent backups of virtual machines
First Claim
1. A method of creating an application-consistent backup of data on a host system comprising one or more virtual machines and one or more storage devices, the method comprising:
- sending a first instruction to a virtual machine to prepare application-consistent snapshots of one or more virtual machine volumes;
sending, by a guest requestor running within the virtual machine, to one or more applications running within the virtual machine, a second instruction to prepare an application-consistent snapshot of application-reported volume data;
writing, by an application writer running within a virtual machine, a first state data comprising an application-consistent snapshot of application-reported volume data, to a virtual hard drive;
generating a snapshot of the host storage device, the snapshot containing a second state data comprising data that is not application-consistent;
retrieving the first state data from the snapshot of the virtual hard drive; and
overwriting the second state data in the snapshot of the host storage device with the first state data.
2 Assignments
0 Petitions
Accused Products
Abstract
A host server hosting one or more virtual machines can back up host volumes and the one or more virtual machines installed thereon in an application-consistent manner. In one implementation, a host-level requestor instructs a host-level writer to identify which virtual machines qualify for application-consistent backups. The host-level requestor then instructs the host-level writer to initiate virtual machine backups through guest-level requesters in each appropriately-configured virtual machine, wherein the virtual machines create application-consistent backups within the virtual machine volumes. The host-level requester then initiates snapshots of the server volumes on the host-level. The virtual machine-level snapshots can thus be retrieved from within the host-level snapshots of the server volumes.
62 Citations
16 Claims
-
1. A method of creating an application-consistent backup of data on a host system comprising one or more virtual machines and one or more storage devices, the method comprising:
-
sending a first instruction to a virtual machine to prepare application-consistent snapshots of one or more virtual machine volumes; sending, by a guest requestor running within the virtual machine, to one or more applications running within the virtual machine, a second instruction to prepare an application-consistent snapshot of application-reported volume data; writing, by an application writer running within a virtual machine, a first state data comprising an application-consistent snapshot of application-reported volume data, to a virtual hard drive; generating a snapshot of the host storage device, the snapshot containing a second state data comprising data that is not application-consistent; retrieving the first state data from the snapshot of the virtual hard drive; and overwriting the second state data in the snapshot of the host storage device with the first state data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer system, comprising:
-
a processor coupled to a computer readable storage medium, the computer readable storage medium comprising; instructions for executing an application on a virtual machine, the virtual machine including a virtual machine volume, the virtual machine volume stored as a file on a host volume; instructions for generating, by the application and while the virtual machine is active, an application-consistent snapshot of the executing application by at least preventing application writes while the snapshot is being generated; instructions for storing the application-consistent snapshot of the executing application in the virtual machine volume; instructions for generating a snapshot of the host volume, the snapshot of the host volume comprising a crash-consistent snapshot of the executing application; and instructions for replacing the crash-consistent snapshot with the application-consistent snapshot. - View Dependent Claims (14, 15)
-
-
16. A computer readable storage medium including computer executable instructions for creating an application consistent backup of at least one virtual machine, the computer readable storage medium comprising:
-
instructions for sending an instruction to the virtual machine to generate virtual machine-level snapshots for applications executing on the virtual machine, the instructions for generating the virtual machine-level snapshots include instructions for writing, by application writers running within the virtual machine, first state data comprising application-consistent data for applications executing on the virtual machine to application state files stored in a virtual hard drive, the virtual hard drive being stored as a file on a host volume; instructions for creating a host-level snapshot of the host volume on which the virtual machine is installed, the host-level snapshot including the file for the virtual hard drive, the file for the virtual hard drive including the first state data for the applications and second state data for the applications, the second state data comprising data that is not application-consistent; instructions for retrieving the first state data for the applications from the virtual machine-level snapshot; and instructions for replacing, in the host-level snapshot, the second state data with the first state data.
-
Specification