CN112965783A - System and method for using storage snapshot backup virtual machine - Google Patents

System and method for using storage snapshot backup virtual machine Download PDF

Info

Publication number
CN112965783A
CN112965783A CN202110205552.6A CN202110205552A CN112965783A CN 112965783 A CN112965783 A CN 112965783A CN 202110205552 A CN202110205552 A CN 202110205552A CN 112965783 A CN112965783 A CN 112965783A
Authority
CN
China
Prior art keywords
snapshot
virtual machine
backup
storage
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110205552.6A
Other languages
Chinese (zh)
Inventor
严崇文
陈勇铨
胡军擎
江俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Yingfang Software Co ltd
Original Assignee
Shanghai Yingfang Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Yingfang Software Co ltd filed Critical Shanghai Yingfang Software Co ltd
Priority to CN202110205552.6A priority Critical patent/CN112965783A/en
Publication of CN112965783A publication Critical patent/CN112965783A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Abstract

The invention discloses a system and a method for using a storage snapshot backup virtual machine, wherein the system comprises: the production server informs the virtual machine to enter the silence when receiving the virtual machine backup task request, executes the hypervisor snapshot after receiving the notification that the virtual machine completes the silence, informs the backup proxy server after the completion, informs the virtual machine when receiving the notification that the silence exits, deletes the snapshot, and merges new data after the snapshot is generated; the external storage array mounts the logic storage equipment to the production server, carries out storage array level snapshot when receiving the snapshot notification and notifies a backup agent; the backup proxy server initiates a virtual machine backup task request, informs the external storage array snapshot when receiving a hypervisor snapshot completion notification, sends out an exit silence notification after the completion, informs the production server to delete the snapshot, informs the external storage array to mount the snapshot on the backup proxy, and reads snapshot data and writes the snapshot data into the backup storage.

Description

System and method for using storage snapshot backup virtual machine
Technical Field
The invention relates to the technical field of computer disaster recovery backup, in particular to a system and a method for using a storage snapshot backup virtual machine.
Background
Storage management systems have evolved over the years to become very complex systems in the computer infrastructure, encompassing different hardware and software modules for data processing. In the field of data security, particularly in the design and implementation of backup systems, higher requirements are put forward on how to combine different characteristics of software and hardware to achieve recoverable data. Data loss and damage cause fatal factors to the survival and development of enterprises, so that how to ensure the safety and recoverability of production data becomes increasingly strong demand.
In recent years, as virtual machine technology has matured, many application systems have been migrated to run in a virtual machine environment in order to use the virtual machine technology to better utilize hardware resources. And the traditional physical machine backup requirement is expanded to the virtual machine backup. Meanwhile, even though the backup of a part of virtual machine data can be covered by the backup of the whole virtual machine host environment of the traditional physical machine, the fine-grained customized backup task of the virtual machine cannot be achieved. In order to solve the series of backup requirements, a virtual machine host system (hereinafter referred to as hypervisor) provides a snapshot function, a COW (Copy On Write) snapshot can be specified to be performed On a storage device of a virtual machine (hereinafter referred to as guest) managed by the virtual machine host system, and backup software reads snapshot data, copies the data to a backup target, and then deletes the snapshot, thereby completing the whole backup task.
Currently, hypervisor snapshot generation and deletion processes are roughly as follows:
step one, the hypervisor informs the guest of the snapshot request. After receiving the request, the guest sets a silent state for the application program running on the guest, and then returns;
and step two, the hypervisor snapshots successfully.
And step three, the hypervisor informs the guest that the snapshot is completed. The guest then notifies the application to exit the quiesce state.
Step four, when the guest has a new write IO, the hypervisor allocates a free storage space, and the IO data is written into the new space, so as to ensure that the snapshot point data does not change.
Step five, when the snapshot needs to be deleted, the hypervisor merges the changed data after the snapshot (i.e. the new storage space data in step four) into the original storage space, and this merging process will generate a non-production service IO.
Although the above process solves the fine-grained requirement of virtual machine backup to a certain extent, because the snapshot acts on a hypervisor system, i.e. a common production system, the COW snapshot inevitably increases the IO delay of the production system and occupies the storage space of the production system; in addition, especially when the snapshot is deleted, the hypervisor generates a large number of non-production service IO for merging snapshot contents, and is easy to generate a stuck phenomenon on the virtual machine system.
Disclosure of Invention
In order to overcome the defects in the prior art, the present invention provides a system and a method for backing up a virtual machine using a storage snapshot, which combines a hypervisor snapshot with a storage array snapshot to reduce the non-production IO introduced by the hypervisor to the maximum extent, so that the virtual machine backup task can reduce the influence on the virtual machine production system.
To achieve the above object, the present invention provides a system using a storage snapshot backup virtual machine, including:
the production server is provided with a plurality of virtual machines and is used for informing the corresponding virtual machine to enter a silent state when receiving a virtual machine backup task request of the backup proxy server, executing the hypervisor snapshot after receiving the notification that the virtual machine completes application program silence, and informing the backup proxy server that the hypervisor snapshot is completed after the hypervisor snapshot is completed; when receiving a silent exit notification sent by a backup proxy server, notifying a corresponding virtual machine to exit a silent state, and when receiving a snapshot deletion notification sent by the backup proxy server, deleting the created hypervisor snapshot, and performing merging operation on new data generated by the hypervisor snapshot;
the external storage array is used for mounting the logical storage equipment on a production server through a network so that the virtual machine can store production data in the logical storage equipment; when receiving a snapshot notification of a backup proxy server, performing storage array level snapshot on the logic storage device, and notifying the backup proxy server after completing the snapshot;
the backup proxy server is used for initiating a virtual machine backup task request to the generation server, notifying the external storage array to carry out storage array-level snapshot on the logic storage device when receiving a notification of completion of the hypervisor snapshot of the generation server, sending a quit-silent notification to the production server to notify the corresponding virtual machine to quit the silent state after receiving the notification of completion of the storage array-level snapshot of the logic storage device by the external storage array, notifying the production server to delete the hypervisor snapshot after quitting the silent state, simultaneously notifying the external storage array to mount the storage array snapshot on the backup proxy server, reading the storage array snapshot data mounted on the backup proxy server, and writing the storage array snapshot data into a storage space of the backup storage server;
and the backup storage server is accessed to the backup proxy server and used for storing the data written by the backup proxy server.
Preferably, the production server applies for a storage space from the external storage array and provides the applied storage space to the virtual machine, so that the virtual machine stores production data in the storage space.
Preferably, when receiving a storage space application request from the production server, the external storage array allocates a logical storage device to the production server according to the request, and mounts the logical storage device to the production server through the SAN network.
Preferably, when the corresponding virtual machine receives the quiesce request, the service application software running thereon is placed in a quiesce state, and the cache data is written on the logical storage device during the quiesce process.
Preferably, when the virtual machine receives the notification of quitting the quiesce, the virtual machine notifies the application program running on the virtual machine to quit the quiesce, and then the virtual machine uniformly writes the stored changed data into the free area of the logical storage device by the production server so as to ensure that the hypervisor snapshot data is not changed.
Preferably, the backup proxy server accesses the external storage array through a SAN network.
Preferably, the virtual machine backup task request includes virtual machine information to be backed up.
Preferably, the storage array snapshot is mounted to the backup proxy server by means of SAN or NAS
Preferably, the backup storage server is accessed to the backup proxy server by a SAN/NAS manner.
In order to achieve the above object, the present invention further provides a method for backing up a virtual machine using a storage snapshot, comprising the following steps:
step S1, the backup proxy server sends a virtual machine backup task request;
step S2, when receiving the virtual machine backup task request of the backup proxy server, the production server informs the corresponding virtual machine to enter the silent state, executes the hypervisor snapshot after receiving the notice that the virtual machine completes the application program silence, and informs the backup proxy server that the hypervisor snapshot is completed after the hypervisor snapshot is completed;
step S3, when the backup proxy server receives the hypervisor snapshot completion notification of the production server, the backup proxy server notifies the external storage array to perform storage array level snapshot on the logic storage device;
step S4, after receiving the notification of the external storage array completing the storage array level snapshot of the logical storage device, the backup proxy server sends a quit-silent notification to the production server to notify the corresponding virtual machine to quit silent, and sends a snapshot deletion notification to notify the production server to delete the hypervisor snapshot, and at the same time, notifies the external storage array to mount the storage array snapshot to the backup proxy server, and reads the storage snapshot data mounted to the backup proxy server, and writes the storage snapshot data into the storage space of the backup storage server.
Compared with the prior art, the system and the method for backing up the virtual machine by using the storage snapshot combine the application of the hypervisor snapshot with the storage array snapshot, so that the time from generation to destruction of the hypervisor snapshot only depends on the time required for making the storage array snapshot, and the non-production IO introduced by the hypervisor snapshot is reduced to the maximum extent, so that the virtual machine backup task can reduce the influence on the virtual machine production system.
Drawings
FIG. 1 is a system architecture diagram of a system using a storage snapshot backup virtual machine of the present invention;
FIG. 2 is a flow chart illustrating steps of a method for using a storage snapshot backup virtual machine in accordance with the present invention;
FIG. 3 is a diagram of an overall deployment architecture using a storage snapshot backup virtual machine in an embodiment of the present invention;
fig. 4 is a timing diagram of modules in the backup process according to the embodiment of the present invention.
Detailed Description
Other advantages and capabilities of the present invention will be readily apparent to those skilled in the art from the present disclosure by describing the embodiments of the present invention with specific embodiments thereof in conjunction with the accompanying drawings. The invention is capable of other and different embodiments and its several details are capable of modification in various other respects, all without departing from the spirit and scope of the present invention.
FIG. 1 is a system architecture diagram of a system using a storage snapshot backup virtual machine according to the present invention. As shown in fig. 1, the present invention provides a system for backing up a virtual machine using storage snapshot, including:
the production server 10, namely the hypervisor of the virtual machine host system, is provided with a plurality of virtual machine gusts, the production server 10 applies for a storage space to the external storage array 20 and provides the applied storage space for the virtual machine gusts, so that the virtual machine gusts can store production data in the storage space; when receiving a virtual machine backup task request of the backup proxy server 30, notifying a corresponding virtual machine guest system to enter a silent state, after receiving a notification that the virtual machine guest completes application program silence, executing a hypervisor snapshot, namely a snapshot of a specified guest on the hypervisor, and after the hypervisor snapshot is completed, notifying the backup proxy server 30 of the completion of the snapshot so that the backup proxy server 30 notifies the external storage array 20 to generate a storage level snapshot, and after receiving a quit silence notification of the backup proxy server 30, notifying the corresponding virtual machine guest to quit the silent state; when receiving the snapshot deletion notification sent by the backup proxy server 30, deleting the created hypervisor snapshot, and performing merging operation on the new data generated by the hypervisor snapshot.
Specifically, the hypervisor applies for storage space to the external storage array 20 as needed, and after the external storage array 20 mounts the allocated logical storage device (LUN) onto the hypervisor via the SAN network, the hypervisor then provides the logical storage device (LUN) to the virtual machine guest, which can store the production data in the space of the logical storage device (LUN).
In the invention, the storage space allocated by the Hypervisor to the virtual machine guest is roughly divided into two types, one type is the space managed by the Hypervisor, the space is generally managed by the file system of the Hypervisor, and vmfs (used by vmware) is common; the other mode is a bare device cut-through mode, that is, as described in the present invention, hypervirsor maps the stored logical storage device LUN directly to the virtual machine guest for use. The two ways may exist on a virtual machine guest at the same time, for example, the virtual machine guest system uses the first way to put the system data on the file system provided by hypervisor, and guest stores the oracle data running on it on the direct storage of logical storage device LUN. After the hypervisor snapshot is generated, the data newly written to the virtual machine guest system is managed by the hypervisor and written to the vacant position of the hypervisor file system for storage, and the IO written to the oracle data disk is still written to the logical storage device LUN in an overlaying manner.
The virtual machine backup task request is initiated by backup software at the backup proxy server 30, the virtual machine backup task request includes the guest information to be backed up, when the hypervisor receives the virtual machine backup task request including the guest information to be backed up, the hypervisor immediately notifies the corresponding guest system to enter a silent state, when the corresponding virtual machine guest receives the request, the service application software (such as oracle, mysql and the like) running on the virtual machine backup task request is placed in the silent state, in the process, the application software ensures the consistency requirement of the application layer data, the cache data is written into the guest storage device, the cache data refers to the data which is not written into the storage device in the application program in the guest system, generally, the data is temporarily stored in the memory, after the silence, the application program can immediately brush the part of data onto the storage (if the application program data is stored in the mapping LUN, the memory data is brushed onto the LUN, if the data of the application program is originally written to the file system provided by the hypervisor, the memory data is written to the file system), and after the application program is silenced, the hypervisor is informed of the guest, and the data on the logical storage device (LUN) keeps the guest application consistency at this time; after receiving the silence completion notification of the gum, the hypervisor performs snapshot operation on the hypervisor layer immediately, and after completing the snapshot operation of the hypervisor, the backup proxy server 30 notifies the external storage array 20 to generate a storage level snapshot, and after completing the storage level snapshot, the backup proxy server 30 sends a notification to the hypervisor to notify the gum to exit the silence state; after receiving the notification of quitting the silence, the guest notifies the application running on the guest to quit the silence and notifies the production server of quitting the completion of the silence, so as to notify the backup proxy server 30, and the backup proxy server 30 sends a snapshot deletion notification; when receiving the snapshot deletion notification sent by the backup proxy server 30, the Hypervisor snapshot is deleted, and the deletion operation of the Hypervisor snapshot includes an operation of writing back the change data after the snapshot, that is, a so-called merged non-production IO. Due to the backup of the logical storage device (LUN), if the storage level snapshot is not used, the whole backup process takes a long time, and the newly written data (the newly written data on the virtual machine guest system) can be stored in a new space by the hypervisor within the time period (the time period refers to the time period from the generation of the hypervisor snapshot to the deletion, and the write IO in the time period needs to be stored in the additional space to ensure that the snapshot data does not change), so that when the backup is finished, the deletion of the hypervisor snapshot causes a large number of non-production IOs, which affects the guest performance, and if the storage level snapshot backup is used, the existence time of the hypervisor snapshot is very short, and the IO which needs to be merged during the deletion is reduced to the minimum.
It should be noted that in the present invention, the exit silence and deletion hypervisor snapshot sent by the backup proxy server 30 are two different notifications, generally sent in two different messages one after the other, namely, the quit silent notification is sent out first, and then the delete snapshot notification is sent out first, because the silent period should be as short as possible, and should not be too long, otherwise the service progress will be affected, but whether it is desirable to delete a snapshot of a hypervisor is actually case-dependent, if the data to be backed up in the backup task includes not only the LUN of the logical storage device but also the storage data provided by the hypervisor file system, the data to be backed up can be deleted only after the hypervisor snapshot is used to complete the backup task, since the backup in the present invention is performed for the data of the logical storage device LUN, and does not involve the use of hypervisor snapshot, it can be deleted immediately after the silent exit.
An external storage array 20, which allocates a logical storage unit (LUN) to the production server 10 according to a request when receiving a request for requesting a storage space from the production server 10, and mounts the LUN on the production server 10 through a network; performing storage array level snapshot on a logical storage device (LUN) upon receiving snapshot notification of the backup proxy server 30, and notifying the backup proxy server 30 after completing the storage level snapshot
In particular embodiments of the present invention, the external storage array 20 provides storage-level snapshot functionality that can provide storage-level snapshots for logical storage devices (LUNs). On one hand, when receiving a Storage space application request, a Logical Storage device is allocated to the Storage space application request, the external Storage array 20 provides a Logical Unit Number (LUN) to the production server 10 in a Storage Area Network (SAN) manner, that is, to provide a hypervisor, on the other hand, the backup proxy server 30 also accesses the external Storage array 20 in a SAN manner, and when receiving a snapshot notification from the backup proxy server 30, performs Storage array level snapshot on the Logical Storage device (LUN).
The backup proxy server 30 runs backup software thereon, and is configured to initiate a virtual machine backup task to the generation server 10, that is, send a virtual machine backup task request, notify the external storage array 20 to perform storage array level snapshot on a logical storage device (LUN) when receiving a notification that the external storage array 20 completes the snapshot of the logical storage device (LUN), notify the production server 10 to notify the corresponding virtual machine guest to exit the silent state after receiving the notification that the external storage array 20 completes the snapshot of the logical storage device (LUN), notify the production server 10 to delete the virtual machine guest snapshot after the virtual machine guest exits the silent state, notify the external storage array 30 to mount the storage array snapshot to the backup proxy server 30, read the storage snapshot data mounted to the backup proxy server, and write the storage snapshot data into the storage space of the backup storage server.
Specifically, the backup proxy server 30 is connected to the production server hypervisor and the external storage array through a network, a backup software is run on the backup proxy server, a virtual machine guest backup task is initiated by the backup software, the backup software sends guest information to be backed up to the production server hypervisor through a virtual machine guest backup task request, when the backup software of the backup proxy server 30 receives a snapshot completion notification of the production server hypervisor, the external storage array system is notified, a storage array level snapshot is performed on a logical storage device (LUN), the external storage array notifies the backup software after completing the snapshot of the LUN, after the backup software receives the storage array snapshot success, the production server hypervisor is notified to notify the corresponding virtual machine guest to exit a silent state, and after the virtual machine guest exits the silent state, the hypervisor is notified to delete the hypervisor snapshot just created, and then the hypervisor performs a merging operation on the new data after the snapshot is generated, meanwhile, the backup software of the backup proxy server 30 notifies the external storage array, mounts the storage array snapshot on the backup proxy server 30 in a SAN or NAS manner, and then reads the storage array snapshot data mounted on the backup proxy server and writes the data into the storage space of the backup storage server 40.
And the backup storage server 40 is connected to the backup proxy server 30 and used for storing the data written by the backup proxy server 30 according to the storage array snapshot data. In the embodiment of the present invention, the backup storage server 40 accesses to the backup proxy server 30 through a SAN/NAS manner.
FIG. 2 is a flow chart illustrating steps of a method for backing up a virtual machine using storage snapshots, in accordance with the present invention. As shown in fig. 2, a method for backing up a virtual machine using storage snapshot according to the present invention includes the following steps:
step S1, the backup proxy server sends a virtual machine backup task request, where the virtual machine backup task request includes virtual machine guest information to be backed up.
Step S2, when receiving the virtual machine backup task request of the backup proxy server, the production server notifies the corresponding virtual machine guest system to enter a silent state, executes the hypervisor snapshot after receiving the notification that the virtual machine guest completes the application silent state, and notifies the backup proxy server that the hypervisor snapshot is completed after the hypervisor snapshot is completed.
In the invention, a production server, namely a virtual machine host system hypervisor is provided with a plurality of virtual machine gusts, the production server hypervisor applies for storage space to an external storage array as required, after the external storage array mounts distributed logic storage equipment (LUN) on the production server hypervisor through a SAN network, the production server hypervisor then provides the logic storage equipment (LUN) for the virtual machine gusts, and the virtual machine gusts stores production data in the space of the logic storage equipment (LUN).
When the hypervisor receives the virtual machine backup task request containing the guest information to be backed up, the hypervisor immediately informs the corresponding guest system to enter a silent state, after the corresponding virtual machine guest receives the request, business application software (such as oracle, mysql and the like) running on the virtual machine guest is placed in the silent state, in the process, the application software ensures the requirement of the consistency of the application layer data, the cache data is written into the guest storage device, namely a logical storage device (LUN), and after the guest completes the application program silence, the hypervisor is informed, and at the moment, the data on the logical storage device (LUN) keeps the guest application consistency; after the hypervisor receives the silence completion notification of the guest, the hypervisor performs snapshot operation on the hypervisor layer immediately, and after the hypervisor snapshot operation is completed, notifies the backup software hypervisor of the backup proxy server 30 that the hypervisor snapshot is completed.
In step S3, after the backup proxy server receives the hypervisor snapshot completion notification from the production server, it notifies the external storage array to perform storage array level snapshot on the logical storage device (LUN).
In particular embodiments of the present invention, the external storage array provides storage level snapshot functionality that can provide snapshots for logical storage devices (LUNs). When receiving the snapshot notification of the backup proxy server, performing storage array level snapshot on the logical storage unit (LUN), and notifying the backup proxy server after completing the snapshot.
Step S4, when the backup proxy server receives the notification of the external storage array completing the storage array level snapshot of the logical storage device (LUN), it sends out a quit silent notification to the production server, so that the production server notifies the corresponding virtual machine gut to quit the silent state, and after the corresponding virtual machine gut quits the silent state, it sends out a snapshot deletion notification to the production server to delete the hypervisor snapshot, and at the same time, notifies the external storage array to mount the storage array snapshot to the backup proxy server, and reads the storage snapshot data mounted to the backup proxy server, and writes the data into the storage space of the backup storage server.
Specifically, the external storage array notifies the backup software after completing the LUN snapshot, the backup software of the backup proxy server notifies the production server hypervisor to notify the corresponding virtual machine guest to exit the mute state after receiving the storage array snapshot successfully, after receiving the notification of exiting the mute, the virtual machine guest notifies the application running on the production server to exit the mute, after receiving the notification of successfully exiting the mute, the production server hypervisor sends an exit success message to the backup proxy server, the backup proxy server notifies the hypervisor to delete the hypervisor snapshot created just before, the hypervisor then performs merging operation on the new data generated by the snapshot, meanwhile, the backup software of the backup proxy server notifies the external storage array, the storage array snapshot is mounted on the backup proxy server in a SAN or NAS manner, the backup software then reads the storage array snapshot data mounted on the backup proxy server, and writing into the storage space of the backup storage server 40.
Examples
Fig. 3 is a diagram of an overall deployment architecture using a storage snapshot backup virtual machine in the embodiment of the present invention, and fig. 4 is a timing diagram of modules in a backup process in the embodiment of the present invention. In this embodiment, a method for backing up a virtual machine using storage snapshot includes the following steps:
the hypervisor on the production server applies for storage space to the external storage array as needed. The storage array allocates logical storage units (LUNs) to the storage array, and mounts the LUNs onto the hypervisor through the SAN network. The hypervisor then provides the LUN to the guest, which places the production data on the LUN's space.
The guest backup task is initiated by backup software arranged on a backup proxy server, the backup software sends guest information needing backup to the hypervisor, and the hypervisor then informs the guest system to enter a silent state. After receiving the request, the guest puts the service application software (such as oracle, mysql, etc.) running on the guest into a silent state. In this process, the application software ensures the application layer data consistency requirement and writes the cached data to the guest storage device. Guest notifies hypervisor after application quiesce is completed. At this point the data on the LUN will keep the guest application consistent.
After receiving the notice of completion of the guest, the hypervisor performs snapshot operation on the hypervisor layer immediately. After the hypervisor snapshot operation is completed, the backup software is notified that the hypervisor snapshot is completed.
After receiving the exit quiesce, the guest notifies the application running thereon to exit the quiesce. The guest data for the change to storage will be uniformly written by hypervisor to the free area of the LUN thereafter to ensure that the hypervisor snapshot data is unchanged.
And after receiving the snapshot completion message of the hypervisor, the backup software informs an external storage array system to carry out storage array level snapshot on the LUN virtual equipment. The external storage array informs backup software after finishing snapshot of the LUN, the backup software informs the hypervisor to inform corresponding guest to quit silence after receiving the storage array snapshot, the guest informs an application program running on the backup software to quit silence after receiving the quit silence, and sends a message of successful quit silence to the hypervisor, so as to inform the backup proxy server to quit silence successfully, the backup proxy server informs the hypervisor to delete the hypervisor snapshot which is just created, and the hypervisor then performs merging operation on new data after the snapshot is generated. Meanwhile, the backup software informs the external storage array, the storage array snapshot is mounted on the backup proxy server in an SAN or NAS mode, and then the backup software reads the storage snapshot data mounted on the backup proxy server and writes the storage snapshot data into a backup storage space.
And when the backup software finishes reading the storage snapshot data, informing the external storage array to delete the storage-level snapshot.
And finishing the data backup task of the whole guest virtual machine.
In summary, the system and method for backing up a virtual machine using a storage snapshot in accordance with the present invention combines the application of the storage array snapshot with the hypervisor snapshot, so that the duration from generation to destruction of the hypervisor snapshot only depends on the time required for making the storage array snapshot, thereby reducing non-production IO introduced by the hypervisor snapshot to the maximum extent, and reducing the impact of the hypervisor backup task on the virtual machine production system.
The foregoing embodiments are merely illustrative of the principles and utilities of the present invention and are not intended to limit the invention. Modifications and variations can be made to the above-described embodiments by those skilled in the art without departing from the spirit and scope of the present invention. Therefore, the scope of the invention should be determined from the following claims.

Claims (10)

1. A system for backing up a virtual machine using storage snapshots, comprising:
the production server is provided with a plurality of virtual machines and is used for informing the corresponding virtual machine to enter a silent state when receiving a virtual machine backup task request of the backup proxy server, executing the hypervisor snapshot after receiving the notification that the virtual machine completes application program silence, and informing the backup proxy server that the hypervisor snapshot is completed after the hypervisor snapshot is completed; when receiving a silent exit notification sent by a backup proxy server, notifying a corresponding virtual machine to exit a silent state, and simultaneously deleting the created hypervisor snapshot and merging new data generated by the hypervisor snapshot when receiving a snapshot deletion notification sent by the backup proxy server;
the external storage array is used for mounting the logic storage equipment on a production server through a network so that the virtual machine can store production data in the logic storage equipment; when receiving a snapshot notification of a backup proxy server, performing storage array level snapshot on the logic storage device, and notifying the backup proxy server after completing the snapshot;
the backup proxy server is used for initiating a virtual machine backup task request to the generating server, notifying the external storage array to carry out storage array-level snapshot on the logic storage device when receiving a notification of completion of the hypervisor snapshot of the generating server, sending a quit-silent notification to the production server to notify the corresponding virtual machine to quit the silent state after receiving the notification of completion of the storage array-level snapshot of the logic storage device by the external storage array, notifying the production server to delete the hypervisor snapshot after the virtual machine quits the silent state, simultaneously notifying the external storage array to mount the storage array snapshot on the backup proxy server, reading the storage array snapshot data mounted on the backup proxy server, and writing the storage array snapshot data into a storage space of the backup storage server;
and the backup storage server is accessed to the backup proxy server and used for storing the data written by the backup proxy server.
2. A system for backing up a virtual machine using storage snapshots as in claim 1, wherein: and the production server applies for a storage space from the external storage array and provides the applied storage space for the virtual machine so that the virtual machine can store production data in the storage space.
3. A system for backing up a virtual machine using storage snapshots as in claim 2, wherein: and when receiving a storage space application request of the production server, the external storage array allocates a logic storage device for the production server according to the request and mounts the logic storage device onto the production server through an SAN (storage area network).
4. A system for backing up a virtual machine using storage snapshots as in claim 3, wherein: and when the corresponding virtual machine receives the quiesce request, putting the service application software running on the virtual machine in a quiesce state, and writing the cache data into the logic storage equipment in the quiesce process.
5. A system for backing up a virtual machine using storage snapshots as in claim 4, wherein: when the virtual machine receives the notice of quitting the quiesce, the virtual machine informs the application program running on the virtual machine to quit the quiesce, and then the virtual machine uniformly writes the stored changed data into the free area of the logical storage device by the production server so as to ensure that the hypervisor snapshot data is unchanged.
6. A system for backing up a virtual machine using storage snapshots as in claim 1, wherein: and the backup proxy server is accessed to the external storage array through an SAN network.
7. A system for backing up a virtual machine using storage snapshots as in claim 1, wherein: the virtual machine backup task request comprises virtual machine information needing backup.
8. A system for backing up a virtual machine using storage snapshots as in claim 1, wherein: the storage array snapshot is mounted to the backup proxy server in an SAN or NAS manner
9. A system for backing up a virtual machine using storage snapshots as in claim 1, wherein: and the backup storage server is accessed to the backup proxy server in an SAN/NAS mode.
10. A method for backing up a virtual machine using storage snapshots, comprising the steps of:
step S1, the backup proxy server sends a virtual machine backup task request;
step S2, when receiving the virtual machine backup task request of the backup proxy server, the production server informs the corresponding virtual machine to enter the silent state, executes the hypervisor snapshot after receiving the notice that the virtual machine completes the application program silence, and informs the backup proxy server that the hypervisor snapshot is completed after the hypervisor snapshot is completed;
step S3, when the backup proxy server receives the hypervisor snapshot completion notification of the production server, the backup proxy server notifies the external storage array to perform storage array level snapshot on the logic storage device;
step S4, after receiving the notification of the external storage array completing the storage array level snapshot of the logical storage device, the backup proxy server sends a quit-silent notification to the production server to notify the corresponding virtual machine to quit silent, and sends a snapshot deletion notification to notify the production server to delete the hypervisor snapshot, and at the same time, notifies the external storage array to mount the storage array snapshot to the backup proxy server, and reads the storage snapshot data mounted to the backup proxy server, and writes the storage snapshot data into the storage space of the backup storage server.
CN202110205552.6A 2021-02-24 2021-02-24 System and method for using storage snapshot backup virtual machine Pending CN112965783A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110205552.6A CN112965783A (en) 2021-02-24 2021-02-24 System and method for using storage snapshot backup virtual machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110205552.6A CN112965783A (en) 2021-02-24 2021-02-24 System and method for using storage snapshot backup virtual machine

Publications (1)

Publication Number Publication Date
CN112965783A true CN112965783A (en) 2021-06-15

Family

ID=76285885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110205552.6A Pending CN112965783A (en) 2021-02-24 2021-02-24 System and method for using storage snapshot backup virtual machine

Country Status (1)

Country Link
CN (1) CN112965783A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679391A (en) * 2022-02-23 2022-06-28 网宿科技股份有限公司 Method for collecting network traffic of docker container, electronic equipment and storage medium
CN117177050A (en) * 2023-08-25 2023-12-05 北京志凌海纳科技有限公司 Virtual machine VPC network configuration snapshot processing method and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140365740A1 (en) * 2013-06-10 2014-12-11 Veeam Software Ag Virtual Machine Backup from Storage Snapshot
CN106603279A (en) * 2016-12-06 2017-04-26 华为技术有限公司 Disaster tolerance method and disaster tolerance system
US9891858B1 (en) * 2013-01-10 2018-02-13 Pure Storage, Inc. Deduplication of regions with a storage system
CN107111530B (en) * 2014-12-31 2019-09-20 华为技术有限公司 A kind of disaster recovery method, system and device
CN112380062A (en) * 2020-11-17 2021-02-19 上海英方软件股份有限公司 Method and system for rapidly recovering system for multiple times based on system backup point
CN112395133A (en) * 2020-11-17 2021-02-23 平安科技(深圳)有限公司 Data backup method and device based on virtual machine and computer equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9891858B1 (en) * 2013-01-10 2018-02-13 Pure Storage, Inc. Deduplication of regions with a storage system
US20140365740A1 (en) * 2013-06-10 2014-12-11 Veeam Software Ag Virtual Machine Backup from Storage Snapshot
CN105745624A (en) * 2013-06-10 2016-07-06 卫盟软件股份公司 Virtual machine backup from storage snapshot
CN107111530B (en) * 2014-12-31 2019-09-20 华为技术有限公司 A kind of disaster recovery method, system and device
CN106603279A (en) * 2016-12-06 2017-04-26 华为技术有限公司 Disaster tolerance method and disaster tolerance system
CN112380062A (en) * 2020-11-17 2021-02-19 上海英方软件股份有限公司 Method and system for rapidly recovering system for multiple times based on system backup point
CN112395133A (en) * 2020-11-17 2021-02-23 平安科技(深圳)有限公司 Data backup method and device based on virtual machine and computer equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679391A (en) * 2022-02-23 2022-06-28 网宿科技股份有限公司 Method for collecting network traffic of docker container, electronic equipment and storage medium
CN117177050A (en) * 2023-08-25 2023-12-05 北京志凌海纳科技有限公司 Virtual machine VPC network configuration snapshot processing method and system

Similar Documents

Publication Publication Date Title
EP3726364B1 (en) Data write-in method and solid-state drive array
US11397648B2 (en) Virtual machine recovery method and virtual machine management device
US8627012B1 (en) System and method for improving cache performance
US9235524B1 (en) System and method for improving cache performance
US9552168B2 (en) Virtual machine backup from storage snapshot
US8930947B1 (en) System and method for live migration of a virtual machine with dedicated cache
US9983935B2 (en) Storage checkpointing in a mirrored virtual machine system
US9354907B1 (en) Optimized restore of virtual machine and virtual disk data
US10049036B2 (en) Reliable distributed messaging using non-volatile system memory
US11226870B2 (en) Systems and methods for marking application-consistent points-in-time
CN106776147B (en) Differential data backup method and differential data backup device
EP0566966A2 (en) Method and system for incremental backup copying of data
US9760480B1 (en) Enhanced logging using non-volatile system memory
CN106777394B (en) Cluster file system
CN112965783A (en) System and method for using storage snapshot backup virtual machine
CN111367856A (en) Data copying method and device, electronic equipment and machine-readable storage medium
US9053033B1 (en) System and method for cache content sharing
CN110531925B (en) Data reading method and device, electronic equipment and machine-readable storage medium
US10089220B1 (en) Saving state information resulting from non-idempotent operations in non-volatile system memory
CN111240903A (en) Data recovery method and related equipment
US11226875B2 (en) System halt event recovery
WO2022033269A1 (en) Data processing method, device and system
US8281096B1 (en) Systems and methods for creating snapshots
CN114756355A (en) Method and device for automatically and quickly recovering process of computer operating system
CN111949434B (en) RAID management method, RAID controller and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210615